diff --git a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ClientSocketPerfTest.java b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ClientSocketPerfTest.java
index 9e45c4a..bcc0a3b 100644
--- a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ClientSocketPerfTest.java
+++ b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ClientSocketPerfTest.java
@@ -112,36 +112,20 @@
         for (EndpointFactory endpointFactory : EndpointFactory.values()) {
             for (ChannelType channelType : ChannelType.values()) {
                 for (PerfTestProtocol protocol : PerfTestProtocol.values()) {
-                    params.add(
-                            new Object[] {
-                                new Config(
-                                        endpointFactory,
-                                        endpointFactory,
-                                        64,
-                                        "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
-                                        channelType,
-                                        protocol)
-                            });
-                    params.add(
-                            new Object[] {
-                                new Config(
-                                        endpointFactory,
-                                        endpointFactory,
-                                        512,
-                                        "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
-                                        channelType,
-                                        protocol)
-                            });
-                    params.add(
-                            new Object[] {
-                                new Config(
-                                        endpointFactory,
-                                        endpointFactory,
-                                        4096,
-                                        "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
-                                        channelType,
-                                        protocol)
-                            });
+                    for (int messageSize : ConscryptParams.messageSizes) {
+                        for (String cipher : ConscryptParams.ciphers) {
+                            params.add(
+                                    new Object[] {
+                                            new Config(
+                                                    endpointFactory,
+                                                    endpointFactory,
+                                                    messageSize,
+                                                    cipher,
+                                                    channelType,
+                                                    protocol)
+                                    });
+                        }
+                    }
                 }
             }
         }
diff --git a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ConscryptParams.java b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ConscryptParams.java
new file mode 100644
index 0000000..e5131b8
--- /dev/null
+++ b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ConscryptParams.java
@@ -0,0 +1,35 @@
+/*
+ * Copyright 2025 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 android.conscrypt;
+
+import java.util.List;
+
+public class ConscryptParams {
+    public static final List<String> ciphers = List.of(
+        "TLS_RSA_WITH_AES_128_GCM_SHA256",
+        "TLS_RSA_WITH_AES_256_GCM_SHA384",
+        "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
+        "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
+        "TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256"
+    );
+
+    public static final List<Integer> messageSizes = List.of(
+        64,
+        512,
+        4096
+    );
+}
\ No newline at end of file
diff --git a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EngineHandshakePerfTest.java b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EngineHandshakePerfTest.java
index cd0ac96..341d8e6 100644
--- a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EngineHandshakePerfTest.java
+++ b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EngineHandshakePerfTest.java
@@ -87,11 +87,13 @@
         }
     }
 
+
     public Collection getParams() {
         final List<Object[]> params = new ArrayList<>();
         for (BufferType bufferType : BufferType.values()) {
-            params.add(new Object[] {new Config(bufferType,
-                "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", 100)});
+            for (String cipher : ConscryptParams.ciphers) {
+                params.add(new Object[] {new Config(bufferType, cipher, 100)});
+            }
         }
         return params;
     }
diff --git a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EngineWrapPerfTest.java b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EngineWrapPerfTest.java
index 1fee218..23b642e 100644
--- a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EngineWrapPerfTest.java
+++ b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/EngineWrapPerfTest.java
@@ -37,10 +37,10 @@
 import static org.junit.Assert.assertEquals;
 
 import java.nio.ByteBuffer;
-import java.util.Locale;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
+import java.util.Locale;
 import javax.net.ssl.SSLEngine;
 import javax.net.ssl.SSLEngineResult;
 import javax.net.ssl.SSLException;
@@ -94,12 +94,11 @@
     public Collection getParams() {
         final List<Object[]> params = new ArrayList<>();
         for (BufferType bufferType : BufferType.values()) {
-            params.add(new Object[] {new Config(bufferType, 64,
-                                    "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256")});
-            params.add(new Object[] {new Config(bufferType, 512,
-                                    "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256")});
-            params.add(new Object[] {new Config(bufferType, 4096,
-                                    "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256")});
+            for (int messageSize : ConscryptParams.messageSizes) {
+                for (String cipher : ConscryptParams.ciphers) {
+                    params.add(new Object[] {new Config(bufferType, messageSize, cipher)});
+                }
+            }
         }
         return params;
     }
diff --git a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ServerSocketPerfTest.java b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ServerSocketPerfTest.java
index 90a87ce..343bb12 100644
--- a/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ServerSocketPerfTest.java
+++ b/apct-tests/perftests/core/src/android/conscrypt/conscrypt/ServerSocketPerfTest.java
@@ -102,15 +102,12 @@
         final List<Object[]> params = new ArrayList<>();
         for (EndpointFactory endpointFactory : EndpointFactory.values()) {
             for (ChannelType channelType : ChannelType.values()) {
-                params.add(new Object[] {new Config(endpointFactory,
-                    endpointFactory, 64,
-                    "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", channelType)});
-                params.add(new Object[] {new Config(endpointFactory,
-                    endpointFactory, 512,
-                    "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", channelType)});
-                params.add(new Object[] {new Config(endpointFactory,
-                    endpointFactory, 4096,
-                    "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", channelType)});
+                for (int messageSize : ConscryptParams.messageSizes) {
+                    for (String cipher : ConscryptParams.ciphers) {
+                        params.add(new Object[] {new Config(endpointFactory,
+                            endpointFactory, messageSize, cipher, channelType)});
+                    }
+                }
             }
         }
         return params;
diff --git a/apct-tests/perftests/core/src/android/os/TracePerfTest.java b/apct-tests/perftests/core/src/android/os/TracePerfTest.java
index d905124..00e1c1f 100644
--- a/apct-tests/perftests/core/src/android/os/TracePerfTest.java
+++ b/apct-tests/perftests/core/src/android/os/TracePerfTest.java
@@ -147,7 +147,7 @@
                 .addField(1 /* sending_thread_name */, "foo")
                 .endNested()
                 .endProto()
-                .addTerminatingFlow(5)
+                .setTerminatingFlow(5)
                 .emit();
 
         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
@@ -158,7 +158,7 @@
                     .addField(1 /* sending_thread_name */, "foo")
                     .endNested()
                     .endProto()
-                    .addTerminatingFlow(5)
+                    .setTerminatingFlow(5)
                     .emit();
         }
     }
diff --git a/apct-tests/perftests/healthconnect/OWNERS b/apct-tests/perftests/healthconnect/OWNERS
index da0b46a..7c9e769 100644
--- a/apct-tests/perftests/healthconnect/OWNERS
+++ b/apct-tests/perftests/healthconnect/OWNERS
@@ -1,6 +1,4 @@
 # Bug component: 1219472
 
-arkivanov@google.com
 jstembridge@google.com
-pratyushmore@google.com
 itsleo@google.com
diff --git a/apex/jobscheduler/service/aconfig/job.aconfig b/apex/jobscheduler/service/aconfig/job.aconfig
index 29df80f..876274e 100644
--- a/apex/jobscheduler/service/aconfig/job.aconfig
+++ b/apex/jobscheduler/service/aconfig/job.aconfig
@@ -116,3 +116,13 @@
         purpose: PURPOSE_BUGFIX
     }
 }
+
+flag {
+    name: "additional_quota_for_system_installer"
+    namespace: "backstage_power"
+    description: "Offer additional quota for system installer"
+    bug: "398264531"
+    metadata {
+        purpose: PURPOSE_BUGFIX
+    }
+}
diff --git a/apex/jobscheduler/service/java/com/android/server/alarm/AlarmManagerService.java b/apex/jobscheduler/service/java/com/android/server/alarm/AlarmManagerService.java
index f89b13d..251776e 100644
--- a/apex/jobscheduler/service/java/com/android/server/alarm/AlarmManagerService.java
+++ b/apex/jobscheduler/service/java/com/android/server/alarm/AlarmManagerService.java
@@ -2995,6 +2995,8 @@
             pw.print(Flags.FLAG_START_USER_BEFORE_SCHEDULED_ALARMS,
                     Flags.startUserBeforeScheduledAlarms());
             pw.println();
+            pw.print(Flags.FLAG_ACQUIRE_WAKELOCK_BEFORE_SEND, Flags.acquireWakelockBeforeSend());
+            pw.println();
             pw.decreaseIndent();
             pw.println();
 
@@ -5367,6 +5369,9 @@
                         // to do any wakelock or stats tracking, so we have nothing
                         // left to do here but go on to the next thing.
                         mSendFinishCount++;
+                        if (Flags.acquireWakelockBeforeSend()) {
+                            mWakeLock.release();
+                        }
                         return;
                     }
                 } else {
@@ -5404,6 +5409,9 @@
                         // stats management to do.  It threw before we posted the delayed
                         // timeout message, so we're done here.
                         mListenerFinishCount++;
+                        if (Flags.acquireWakelockBeforeSend()) {
+                            mWakeLock.release();
+                        }
                         return;
                     }
                 }
diff --git a/apex/jobscheduler/service/java/com/android/server/job/controllers/QuotaController.java b/apex/jobscheduler/service/java/com/android/server/job/controllers/QuotaController.java
index 637c726..54d337e 100644
--- a/apex/jobscheduler/service/java/com/android/server/job/controllers/QuotaController.java
+++ b/apex/jobscheduler/service/java/com/android/server/job/controllers/QuotaController.java
@@ -494,6 +494,9 @@
 
     private long mEjLimitAdditionSpecialMs = QcConstants.DEFAULT_EJ_LIMIT_ADDITION_SPECIAL_MS;
 
+    private long mAllowedTimePeriodAdditionaInstallerMs =
+            QcConstants.DEFAULT_ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS;
+
     /**
      * The period of time used to calculate expedited job sessions. Apps can only have expedited job
      * sessions totalling {@link #mEJLimitsMs}[bucket within this period of time (without factoring
@@ -1095,6 +1098,18 @@
         return baseLimitMs;
     }
 
+    private long getAllowedTimePerPeriodMsLocked(final int userId, @NonNull final String pkgName,
+            final int standbyBucket) {
+        final long baseLimitMs = mAllowedTimePerPeriodMs[standbyBucket];
+        if (Flags.adjustQuotaDefaultConstants()
+                && Flags.additionalQuotaForSystemInstaller()
+                && standbyBucket == EXEMPTED_INDEX
+                && mSystemInstallers.contains(userId, pkgName)) {
+            return baseLimitMs + mAllowedTimePeriodAdditionaInstallerMs;
+        }
+        return baseLimitMs;
+    }
+
     /**
      * Returns the amount of time, in milliseconds, until the package would have reached its
      * duration quota, assuming it has a job counting towards its quota the entire time. This takes
@@ -1112,25 +1127,26 @@
 
         List<TimedEvent> events = mTimingEvents.get(userId, packageName);
         final ExecutionStats stats = getExecutionStatsLocked(userId, packageName, standbyBucket);
+        final long allowedTimePerPeriodMs =
+                getAllowedTimePerPeriodMsLocked(userId, packageName, standbyBucket);
         if (events == null || events.size() == 0) {
             // Regular ACTIVE case. Since the bucket size equals the allowed time, the app jobs can
             // essentially run until they reach the maximum limit.
-            if (stats.windowSizeMs == mAllowedTimePerPeriodMs[standbyBucket]) {
+            if (stats.windowSizeMs == allowedTimePerPeriodMs) {
                 return mMaxExecutionTimeMs;
             }
-            return mAllowedTimePerPeriodMs[standbyBucket];
+            return allowedTimePerPeriodMs;
         }
 
         final long startWindowElapsed = nowElapsed - stats.windowSizeMs;
         final long startMaxElapsed = nowElapsed - MAX_PERIOD_MS;
-        final long allowedTimePerPeriodMs = mAllowedTimePerPeriodMs[standbyBucket];
         final long allowedTimeRemainingMs = allowedTimePerPeriodMs - stats.executionTimeInWindowMs;
         final long maxExecutionTimeRemainingMs =
                 mMaxExecutionTimeMs - stats.executionTimeInMaxPeriodMs;
 
         // Regular ACTIVE case. Since the bucket size equals the allowed time, the app jobs can
         // essentially run until they reach the maximum limit.
-        if (stats.windowSizeMs == mAllowedTimePerPeriodMs[standbyBucket]) {
+        if (stats.windowSizeMs == allowedTimePerPeriodMs) {
             return calculateTimeUntilQuotaConsumedLocked(
                     events, startMaxElapsed, maxExecutionTimeRemainingMs);
         }
@@ -1270,7 +1286,8 @@
             appStats[standbyBucket] = stats;
         }
         if (refreshStatsIfOld) {
-            final long bucketAllowedTimeMs = mAllowedTimePerPeriodMs[standbyBucket];
+            final long bucketAllowedTimeMs =
+                    getAllowedTimePerPeriodMsLocked(userId, packageName, standbyBucket);
             final long bucketWindowSizeMs = mBucketPeriodsMs[standbyBucket];
             final int jobCountLimit = mMaxBucketJobCounts[standbyBucket];
             final int sessionCountLimit = mMaxBucketSessionCounts[standbyBucket];
@@ -1845,9 +1862,10 @@
         final boolean isUnderJobCountQuota = isUnderJobCountQuotaLocked(stats);
         final boolean isUnderTimingSessionCountQuota = isUnderSessionCountQuotaLocked(stats);
         final long remainingEJQuota = getRemainingEJExecutionTimeLocked(userId, packageName);
-
+        final long allowedTimePerPeriosMs =
+                getAllowedTimePerPeriodMsLocked(userId, packageName, standbyBucket);
         final boolean inRegularQuota =
-                stats.executionTimeInWindowMs < mAllowedTimePerPeriodMs[standbyBucket]
+                stats.executionTimeInWindowMs < allowedTimePerPeriosMs
                         && stats.executionTimeInMaxPeriodMs < mMaxExecutionTimeMs
                         && isUnderJobCountQuota
                         && isUnderTimingSessionCountQuota;
@@ -3037,6 +3055,9 @@
         static final String KEY_ALLOWED_TIME_PER_PERIOD_RESTRICTED_MS =
                 QC_CONSTANT_PREFIX + "allowed_time_per_period_restricted_ms";
         @VisibleForTesting
+        static final String KEY_ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS =
+                QC_CONSTANT_PREFIX + "allowed_time_per_period_addition_installer_ms";
+        @VisibleForTesting
         static final String KEY_IN_QUOTA_BUFFER_MS =
                 QC_CONSTANT_PREFIX + "in_quota_buffer_ms";
         @VisibleForTesting
@@ -3169,6 +3190,8 @@
                 10 * 60 * 1000L; // 10 minutes
         private static final long DEFAULT_ALLOWED_TIME_PER_PERIOD_RESTRICTED_MS =
                 10 * 60 * 1000L; // 10 minutes
+        private static final long DEFAULT_ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS =
+                10 * 60 * 1000L; // 10 minutes
         private static final long DEFAULT_IN_QUOTA_BUFFER_MS =
                 30 * 1000L; // 30 seconds
         // Legacy default window size for EXEMPTED bucket
@@ -3509,6 +3532,9 @@
          */
         public long EJ_LIMIT_ADDITION_INSTALLER_MS = DEFAULT_EJ_LIMIT_ADDITION_INSTALLER_MS;
 
+        public long ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS =
+                DEFAULT_ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS;
+
         /**
          * The period of time used to calculate expedited job sessions. Apps can only have expedited
          * job sessions totalling EJ_LIMIT_<bucket>_MS within this period of time (without factoring
@@ -3603,6 +3629,7 @@
                 case KEY_ALLOWED_TIME_PER_PERIOD_FREQUENT_MS:
                 case KEY_ALLOWED_TIME_PER_PERIOD_RARE_MS:
                 case KEY_ALLOWED_TIME_PER_PERIOD_RESTRICTED_MS:
+                case KEY_ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS:
                 case KEY_IN_QUOTA_BUFFER_MS:
                 case KEY_MAX_EXECUTION_TIME_MS:
                 case KEY_WINDOW_SIZE_ACTIVE_MS:
@@ -3847,7 +3874,7 @@
                     KEY_ALLOWED_TIME_PER_PERIOD_EXEMPTED_MS, KEY_ALLOWED_TIME_PER_PERIOD_ACTIVE_MS,
                     KEY_ALLOWED_TIME_PER_PERIOD_WORKING_MS, KEY_ALLOWED_TIME_PER_PERIOD_FREQUENT_MS,
                     KEY_ALLOWED_TIME_PER_PERIOD_RARE_MS, KEY_ALLOWED_TIME_PER_PERIOD_RESTRICTED_MS,
-                    KEY_IN_QUOTA_BUFFER_MS,
+                    KEY_ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS, KEY_IN_QUOTA_BUFFER_MS,
                     KEY_MAX_EXECUTION_TIME_MS,
                     KEY_WINDOW_SIZE_EXEMPTED_MS, KEY_WINDOW_SIZE_ACTIVE_MS,
                     KEY_WINDOW_SIZE_WORKING_MS,
@@ -3871,6 +3898,9 @@
             ALLOWED_TIME_PER_PERIOD_RESTRICTED_MS =
                     properties.getLong(KEY_ALLOWED_TIME_PER_PERIOD_RESTRICTED_MS,
                             DEFAULT_ALLOWED_TIME_PER_PERIOD_RESTRICTED_MS);
+            ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS =
+                    properties.getLong(KEY_ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS,
+                            DEFAULT_ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS);
             IN_QUOTA_BUFFER_MS = properties.getLong(KEY_IN_QUOTA_BUFFER_MS,
                     DEFAULT_IN_QUOTA_BUFFER_MS);
             MAX_EXECUTION_TIME_MS = properties.getLong(KEY_MAX_EXECUTION_TIME_MS,
@@ -3995,6 +4025,18 @@
                 mBucketPeriodsMs[RESTRICTED_INDEX] = newRestrictedPeriodMs;
                 mShouldReevaluateConstraints = true;
             }
+
+            if (Flags.additionalQuotaForSystemInstaller()) {
+                // The additions must be in the range
+                // [0 minutes, exempted window size - active limit].
+                long newAdditionInstallerMs = Math.max(0,
+                        Math.min(mBucketPeriodsMs[EXEMPTED_INDEX] - newAllowedTimeExemptedMs,
+                                ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS));
+                if (mAllowedTimePeriodAdditionaInstallerMs != newAdditionInstallerMs) {
+                    mAllowedTimePeriodAdditionaInstallerMs = newAdditionInstallerMs;
+                    mShouldReevaluateConstraints = true;
+                }
+            }
         }
 
         private void updateRateLimitingConstantsLocked() {
@@ -4159,6 +4201,8 @@
                     .println();
             pw.print(KEY_ALLOWED_TIME_PER_PERIOD_RESTRICTED_MS,
                     ALLOWED_TIME_PER_PERIOD_RESTRICTED_MS).println();
+            pw.print(KEY_ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS,
+                    ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS).println();
             pw.print(KEY_IN_QUOTA_BUFFER_MS, IN_QUOTA_BUFFER_MS).println();
             pw.print(KEY_WINDOW_SIZE_EXEMPTED_MS, WINDOW_SIZE_EXEMPTED_MS).println();
             pw.print(KEY_WINDOW_SIZE_ACTIVE_MS, WINDOW_SIZE_ACTIVE_MS).println();
@@ -4335,6 +4379,11 @@
     }
 
     @VisibleForTesting
+    long getAllowedTimePeriodAdditionInstallerMs() {
+        return mAllowedTimePeriodAdditionaInstallerMs;
+    }
+
+    @VisibleForTesting
     long getEjLimitAdditionSpecialMs() {
         return mEjLimitAdditionSpecialMs;
     }
@@ -4435,6 +4484,8 @@
                 + ": " + Flags.enforceQuotaPolicyToFgsJobs());
         pw.println("    " + Flags.FLAG_ENFORCE_QUOTA_POLICY_TO_TOP_STARTED_JOBS
                 + ": " + Flags.enforceQuotaPolicyToTopStartedJobs());
+        pw.println("    " + Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER
+                + ": " + Flags.additionalQuotaForSystemInstaller());
         pw.println();
 
         pw.println("Current elapsed time: " + sElapsedRealtimeClock.millis());
diff --git a/api/OWNERS b/api/OWNERS
index f2bcf13..31ffa8c 100644
--- a/api/OWNERS
+++ b/api/OWNERS
@@ -1,4 +1,3 @@
-hansson@google.com
 
 # Modularization team
 file:platform/packages/modules/common:/OWNERS
diff --git a/boot/boot-image-profile.txt b/boot/boot-image-profile.txt
index 8f987c2..d7c409f 100644
--- a/boot/boot-image-profile.txt
+++ b/boot/boot-image-profile.txt
@@ -120,9 +120,9 @@
 HSPLandroid/accounts/IAccountManagerResponse$Stub;->getMaxTransactionId()I
 HSPLandroid/accounts/IAccountManagerResponse$Stub;->getTransactionName(I)Ljava/lang/String;
 HSPLandroid/accounts/IAccountManagerResponse$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
-SPLandroid/adpf/FeatureFlagsImpl;-><init>()V
-SPLandroid/adpf/FeatureFlagsImpl;->adpfViewrootimplActionDownBoost()Z
-SPLandroid/adpf/Flags;-><clinit>()V
+HSPLandroid/adpf/FeatureFlagsImpl;-><init>()V
+HSPLandroid/adpf/FeatureFlagsImpl;->adpfViewrootimplActionDownBoost()Z
+HSPLandroid/adpf/Flags;-><clinit>()V
 HSPLandroid/adpf/Flags;->adpfViewrootimplActionDownBoost()Z
 HSPLandroid/animation/AnimationHandler$$ExternalSyntheticLambda0;-><init>(Landroid/animation/AnimationHandler;)V
 HSPLandroid/animation/AnimationHandler$$ExternalSyntheticLambda0;->doFrame(J)V
@@ -166,7 +166,7 @@
 HSPLandroid/animation/Animator$AnimatorConstantState;->newInstance()Landroid/animation/Animator;
 HSPLandroid/animation/Animator$AnimatorConstantState;->newInstance()Ljava/lang/Object;
 HSPLandroid/animation/Animator$AnimatorListener;->onAnimationEnd(Landroid/animation/Animator;Z)V+]Landroid/animation/Animator$AnimatorListener;megamorphic_types
-HSPLandroid/animation/Animator$AnimatorListener;->onAnimationStart(Landroid/animation/Animator;Z)V+]Landroid/animation/Animator$AnimatorListener;megamorphic_types
+HSPLandroid/animation/Animator$AnimatorListener;->onAnimationStart(Landroid/animation/Animator;Z)V+]Landroid/animation/Animator$AnimatorListener;missing_types
 HSPLandroid/animation/Animator;-><init>()V
 HSPLandroid/animation/Animator;->addListener(Landroid/animation/Animator$AnimatorListener;)V
 HSPLandroid/animation/Animator;->addPauseListener(Landroid/animation/Animator$AnimatorPauseListener;)V
@@ -240,6 +240,7 @@
 HSPLandroid/animation/AnimatorSet;->doAnimationFrame(J)Z
 HSPLandroid/animation/AnimatorSet;->end()V
 HSPLandroid/animation/AnimatorSet;->endAnimation()V
+HSPLandroid/animation/AnimatorSet;->endAnimation(Z)V+]Landroid/animation/AnimatorSet$SeekState;Landroid/animation/AnimatorSet$SeekState;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLandroid/animation/AnimatorSet;->ensureChildStartAndEndTimes()[J
 HSPLandroid/animation/AnimatorSet;->findLatestEventIdForTime(J)I
 HSPLandroid/animation/AnimatorSet;->findNextIndex(J[J)I
@@ -552,7 +553,7 @@
 HSPLandroid/app/Activity$HostCallbacks;->onUseFragmentManagerInflaterFactory()Z
 HSPLandroid/app/Activity;-><init>()V
 HSPLandroid/app/Activity;->attach(Landroid/content/Context;Landroid/app/ActivityThread;Landroid/app/Instrumentation;Landroid/os/IBinder;ILandroid/app/Application;Landroid/content/Intent;Landroid/content/pm/ActivityInfo;Ljava/lang/CharSequence;Landroid/app/Activity;Ljava/lang/String;Landroid/app/Activity$NonConfigurationInstances;Landroid/content/res/Configuration;Ljava/lang/String;Lcom/android/internal/app/IVoiceInteractor;Landroid/view/Window;Landroid/view/ViewRootImpl$ActivityConfigCallback;Landroid/os/IBinder;Landroid/os/IBinder;)V
-HSPLandroid/app/Activity;->attach(Landroid/content/Context;Landroid/app/ActivityThread;Landroid/app/Instrumentation;Landroid/os/IBinder;ILandroid/app/Application;Landroid/content/Intent;Landroid/content/pm/ActivityInfo;Ljava/lang/CharSequence;Landroid/app/Activity;Ljava/lang/String;Landroid/app/Activity$NonConfigurationInstances;Landroid/content/res/Configuration;Ljava/lang/String;Lcom/android/internal/app/IVoiceInteractor;Landroid/view/Window;Landroid/view/ViewRootImpl$ActivityConfigCallback;Landroid/os/IBinder;Landroid/os/IBinder;Landroid/os/IBinder;)V
+HSPLandroid/app/Activity;->attach(Landroid/content/Context;Landroid/app/ActivityThread;Landroid/app/Instrumentation;Landroid/os/IBinder;ILandroid/app/Application;Landroid/content/Intent;Landroid/content/pm/ActivityInfo;Ljava/lang/CharSequence;Landroid/app/Activity;Ljava/lang/String;Landroid/app/Activity$NonConfigurationInstances;Landroid/content/res/Configuration;Ljava/lang/String;Lcom/android/internal/app/IVoiceInteractor;Landroid/view/Window;Landroid/view/ViewRootImpl$ActivityConfigCallback;Landroid/os/IBinder;Landroid/os/IBinder;Landroid/os/IBinder;)V+]Landroid/app/FragmentController;Landroid/app/FragmentController;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/view/LayoutInflater;Lcom/android/internal/policy/PhoneLayoutInflater;]Landroid/view/Window;Lcom/android/internal/policy/PhoneWindow;
 HSPLandroid/app/Activity;->attachBaseContext(Landroid/content/Context;)V
 HSPLandroid/app/Activity;->cancelInputsAndStartExitTransition(Landroid/os/Bundle;)V
 HSPLandroid/app/Activity;->collectActivityLifecycleCallbacks()[Ljava/lang/Object;
@@ -715,7 +716,7 @@
 HSPLandroid/app/ActivityManager$$ExternalSyntheticLambda2;->fetchValue()Ljava/lang/Object;
 HSPLandroid/app/ActivityManager$2;-><init>(Landroid/app/ActivityManager;)V
 HSPLandroid/app/ActivityManager$4;->create()Landroid/app/IActivityManager;
-SPLandroid/app/ActivityManager$4;->create()Ljava/lang/Object;
+HSPLandroid/app/ActivityManager$4;->create()Ljava/lang/Object;
 HSPLandroid/app/ActivityManager$AppTask;->getTaskInfo()Landroid/app/ActivityManager$RecentTaskInfo;
 HSPLandroid/app/ActivityManager$MemoryInfo;-><init>()V
 HSPLandroid/app/ActivityManager$MemoryInfo;->copyTo(Landroid/app/ActivityManager$MemoryInfo;)V
@@ -765,7 +766,7 @@
 HSPLandroid/app/ActivityManager$TaskDescription;->setPrimaryColor(I)V
 HSPLandroid/app/ActivityManager$TaskDescription;->setStatusBarColor(I)V
 HSPLandroid/app/ActivityManager$TaskDescription;->writeToParcel(Landroid/os/Parcel;I)V
-SPLandroid/app/ActivityManager;->$r8$lambda$KfaWjLSz8MRDCTZ5k_6RKNsGfys(Landroid/app/ActivityManager;)Ljava/util/List;
+HSPLandroid/app/ActivityManager;->$r8$lambda$KfaWjLSz8MRDCTZ5k_6RKNsGfys(Landroid/app/ActivityManager;)Ljava/util/List;
 HSPLandroid/app/ActivityManager;->$r8$lambda$ZuQeTlxj3UIhJqa0jkPJ3FavvSc(Landroid/app/ActivityManager;)Landroid/app/ActivityManager$MemoryInfo;
 HSPLandroid/app/ActivityManager;-><init>(Landroid/content/Context;Landroid/os/Handler;)V
 HSPLandroid/app/ActivityManager;->addOnUidImportanceListener(Landroid/app/ActivityManager$OnUidImportanceListener;I)V
@@ -794,7 +795,7 @@
 HSPLandroid/app/ActivityManager;->isLowMemoryKillReportSupported()Z
 HSPLandroid/app/ActivityManager;->isLowRamDevice()Z
 HSPLandroid/app/ActivityManager;->isLowRamDeviceStatic()Z
-SPLandroid/app/ActivityManager;->isProcStateCached(I)Z
+HSPLandroid/app/ActivityManager;->isProcStateCached(I)Z
 HSPLandroid/app/ActivityManager;->isProcStateJankPerceptible(I)Z
 HSPLandroid/app/ActivityManager;->isRunningInTestHarness()Z
 HSPLandroid/app/ActivityManager;->isRunningInUserTestHarness()Z
@@ -803,7 +804,7 @@
 HSPLandroid/app/ActivityManager;->isUserRunning(I)Z
 HSPLandroid/app/ActivityManager;->lambda$getMemoryInfo$0()Landroid/app/ActivityManager$MemoryInfo;
 HSPLandroid/app/ActivityManager;->lambda$getMyMemoryState$3()Landroid/app/ActivityManager$RunningAppProcessInfo;
-SPLandroid/app/ActivityManager;->lambda$getRunningAppProcesses$2()Ljava/util/List;
+HSPLandroid/app/ActivityManager;->lambda$getRunningAppProcesses$2()Ljava/util/List;
 HSPLandroid/app/ActivityManager;->staticGetLargeMemoryClass()I
 HSPLandroid/app/ActivityManager;->staticGetMemoryClass()I
 HSPLandroid/app/ActivityOptions$SourceInfo;-><init>(IJ)V
@@ -830,12 +831,13 @@
 HSPLandroid/app/ActivityThread$$ExternalSyntheticLambda1;-><init>()V
 HSPLandroid/app/ActivityThread$$ExternalSyntheticLambda1;->apply(Ljava/lang/Object;)Ljava/lang/Object;
 HSPLandroid/app/ActivityThread$$ExternalSyntheticLambda4;->onConfigurationChanged(Landroid/content/res/Configuration;)V
-HSPLandroid/app/ActivityThread$2;-><init>(Landroid/app/ActivityThread;Landroid/app/IActivityManager;)V
-HSPLandroid/app/ActivityThread$3;-><init>(Landroid/app/ActivityThread;)V
+SPLandroid/app/ActivityThread$3;-><init>(Landroid/app/ActivityThread;Landroid/app/IActivityManager;)V
 HSPLandroid/app/ActivityThread$4;-><init>(Landroid/app/ActivityThread;)V
-SPLandroid/app/ActivityThread$4;->setContentCaptureOptions(Landroid/content/ContentCaptureOptions;)V
-SPLandroid/app/ActivityThread$5;-><init>(Landroid/app/ActivityThread;)V
-SPLandroid/app/ActivityThread$5;->run()V
+HSPLandroid/app/ActivityThread$4;->run()V
+HSPLandroid/app/ActivityThread$5;-><init>(Landroid/app/ActivityThread;)V
+SPLandroid/app/ActivityThread$5;->setContentCaptureOptions(Landroid/content/ContentCaptureOptions;)V
+SPLandroid/app/ActivityThread$6;-><init>(Landroid/app/ActivityThread;)V
+HSPLandroid/app/ActivityThread$6;->run()V
 HSPLandroid/app/ActivityThread$ActivityClientRecord$1;-><init>(Landroid/app/ActivityThread$ActivityClientRecord;)V
 HSPLandroid/app/ActivityThread$ActivityClientRecord;->-$$Nest$misPreHoneycomb(Landroid/app/ActivityThread$ActivityClientRecord;)Z
 HSPLandroid/app/ActivityThread$ActivityClientRecord;-><init>(Landroid/os/IBinder;Landroid/content/Intent;ILandroid/content/pm/ActivityInfo;Landroid/content/res/Configuration;Ljava/lang/String;Lcom/android/internal/app/IVoiceInteractor;Landroid/os/Bundle;Landroid/os/PersistableBundle;Ljava/util/List;Ljava/util/List;Landroid/app/ActivityOptions$SceneTransitionInfo;ZLandroid/app/ProfilerInfo;Landroid/app/ClientTransactionHandler;Landroid/os/IBinder;Landroid/os/IBinder;ZLandroid/os/IBinder;Landroid/os/IBinder;Landroid/window/ActivityWindowInfo;)V
@@ -855,7 +857,7 @@
 HSPLandroid/app/ActivityThread$ApplicationThread$$ExternalSyntheticLambda2;-><init>()V
 HSPLandroid/app/ActivityThread$ApplicationThread$$ExternalSyntheticLambda2;->accept(Ljava/lang/Object;Ljava/lang/Object;)V
 HSPLandroid/app/ActivityThread$ApplicationThread;-><init>(Landroid/app/ActivityThread;)V
-SPLandroid/app/ActivityThread$ApplicationThread;->bindApplication(Ljava/lang/String;Landroid/content/pm/ApplicationInfo;Ljava/lang/String;Ljava/lang/String;ZLandroid/content/pm/ProviderInfoList;Landroid/content/ComponentName;Landroid/app/ProfilerInfo;Landroid/os/Bundle;Landroid/app/IInstrumentationWatcher;Landroid/app/IUiAutomationConnection;IZZZZLandroid/content/res/Configuration;Landroid/content/res/CompatibilityInfo;Ljava/util/Map;Landroid/os/Bundle;Ljava/lang/String;Landroid/content/AutofillOptions;Landroid/content/ContentCaptureOptions;[J[JLandroid/os/SharedMemory;Ljava/io/FileDescriptor;JJ)V
+HSPLandroid/app/ActivityThread$ApplicationThread;->bindApplication(Ljava/lang/String;Landroid/content/pm/ApplicationInfo;Ljava/lang/String;Ljava/lang/String;ZLandroid/content/pm/ProviderInfoList;Landroid/content/ComponentName;Landroid/app/ProfilerInfo;Landroid/os/Bundle;Landroid/app/IInstrumentationWatcher;Landroid/app/IUiAutomationConnection;IZZZZLandroid/content/res/Configuration;Landroid/content/res/CompatibilityInfo;Ljava/util/Map;Landroid/os/Bundle;Ljava/lang/String;Landroid/content/AutofillOptions;Landroid/content/ContentCaptureOptions;[J[JLandroid/os/SharedMemory;Ljava/io/FileDescriptor;JJ)V
 HSPLandroid/app/ActivityThread$ApplicationThread;->clearDnsCache()V
 HSPLandroid/app/ActivityThread$ApplicationThread;->dispatchPackageBroadcast(I[Ljava/lang/String;)V
 HSPLandroid/app/ActivityThread$ApplicationThread;->dumpCacheInfo(Landroid/os/ParcelFileDescriptor;[Ljava/lang/String;)V
@@ -886,7 +888,7 @@
 HSPLandroid/app/ActivityThread$ApplicationThread;->setNetworkBlockSeq(J)V
 HSPLandroid/app/ActivityThread$ApplicationThread;->setProcessState(I)V
 HSPLandroid/app/ActivityThread$ApplicationThread;->unstableProviderDied(Landroid/os/IBinder;)V
-SPLandroid/app/ActivityThread$ApplicationThread;->updateCompatOverrideDisplayRotation(Landroid/content/res/CompatibilityInfo;)V
+HSPLandroid/app/ActivityThread$ApplicationThread;->updateCompatOverrideDisplayRotation(Landroid/content/res/CompatibilityInfo;)V
 HSPLandroid/app/ActivityThread$ApplicationThread;->updateCompatOverrideScale(Landroid/content/res/CompatibilityInfo;)V
 HSPLandroid/app/ActivityThread$BindServiceData;-><init>()V
 HSPLandroid/app/ActivityThread$BindServiceData;->toString()Ljava/lang/String;
@@ -1029,7 +1031,7 @@
 HSPLandroid/app/ActivityThread;->isProtectedComponent(Landroid/content/pm/ComponentInfo;Ljava/lang/String;)Z
 HSPLandroid/app/ActivityThread;->isProtectedComponent(Landroid/content/pm/ServiceInfo;)Z
 HSPLandroid/app/ActivityThread;->isSystem()Z
-HSPLandroid/app/ActivityThread;->lambda$attach$6(Landroid/content/res/Configuration;)V
+HSPLandroid/app/ActivityThread;->lambda$attach$6(Landroid/content/res/Configuration;)V+]Landroid/app/ConfigurationController;Landroid/app/ConfigurationController;
 HSPLandroid/app/ActivityThread;->main([Ljava/lang/String;)V
 HSPLandroid/app/ActivityThread;->onCoreSettingsChange()V
 HSPLandroid/app/ActivityThread;->peekPackageInfo(Ljava/lang/String;Z)Landroid/app/LoadedApk;
@@ -1096,8 +1098,9 @@
 HSPLandroid/app/AlertDialog;-><init>(Landroid/content/Context;IZ)V
 HSPLandroid/app/AlertDialog;->onCreate(Landroid/os/Bundle;)V
 HSPLandroid/app/AlertDialog;->resolveDialogTheme(Landroid/content/Context;I)I
-SPLandroid/app/AppCompatCallbacks;-><init>([J[J)V
+HSPLandroid/app/AppCompatCallbacks;-><init>([J[J)V
 HSPLandroid/app/AppCompatCallbacks;->isChangeEnabled(J)Z
+HSPLandroid/app/AppCompatCallbacks;->reportChange(JIZ)V+]Lcom/android/internal/compat/ChangeReporter;Lcom/android/internal/compat/ChangeReporter;
 HSPLandroid/app/AppComponentFactory;-><init>()V
 HSPLandroid/app/AppComponentFactory;->instantiateActivity(Ljava/lang/ClassLoader;Ljava/lang/String;Landroid/content/Intent;)Landroid/app/Activity;
 HSPLandroid/app/AppComponentFactory;->instantiateApplication(Ljava/lang/ClassLoader;Ljava/lang/String;)Landroid/app/Application;
@@ -1128,6 +1131,7 @@
 HSPLandroid/app/AppOpsManager$PackageOps;->getOps()Ljava/util/List;
 HSPLandroid/app/AppOpsManager$PackageOps;->getPackageName()Ljava/lang/String;
 HSPLandroid/app/AppOpsManager$PausedNotedAppOpsCollection;-><init>(ILandroid/util/ArrayMap;)V
+SPLandroid/app/AppOpsManager;->-$$Nest$smgetService()Lcom/android/internal/app/IAppOpsService;
 HSPLandroid/app/AppOpsManager;-><init>(Landroid/content/Context;Lcom/android/internal/app/IAppOpsService;)V
 HSPLandroid/app/AppOpsManager;->checkOp(IILjava/lang/String;)I
 HSPLandroid/app/AppOpsManager;->checkOpNoThrow(IILjava/lang/String;)I
@@ -1245,7 +1249,7 @@
 HSPLandroid/app/ApplicationExitInfo;->getStatus()I
 HSPLandroid/app/ApplicationExitInfo;->getTimestamp()J
 HSPLandroid/app/ApplicationLoaders$CachedClassLoader;-><init>()V
-SPLandroid/app/ApplicationLoaders$CachedClassLoader;-><init>(Landroid/app/ApplicationLoaders-IA;)V
+HSPLandroid/app/ApplicationLoaders$CachedClassLoader;-><init>(Landroid/app/ApplicationLoaders-IA;)V
 HSPLandroid/app/ApplicationLoaders;->addNative(Ljava/lang/ClassLoader;Ljava/util/Collection;)V
 HSPLandroid/app/ApplicationLoaders;->createAndCacheNonBootclasspathSystemClassLoader(Landroid/content/pm/SharedLibraryInfo;)V
 HSPLandroid/app/ApplicationLoaders;->createAndCacheNonBootclasspathSystemClassLoaders(Ljava/util/List;)V
@@ -1256,12 +1260,12 @@
 HSPLandroid/app/ApplicationLoaders;->getDefault()Landroid/app/ApplicationLoaders;
 HSPLandroid/app/ApplicationLoaders;->getSharedLibraryClassLoaderWithSharedLibraries(Ljava/lang/String;IZLjava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/String;Ljava/util/List;Ljava/util/List;)Ljava/lang/ClassLoader;
 HSPLandroid/app/ApplicationLoaders;->sharedLibrariesEquals(Ljava/util/List;Ljava/util/List;)Z
-SPLandroid/app/ApplicationPackageManager$1;-><init>(Landroid/app/PropertyInvalidatedCache$Args;Ljava/lang/String;Landroid/app/PropertyInvalidatedCache$QueryHandler;)V
+HSPLandroid/app/ApplicationPackageManager$1;-><init>(Landroid/app/PropertyInvalidatedCache$Args;Ljava/lang/String;Landroid/app/PropertyInvalidatedCache$QueryHandler;)V
 HSPLandroid/app/ApplicationPackageManager$1;->recompute(Landroid/app/ApplicationPackageManager$HasSystemFeatureQuery;)Ljava/lang/Boolean;
 HSPLandroid/app/ApplicationPackageManager$1;->recompute(Ljava/lang/Object;)Ljava/lang/Object;
 HSPLandroid/app/ApplicationPackageManager$2;-><init>(Landroid/app/ApplicationPackageManager;Landroid/content/pm/PackageManager$OnChecksumsReadyListener;)V
 HSPLandroid/app/ApplicationPackageManager$2;->onChecksumsReady(Ljava/util/List;)V
-SPLandroid/app/ApplicationPackageManager$3;-><init>(ILjava/lang/String;)V
+HSPLandroid/app/ApplicationPackageManager$3;-><init>(ILjava/lang/String;)V
 HSPLandroid/app/ApplicationPackageManager$3;->recompute(Ljava/lang/Integer;)Landroid/app/ApplicationPackageManager$GetPackagesForUidResult;
 HSPLandroid/app/ApplicationPackageManager$3;->recompute(Ljava/lang/Object;)Ljava/lang/Object;
 HSPLandroid/app/ApplicationPackageManager$GetPackagesForUidResult;-><init>([Ljava/lang/String;)V
@@ -1273,7 +1277,7 @@
 HSPLandroid/app/ApplicationPackageManager$ResourceName;-><init>(Ljava/lang/String;I)V
 HSPLandroid/app/ApplicationPackageManager$ResourceName;->equals(Ljava/lang/Object;)Z
 HSPLandroid/app/ApplicationPackageManager$ResourceName;->hashCode()I
-SPLandroid/app/ApplicationPackageManager;-><clinit>()V
+HSPLandroid/app/ApplicationPackageManager;-><clinit>()V
 HSPLandroid/app/ApplicationPackageManager;-><init>(Landroid/app/ContextImpl;Landroid/content/pm/IPackageManager;)V
 HSPLandroid/app/ApplicationPackageManager;->addOnPermissionsChangeListener(Landroid/content/pm/PackageManager$OnPermissionsChangedListener;)V
 HSPLandroid/app/ApplicationPackageManager;->checkPermission(Ljava/lang/String;Ljava/lang/String;)I
@@ -1419,16 +1423,16 @@
 HSPLandroid/app/BroadcastOptions;->makeBasic()Landroid/app/BroadcastOptions;
 HSPLandroid/app/BroadcastOptions;->setTemporaryAppWhitelistDuration(J)V
 HSPLandroid/app/BroadcastOptions;->toBundle()Landroid/os/Bundle;
-SPLandroid/app/BroadcastStickyCache$$ExternalSyntheticLambda0;-><init>(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;Landroid/content/IntentFilter;Ljava/lang/String;II)V
+HSPLandroid/app/BroadcastStickyCache$$ExternalSyntheticLambda0;-><init>(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;Landroid/content/IntentFilter;Ljava/lang/String;II)V
 HSPLandroid/app/BroadcastStickyCache$$ExternalSyntheticLambda0;->apply(Ljava/lang/Object;)Ljava/lang/Object;
-SPLandroid/app/BroadcastStickyCache$StickyBroadcastFilter$$ExternalSyntheticRecord0;->m(Ljava/lang/Object;Ljava/lang/Object;)I
-SPLandroid/app/BroadcastStickyCache$StickyBroadcastFilter;-><init>(Landroid/content/IntentFilter;Ljava/lang/String;)V
-SPLandroid/app/BroadcastStickyCache$StickyBroadcastFilter;-><init>(Landroid/content/IntentFilter;Ljava/lang/String;Landroid/app/BroadcastStickyCache-IA;)V
-SPLandroid/app/BroadcastStickyCache$StickyBroadcastFilter;->action()Ljava/lang/String;
-SPLandroid/app/BroadcastStickyCache$StickyBroadcastFilter;->filter()Landroid/content/IntentFilter;
-SPLandroid/app/BroadcastStickyCache$StickyBroadcastFilter;->hashCode()I
+HSPLandroid/app/BroadcastStickyCache$StickyBroadcastFilter$$ExternalSyntheticRecord0;->m(Ljava/lang/Object;Ljava/lang/Object;)I
+HSPLandroid/app/BroadcastStickyCache$StickyBroadcastFilter;-><init>(Landroid/content/IntentFilter;Ljava/lang/String;)V
+HSPLandroid/app/BroadcastStickyCache$StickyBroadcastFilter;-><init>(Landroid/content/IntentFilter;Ljava/lang/String;Landroid/app/BroadcastStickyCache-IA;)V
+HSPLandroid/app/BroadcastStickyCache$StickyBroadcastFilter;->action()Ljava/lang/String;
+HSPLandroid/app/BroadcastStickyCache$StickyBroadcastFilter;->filter()Landroid/content/IntentFilter;
+HSPLandroid/app/BroadcastStickyCache$StickyBroadcastFilter;->hashCode()I
 HSPLandroid/app/BroadcastStickyCache;->findIpcDataCache(Landroid/content/IntentFilter;)Landroid/os/IpcDataCache;
-SPLandroid/app/BroadcastStickyCache;->getConfig(Ljava/lang/String;)Landroid/os/IpcDataCache$Config;
+HSPLandroid/app/BroadcastStickyCache;->getConfig(Ljava/lang/String;)Landroid/os/IpcDataCache$Config;
 HSPLandroid/app/BroadcastStickyCache;->getIntent(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;Landroid/content/IntentFilter;Ljava/lang/String;II)Landroid/content/Intent;+]Landroid/os/IpcDataCache;Landroid/os/IpcDataCache;
 HSPLandroid/app/BroadcastStickyCache;->lambda$getIntent$0(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;Landroid/content/IntentFilter;Ljava/lang/String;IILjava/lang/Void;)Landroid/content/Intent;
 HSPLandroid/app/ClientTransactionHandler;-><init>()V
@@ -1443,7 +1447,7 @@
 HSPLandroid/app/ConfigurationController;->getPendingConfiguration(Z)Landroid/content/res/Configuration;
 HSPLandroid/app/ConfigurationController;->handleConfigurationChanged(Landroid/content/res/Configuration;)V
 HSPLandroid/app/ConfigurationController;->handleConfigurationChanged(Landroid/content/res/Configuration;Landroid/content/res/CompatibilityInfo;)V
-HSPLandroid/app/ConfigurationController;->handleConfigurationChangedInner(Landroid/content/res/Configuration;Landroid/content/res/CompatibilityInfo;)V+]Landroid/app/ActivityThreadInternal;Landroid/app/ActivityThread;]Landroid/app/ConfigurationController;Landroid/app/ConfigurationController;]Landroid/app/ContextImpl;Landroid/app/ContextImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLandroid/app/ConfigurationController;->handleConfigurationChangedInner(Landroid/content/res/Configuration;Landroid/content/res/CompatibilityInfo;)V+]Landroid/app/ActivityThreadInternal;Landroid/app/ActivityThread;]Landroid/app/Application;Landroid/app/Application;]Landroid/app/ConfigurationController;Landroid/app/ConfigurationController;]Landroid/app/ContextImpl;Landroid/app/ContextImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLandroid/app/ConfigurationController;->performConfigurationChanged(Landroid/content/ComponentCallbacks2;Landroid/content/res/Configuration;)V
 HSPLandroid/app/ConfigurationController;->setCompatConfiguration(Landroid/content/res/Configuration;)V
 HSPLandroid/app/ConfigurationController;->setConfiguration(Landroid/content/res/Configuration;)V
@@ -1683,12 +1687,12 @@
 HSPLandroid/app/DownloadManager;->query(Landroid/app/DownloadManager$Query;)Landroid/database/Cursor;
 HSPLandroid/app/DownloadManager;->query(Landroid/app/DownloadManager$Query;[Ljava/lang/String;)Landroid/database/Cursor;
 HSPLandroid/app/EventLogTags;->writeWmOnTopResumedGainedCalled(ILjava/lang/String;Ljava/lang/String;)V
-SPLandroid/app/FeatureFlagsImpl;->appStartInfoTimestamps()Z
+HSPLandroid/app/FeatureFlagsImpl;->appStartInfoTimestamps()Z
 HSPLandroid/app/FeatureFlagsImpl;->enableCurrentModeTypeBinderCache()Z
 HSPLandroid/app/FeatureFlagsImpl;->jankPerceptibleNarrow()Z
 HSPLandroid/app/FeatureFlagsImpl;->nmBinderPerfCacheChannels()Z
-SPLandroid/app/FeatureFlagsImpl;->nmBinderPerfPermissionCheck()Z
-SPLandroid/app/FeatureFlagsImpl;->nmBinderPerfThrottleNotify()Z
+HSPLandroid/app/FeatureFlagsImpl;->nmBinderPerfPermissionCheck()Z
+HSPLandroid/app/FeatureFlagsImpl;->nmBinderPerfThrottleNotify()Z
 HSPLandroid/app/FeatureFlagsImpl;->notifChannelCropVibrationEffects()Z
 HSPLandroid/app/FeatureFlagsImpl;->notificationChannelVibrationEffectApi()Z
 HSPLandroid/app/FeatureFlagsImpl;->picIsolateCacheByUid()Z
@@ -1696,16 +1700,16 @@
 HSPLandroid/app/FeatureFlagsImpl;->rateLimitGetMemoryInfo()Z
 HSPLandroid/app/FeatureFlagsImpl;->rateLimitGetMyMemoryState()Z
 HSPLandroid/app/FeatureFlagsImpl;->rateLimitGetRunningAppProcesses()Z
-SPLandroid/app/FeatureFlagsImpl;->reportPostgcMemoryMetrics()Z
-SPLandroid/app/FeatureFlagsImpl;->skipBgMemTrimOnFgApp()Z
+HSPLandroid/app/FeatureFlagsImpl;->reportPostgcMemoryMetrics()Z
+HSPLandroid/app/FeatureFlagsImpl;->skipBgMemTrimOnFgApp()Z
 HSPLandroid/app/FeatureFlagsImpl;->sortSectionByTime()Z
 HSPLandroid/app/FeatureFlagsImpl;->useStickyBcastCache()Z
 HSPLandroid/app/Flags;->appStartInfoTimestamps()Z
 HSPLandroid/app/Flags;->jankPerceptibleNarrow()Z+]Landroid/app/FeatureFlags;Landroid/app/FeatureFlagsImpl;
 HSPLandroid/app/Flags;->nmBinderPerfThrottleNotify()Z+]Landroid/app/FeatureFlags;Landroid/app/FeatureFlagsImpl;
-SPLandroid/app/Flags;->picIsolateCacheByUid()Z
-SPLandroid/app/Flags;->picIsolatedCacheStatistics()Z
-SPLandroid/app/Flags;->reportPostgcMemoryMetrics()Z
+HSPLandroid/app/Flags;->picIsolateCacheByUid()Z
+HSPLandroid/app/Flags;->picIsolatedCacheStatistics()Z
+HSPLandroid/app/Flags;->reportPostgcMemoryMetrics()Z
 HSPLandroid/app/Flags;->useStickyBcastCache()Z+]Landroid/app/FeatureFlags;Landroid/app/FeatureFlagsImpl;
 HSPLandroid/app/Fragment$1;-><init>(Landroid/app/Fragment;)V
 HSPLandroid/app/Fragment;-><init>()V
@@ -1925,7 +1929,7 @@
 HSPLandroid/app/IActivityManager$Stub$Proxy;->checkPermission(Ljava/lang/String;II)I
 HSPLandroid/app/IActivityManager$Stub$Proxy;->checkPermissionForDevice(Ljava/lang/String;III)I
 HSPLandroid/app/IActivityManager$Stub$Proxy;->checkUriPermission(Landroid/net/Uri;IIIILandroid/os/IBinder;)I
-SPLandroid/app/IActivityManager$Stub$Proxy;->finishAttachApplication(JJ)V
+HSPLandroid/app/IActivityManager$Stub$Proxy;->finishAttachApplication(JJ)V
 HSPLandroid/app/IActivityManager$Stub$Proxy;->finishReceiver(Landroid/os/IBinder;ILjava/lang/String;Landroid/os/Bundle;ZI)V
 HSPLandroid/app/IActivityManager$Stub$Proxy;->getContentProvider(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;IZ)Landroid/app/ContentProviderHolder;
 HSPLandroid/app/IActivityManager$Stub$Proxy;->getCurrentUser()Landroid/content/pm/UserInfo;
@@ -1951,7 +1955,7 @@
 HSPLandroid/app/IActivityManager$Stub$Proxy;->registerStrictModeCallback(Landroid/os/IBinder;)V
 HSPLandroid/app/IActivityManager$Stub$Proxy;->registerUidObserver(Landroid/app/IUidObserver;IILjava/lang/String;)V
 HSPLandroid/app/IActivityManager$Stub$Proxy;->removeContentProvider(Landroid/os/IBinder;Z)V
-HSPLandroid/app/IActivityManager$Stub$Proxy;->reportStartInfoViewTimestamps(JJ)V
+HSPLandroid/app/IActivityManager$Stub$Proxy;->reportStartInfoViewTimestamps(JJ)V+]Landroid/app/IActivityManager$Stub$Proxy;Landroid/app/IActivityManager$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;
 HSPLandroid/app/IActivityManager$Stub$Proxy;->revokeUriPermission(Landroid/app/IApplicationThread;Ljava/lang/String;Landroid/net/Uri;II)V
 HSPLandroid/app/IActivityManager$Stub$Proxy;->serviceDoneExecuting(Landroid/os/IBinder;IIILandroid/content/Intent;)V
 HSPLandroid/app/IActivityManager$Stub$Proxy;->setRenderThread(I)V
@@ -2094,7 +2098,7 @@
 HSPLandroid/app/IntentService;->onDestroy()V
 HSPLandroid/app/IntentService;->onStart(Landroid/content/Intent;I)V
 HSPLandroid/app/IntentService;->onStartCommand(Landroid/content/Intent;II)I
-SPLandroid/app/JobSchedulerImpl;-><init>(Landroid/app/JobSchedulerImpl;Ljava/lang/String;)V
+HSPLandroid/app/JobSchedulerImpl;-><init>(Landroid/app/JobSchedulerImpl;Ljava/lang/String;)V
 HSPLandroid/app/JobSchedulerImpl;-><init>(Landroid/content/Context;Landroid/app/job/IJobScheduler;)V
 HSPLandroid/app/JobSchedulerImpl;-><init>(Landroid/content/Context;Landroid/app/job/IJobScheduler;Ljava/lang/String;)V
 HSPLandroid/app/JobSchedulerImpl;->cancel(I)V
@@ -2435,14 +2439,17 @@
 HSPLandroid/app/NotificationChannelGroup;->getTrimmedString(Ljava/lang/String;)Ljava/lang/String;
 HSPLandroid/app/NotificationChannelGroup;->isBlocked()Z
 HSPLandroid/app/NotificationChannelGroup;->writeToParcel(Landroid/os/Parcel;I)V
-SPLandroid/app/NotificationManager$1;-><init>(Landroid/app/NotificationManager;)V
+HSPLandroid/app/NotificationManager$1;-><init>(Landroid/app/NotificationManager;)V
 HSPLandroid/app/NotificationManager$Policy$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/NotificationManager$Policy;
 HSPLandroid/app/NotificationManager$Policy$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
 HSPLandroid/app/NotificationManager$Policy;-><init>(IIIIII)V
 HSPLandroid/app/NotificationManager$Policy;-><init>(Landroid/os/Parcel;)V
 HSPLandroid/app/NotificationManager$Policy;->equals(Ljava/lang/Object;)Z
 HSPLandroid/app/NotificationManager$Policy;->suppressedVisualEffectsEqual(II)Z
-SPLandroid/app/NotificationManager;-><init>(Landroid/content/Context;)V
+SPLandroid/app/NotificationManager$RateLimiter;-><clinit>()V
+HSPLandroid/app/NotificationManager$RateLimiter;-><init>(Landroid/app/NotificationManager;Ljava/lang/String;Ljava/lang/String;F)V
+SPLandroid/app/NotificationManager$RateLimiter;-><init>(Landroid/app/NotificationManager;Ljava/lang/String;Ljava/lang/String;FLandroid/app/NotificationManager-IA;)V
+HSPLandroid/app/NotificationManager;-><init>(Landroid/content/Context;)V
 HSPLandroid/app/NotificationManager;-><init>(Landroid/content/Context;Ljava/time/InstantSource;)V
 HSPLandroid/app/NotificationManager;->areNotificationsEnabled()Z
 HSPLandroid/app/NotificationManager;->cancel(I)V
@@ -2473,7 +2480,7 @@
 HSPLandroid/app/NotificationManager;->notifyAsUser(Ljava/lang/String;ILandroid/app/Notification;Landroid/os/UserHandle;)V
 HSPLandroid/app/NotificationManager;->service()Landroid/app/INotificationManager;
 HSPLandroid/app/NotificationManager;->zenModeToInterruptionFilter(I)I
-SPLandroid/app/PendingIntent$$ExternalSyntheticLambda0;->execute(Ljava/lang/Runnable;)V
+HSPLandroid/app/PendingIntent$$ExternalSyntheticLambda0;->execute(Ljava/lang/Runnable;)V
 HSPLandroid/app/PendingIntent$$ExternalSyntheticLambda2;->get()Ljava/lang/Object;
 HSPLandroid/app/PendingIntent$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/PendingIntent;
 HSPLandroid/app/PendingIntent$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
@@ -2531,17 +2538,17 @@
 HSPLandroid/app/PictureInPictureParams$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/PictureInPictureParams;
 HSPLandroid/app/PictureInPictureParams$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
 HSPLandroid/app/PictureInPictureParams;-><init>(Landroid/os/Parcel;)V
-SPLandroid/app/PropertyInvalidatedCache$Args;->-$$Nest$fgetmApi(Landroid/app/PropertyInvalidatedCache$Args;)Ljava/lang/String;
-SPLandroid/app/PropertyInvalidatedCache$Args;->-$$Nest$fgetmCacheNulls(Landroid/app/PropertyInvalidatedCache$Args;)Z
-SPLandroid/app/PropertyInvalidatedCache$Args;->-$$Nest$fgetmIsolateUids(Landroid/app/PropertyInvalidatedCache$Args;)Z
-SPLandroid/app/PropertyInvalidatedCache$Args;->-$$Nest$fgetmMaxEntries(Landroid/app/PropertyInvalidatedCache$Args;)I
-SPLandroid/app/PropertyInvalidatedCache$Args;->-$$Nest$fgetmModule(Landroid/app/PropertyInvalidatedCache$Args;)Ljava/lang/String;
-SPLandroid/app/PropertyInvalidatedCache$Args;->-$$Nest$fgetmTestMode(Landroid/app/PropertyInvalidatedCache$Args;)Z
-SPLandroid/app/PropertyInvalidatedCache$Args;-><init>(Ljava/lang/String;)V
+HSPLandroid/app/PropertyInvalidatedCache$Args;->-$$Nest$fgetmApi(Landroid/app/PropertyInvalidatedCache$Args;)Ljava/lang/String;
+HSPLandroid/app/PropertyInvalidatedCache$Args;->-$$Nest$fgetmCacheNulls(Landroid/app/PropertyInvalidatedCache$Args;)Z
+HSPLandroid/app/PropertyInvalidatedCache$Args;->-$$Nest$fgetmIsolateUids(Landroid/app/PropertyInvalidatedCache$Args;)Z
+HSPLandroid/app/PropertyInvalidatedCache$Args;->-$$Nest$fgetmMaxEntries(Landroid/app/PropertyInvalidatedCache$Args;)I
+HSPLandroid/app/PropertyInvalidatedCache$Args;->-$$Nest$fgetmModule(Landroid/app/PropertyInvalidatedCache$Args;)Ljava/lang/String;
+HSPLandroid/app/PropertyInvalidatedCache$Args;->-$$Nest$fgetmTestMode(Landroid/app/PropertyInvalidatedCache$Args;)Z
+HSPLandroid/app/PropertyInvalidatedCache$Args;-><init>(Ljava/lang/String;)V
 HSPLandroid/app/PropertyInvalidatedCache$Args;-><init>(Ljava/lang/String;Ljava/lang/String;IZZZ)V
 HSPLandroid/app/PropertyInvalidatedCache$Args;->api(Ljava/lang/String;)Landroid/app/PropertyInvalidatedCache$Args;
-SPLandroid/app/PropertyInvalidatedCache$Args;->cacheNulls(Z)Landroid/app/PropertyInvalidatedCache$Args;
-SPLandroid/app/PropertyInvalidatedCache$Args;->isolateUids(Z)Landroid/app/PropertyInvalidatedCache$Args;
+HSPLandroid/app/PropertyInvalidatedCache$Args;->cacheNulls(Z)Landroid/app/PropertyInvalidatedCache$Args;
+HSPLandroid/app/PropertyInvalidatedCache$Args;->isolateUids(Z)Landroid/app/PropertyInvalidatedCache$Args;
 HSPLandroid/app/PropertyInvalidatedCache$Args;->maxEntries(I)Landroid/app/PropertyInvalidatedCache$Args;
 HSPLandroid/app/PropertyInvalidatedCache$CacheMap$1;-><init>(Landroid/app/PropertyInvalidatedCache$CacheMap;IFZ)V
 HSPLandroid/app/PropertyInvalidatedCache$CacheMap$1;->removeEldestEntry(Ljava/util/Map$Entry;)Z+]Landroid/app/PropertyInvalidatedCache$CacheMap$1;Landroid/app/PropertyInvalidatedCache$CacheMap$1;
@@ -2556,28 +2563,28 @@
 HSPLandroid/app/PropertyInvalidatedCache$NoPreloadHolder;->next()J
 HSPLandroid/app/PropertyInvalidatedCache$NonceHandler;-><init>(Ljava/lang/String;)V
 HSPLandroid/app/PropertyInvalidatedCache$NonceHandler;->getNonce()J+]Landroid/app/PropertyInvalidatedCache$NonceHandler;Landroid/app/PropertyInvalidatedCache$NonceSharedMem;,Landroid/app/PropertyInvalidatedCache$NonceSysprop;
-SPLandroid/app/PropertyInvalidatedCache$NonceSharedMem;-><init>(Ljava/lang/String;Ljava/lang/String;)V
+HSPLandroid/app/PropertyInvalidatedCache$NonceSharedMem;-><init>(Ljava/lang/String;Ljava/lang/String;)V
 HSPLandroid/app/PropertyInvalidatedCache$NonceSharedMem;->getNonceInternal()J+]Landroid/app/PropertyInvalidatedCache$NonceStore;Landroid/app/PropertyInvalidatedCache$NonceStore;
 HSPLandroid/app/PropertyInvalidatedCache$NonceSharedMem;->initialize(Z)I+]Landroid/app/PropertyInvalidatedCache$NonceStore;Landroid/app/PropertyInvalidatedCache$NonceStore;
-SPLandroid/app/PropertyInvalidatedCache$NonceStore;-><clinit>()V
-SPLandroid/app/PropertyInvalidatedCache$NonceStore;-><init>(JZ)V
+HSPLandroid/app/PropertyInvalidatedCache$NonceStore;-><clinit>()V
+HSPLandroid/app/PropertyInvalidatedCache$NonceStore;-><init>(JZ)V
 HSPLandroid/app/PropertyInvalidatedCache$NonceStore;->getHandleForName(Ljava/lang/String;)I
-SPLandroid/app/PropertyInvalidatedCache$NonceStore;->getInstance()Landroid/app/PropertyInvalidatedCache$NonceStore;
+HSPLandroid/app/PropertyInvalidatedCache$NonceStore;->getInstance()Landroid/app/PropertyInvalidatedCache$NonceStore;
 HSPLandroid/app/PropertyInvalidatedCache$NonceStore;->getNonce(I)J
 HSPLandroid/app/PropertyInvalidatedCache$NonceStore;->refreshStringBlockLocked()V
 HSPLandroid/app/PropertyInvalidatedCache$NonceStore;->throwIfBadHandle(I)V
-SPLandroid/app/PropertyInvalidatedCache$NonceStore;->updateStringMapLocked([B)V
-SPLandroid/app/PropertyInvalidatedCache$NonceSysprop;-><init>(Ljava/lang/String;)V
+HSPLandroid/app/PropertyInvalidatedCache$NonceStore;->updateStringMapLocked([B)V
+HSPLandroid/app/PropertyInvalidatedCache$NonceSysprop;-><init>(Ljava/lang/String;)V
 HSPLandroid/app/PropertyInvalidatedCache$NonceSysprop;->getNonceInternal()J
 HSPLandroid/app/PropertyInvalidatedCache$QueryHandler;-><init>()V
 HSPLandroid/app/PropertyInvalidatedCache$QueryHandler;->shouldBypassCache(Ljava/lang/Object;)Z
 HSPLandroid/app/PropertyInvalidatedCache;->-$$Nest$fgetmHighWaterMark(Landroid/app/PropertyInvalidatedCache;)J
 HSPLandroid/app/PropertyInvalidatedCache;->-$$Nest$fgetmMaxEntries(Landroid/app/PropertyInvalidatedCache;)I
 HSPLandroid/app/PropertyInvalidatedCache;->-$$Nest$fputmHighWaterMark(Landroid/app/PropertyInvalidatedCache;J)V
-SPLandroid/app/PropertyInvalidatedCache;->-$$Nest$smnativeGetByteBlock(JI[B)I
+HSPLandroid/app/PropertyInvalidatedCache;->-$$Nest$smnativeGetByteBlock(JI[B)I
 HSPLandroid/app/PropertyInvalidatedCache;->-$$Nest$smnativeGetByteBlockHash(J)I
-SPLandroid/app/PropertyInvalidatedCache;->-$$Nest$smnativeGetMaxByte(J)I
-SPLandroid/app/PropertyInvalidatedCache;->-$$Nest$smnativeGetMaxNonce(J)I
+HSPLandroid/app/PropertyInvalidatedCache;->-$$Nest$smnativeGetMaxByte(J)I
+HSPLandroid/app/PropertyInvalidatedCache;->-$$Nest$smnativeGetMaxNonce(J)I
 HSPLandroid/app/PropertyInvalidatedCache;->-$$Nest$smnativeGetNonce(JI)J
 HSPLandroid/app/PropertyInvalidatedCache;->-$$Nest$smthrowIfInvalidModule(Ljava/lang/String;)V
 HSPLandroid/app/PropertyInvalidatedCache;-><init>(ILjava/lang/String;)V
@@ -2589,12 +2596,12 @@
 HSPLandroid/app/PropertyInvalidatedCache;->cacheName()Ljava/lang/String;
 HSPLandroid/app/PropertyInvalidatedCache;->clear()V
 HSPLandroid/app/PropertyInvalidatedCache;->createPropertyName(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
-SPLandroid/app/PropertyInvalidatedCache;->createSystemCacheKey(Ljava/lang/String;)Ljava/lang/String;
+HSPLandroid/app/PropertyInvalidatedCache;->createSystemCacheKey(Ljava/lang/String;)Ljava/lang/String;
 HSPLandroid/app/PropertyInvalidatedCache;->disableLocal()V
 HSPLandroid/app/PropertyInvalidatedCache;->getActiveCaches()Ljava/util/ArrayList;
 HSPLandroid/app/PropertyInvalidatedCache;->getCurrentNonce()J
 HSPLandroid/app/PropertyInvalidatedCache;->getNonceHandler(Ljava/lang/String;)Landroid/app/PropertyInvalidatedCache$NonceHandler;+]Ljava/util/concurrent/ConcurrentHashMap;Ljava/util/concurrent/ConcurrentHashMap;
-SPLandroid/app/PropertyInvalidatedCache;->inSharedMemoryDenyList(Ljava/lang/String;)Z
+HSPLandroid/app/PropertyInvalidatedCache;->inSharedMemoryDenyList(Ljava/lang/String;)Z
 HSPLandroid/app/PropertyInvalidatedCache;->invalidateCache(Ljava/lang/String;)V
 HSPLandroid/app/PropertyInvalidatedCache;->isDisabled()Z
 HSPLandroid/app/PropertyInvalidatedCache;->isReservedNonce(J)Z
@@ -2603,7 +2610,7 @@
 HSPLandroid/app/PropertyInvalidatedCache;->recompute(Ljava/lang/Object;)Ljava/lang/Object;
 HSPLandroid/app/PropertyInvalidatedCache;->refresh(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
 HSPLandroid/app/PropertyInvalidatedCache;->registerCache()V
-SPLandroid/app/PropertyInvalidatedCache;->sharedMemoryOkay(Ljava/lang/String;)Z
+HSPLandroid/app/PropertyInvalidatedCache;->sharedMemoryOkay(Ljava/lang/String;)Z
 HSPLandroid/app/PropertyInvalidatedCache;->throwIfInvalidCacheKey(Ljava/lang/String;)V
 HSPLandroid/app/PropertyInvalidatedCache;->throwIfInvalidModule(Ljava/lang/String;)V
 HSPLandroid/app/QueuedWork$QueuedWorkHandler;-><init>(Landroid/os/Looper;)V
@@ -2657,9 +2664,9 @@
 HSPLandroid/app/ResourcesManager$PathCollector;->isSameAsOriginal()Z+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLandroid/app/ResourcesManager$UpdateHandler;-><init>(Landroid/app/ResourcesManager;)V
 HSPLandroid/app/ResourcesManager$UpdateHandler;->onLoadersChanged(Landroid/content/res/Resources;Ljava/util/List;)V+]Landroid/content/res/Resources;Landroid/content/res/Resources;]Ljava/util/List;Ljava/util/ArrayList;
-SPLandroid/app/ResourcesManager;->-$$Nest$fgetmLock(Landroid/app/ResourcesManager;)Ljava/lang/Object;
-SPLandroid/app/ResourcesManager;->-$$Nest$mfindKeyForResourceImplLocked(Landroid/app/ResourcesManager;Landroid/content/res/ResourcesImpl;)Landroid/content/res/ResourcesKey;
-SPLandroid/app/ResourcesManager;->-$$Nest$mfindOrCreateResourcesImplForKeyLocked(Landroid/app/ResourcesManager;Landroid/content/res/ResourcesKey;)Landroid/content/res/ResourcesImpl;
+HSPLandroid/app/ResourcesManager;->-$$Nest$fgetmLock(Landroid/app/ResourcesManager;)Ljava/lang/Object;
+HSPLandroid/app/ResourcesManager;->-$$Nest$mfindKeyForResourceImplLocked(Landroid/app/ResourcesManager;Landroid/content/res/ResourcesImpl;)Landroid/content/res/ResourcesKey;
+HSPLandroid/app/ResourcesManager;->-$$Nest$mfindOrCreateResourcesImplForKeyLocked(Landroid/app/ResourcesManager;Landroid/content/res/ResourcesKey;)Landroid/content/res/ResourcesImpl;
 HSPLandroid/app/ResourcesManager;-><init>()V
 HSPLandroid/app/ResourcesManager;->addApplicationPathsLocked(Ljava/lang/String;[Ljava/lang/String;)V
 HSPLandroid/app/ResourcesManager;->appendLibAssetsForMainAssetPath(Ljava/lang/String;[Ljava/lang/String;)V
@@ -2768,10 +2775,10 @@
 HSPLandroid/app/SharedPreferencesImpl$EditorImpl;->remove(Ljava/lang/String;)Landroid/content/SharedPreferences$Editor;
 HSPLandroid/app/SharedPreferencesImpl$MemoryCommitResult;-><init>(JZLjava/util/List;Ljava/util/Set;Ljava/util/Map;)V
 HSPLandroid/app/SharedPreferencesImpl$MemoryCommitResult;->setDiskWriteResult(ZZ)V
-SPLandroid/app/SharedPreferencesImpl$SharedPreferencesThreadFactory;-><init>()V
-SPLandroid/app/SharedPreferencesImpl$SharedPreferencesThreadFactory;-><init>(Landroid/app/SharedPreferencesImpl-IA;)V
+HSPLandroid/app/SharedPreferencesImpl$SharedPreferencesThreadFactory;-><init>()V
+HSPLandroid/app/SharedPreferencesImpl$SharedPreferencesThreadFactory;-><init>(Landroid/app/SharedPreferencesImpl-IA;)V
 HSPLandroid/app/SharedPreferencesImpl$SharedPreferencesThreadFactory;->newThread(Ljava/lang/Runnable;)Ljava/lang/Thread;
-SPLandroid/app/SharedPreferencesImpl;->$r8$lambda$gCIQI__z13DI5jNIqnAnYLWLcMc(Landroid/app/SharedPreferencesImpl;)V
+HSPLandroid/app/SharedPreferencesImpl;->$r8$lambda$gCIQI__z13DI5jNIqnAnYLWLcMc(Landroid/app/SharedPreferencesImpl;)V
 HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$fgetmCurrentMemoryStateGeneration(Landroid/app/SharedPreferencesImpl;)J
 HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$fgetmDiskWritesInFlight(Landroid/app/SharedPreferencesImpl;)I
 HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$fgetmListeners(Landroid/app/SharedPreferencesImpl;)Ljava/util/WeakHashMap;
@@ -2783,7 +2790,7 @@
 HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$fputmMap(Landroid/app/SharedPreferencesImpl;Ljava/util/Map;)V
 HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$menqueueDiskWrite(Landroid/app/SharedPreferencesImpl;Landroid/app/SharedPreferencesImpl$MemoryCommitResult;Ljava/lang/Runnable;)V
 HSPLandroid/app/SharedPreferencesImpl;->-$$Nest$mwriteToFile(Landroid/app/SharedPreferencesImpl;Landroid/app/SharedPreferencesImpl$MemoryCommitResult;Z)V
-SPLandroid/app/SharedPreferencesImpl;-><clinit>()V
+HSPLandroid/app/SharedPreferencesImpl;-><clinit>()V
 HSPLandroid/app/SharedPreferencesImpl;-><init>(Ljava/io/File;I)V
 HSPLandroid/app/SharedPreferencesImpl;->awaitLoadedLocked()V
 HSPLandroid/app/SharedPreferencesImpl;->contains(Ljava/lang/String;)Z
@@ -2849,12 +2856,12 @@
 HSPLandroid/app/SystemServiceRegistry$129;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$12;->createService(Landroid/app/ContextImpl;)Landroid/view/textclassifier/TextClassificationManager;
 HSPLandroid/app/SystemServiceRegistry$12;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
-SPLandroid/app/SystemServiceRegistry$130;->createService(Landroid/app/ContextImpl;)Landroid/hardware/devicestate/DeviceStateManager;
+HSPLandroid/app/SystemServiceRegistry$130;->createService(Landroid/app/ContextImpl;)Landroid/hardware/devicestate/DeviceStateManager;
 HSPLandroid/app/SystemServiceRegistry$130;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$131;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$138;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$13;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
-HSPLandroid/app/SystemServiceRegistry$149;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;+]Landroid/app/SystemServiceRegistry$ContextAwareServiceProducerWithBinder;Landroid/app/job/JobSchedulerFrameworkInitializer$$ExternalSyntheticLambda0;,Landroid/app/job/JobSchedulerFrameworkInitializer$$ExternalSyntheticLambda1;,Landroid/app/role/RoleFrameworkInitializer$$ExternalSyntheticLambda0;,Landroid/net/wifi/WifiFrameworkInitializer$$ExternalSyntheticLambda0;
+HSPLandroid/app/SystemServiceRegistry$149;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$14;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$150;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;+]Landroid/app/SystemServiceRegistry$ContextAwareServiceProducerWithoutBinder;Landroid/telephony/TelephonyFrameworkInitializer$$ExternalSyntheticLambda1;
 HSPLandroid/app/SystemServiceRegistry$15;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
@@ -2864,7 +2871,7 @@
 HSPLandroid/app/SystemServiceRegistry$20;->createService(Landroid/app/ContextImpl;)Landroid/app/admin/DevicePolicyManager;
 HSPLandroid/app/SystemServiceRegistry$20;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;+]Landroid/app/SystemServiceRegistry$20;Landroid/app/SystemServiceRegistry$20;
 HSPLandroid/app/SystemServiceRegistry$21;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
-SPLandroid/app/SystemServiceRegistry$22;->createService(Landroid/app/ContextImpl;)Landroid/os/BatteryManager;
+HSPLandroid/app/SystemServiceRegistry$22;->createService(Landroid/app/ContextImpl;)Landroid/os/BatteryManager;
 HSPLandroid/app/SystemServiceRegistry$22;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$23;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$24;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
@@ -2883,7 +2890,7 @@
 HSPLandroid/app/SystemServiceRegistry$32;->createService(Landroid/app/ContextImpl;)Landroid/location/LocationManager;
 HSPLandroid/app/SystemServiceRegistry$32;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$33;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
-HSPLandroid/app/SystemServiceRegistry$34;->createService(Landroid/app/ContextImpl;)Landroid/app/NotificationManager;+]Landroid/content/Context;Landroid/app/ContextImpl;
+HSPLandroid/app/SystemServiceRegistry$34;->createService(Landroid/app/ContextImpl;)Landroid/app/NotificationManager;+]Landroid/content/Context;missing_types
 HSPLandroid/app/SystemServiceRegistry$34;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$35;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$36;->createService(Landroid/app/ContextImpl;)Landroid/os/PowerManager;
@@ -2898,19 +2905,19 @@
 HSPLandroid/app/SystemServiceRegistry$41;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$42;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$43;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
-SPLandroid/app/SystemServiceRegistry$44;->createService(Landroid/app/ContextImpl;)Landroid/os/storage/StorageManager;
+HSPLandroid/app/SystemServiceRegistry$44;->createService(Landroid/app/ContextImpl;)Landroid/os/storage/StorageManager;
 HSPLandroid/app/SystemServiceRegistry$44;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$45;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$46;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$47;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
-SPLandroid/app/SystemServiceRegistry$48;->createService(Landroid/app/ContextImpl;)Landroid/telephony/TelephonyRegistryManager;
+HSPLandroid/app/SystemServiceRegistry$48;->createService(Landroid/app/ContextImpl;)Landroid/telephony/TelephonyRegistryManager;
 HSPLandroid/app/SystemServiceRegistry$48;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$49;->createService(Landroid/app/ContextImpl;)Landroid/telecom/TelecomManager;
 HSPLandroid/app/SystemServiceRegistry$49;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$4;->createService(Landroid/app/ContextImpl;)Landroid/app/ActivityManager;
 HSPLandroid/app/SystemServiceRegistry$4;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$50;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
-SPLandroid/app/SystemServiceRegistry$51;->createService(Landroid/app/ContextImpl;)Landroid/app/UiModeManager;
+HSPLandroid/app/SystemServiceRegistry$51;->createService(Landroid/app/ContextImpl;)Landroid/app/UiModeManager;
 HSPLandroid/app/SystemServiceRegistry$51;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$52;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$53;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
@@ -2938,6 +2945,8 @@
 HSPLandroid/app/SystemServiceRegistry$78;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$7;->createService(Landroid/app/ContextImpl;)Landroid/app/AlarmManager;
 HSPLandroid/app/SystemServiceRegistry$7;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
+SPLandroid/app/SystemServiceRegistry$81;->createService(Landroid/app/ContextImpl;)Landroid/app/usage/UsageStatsManager;
+SPLandroid/app/SystemServiceRegistry$81;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$84;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$85;->createService(Landroid/app/ContextImpl;)Landroid/appwidget/AppWidgetManager;
 HSPLandroid/app/SystemServiceRegistry$85;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
@@ -2947,7 +2956,7 @@
 HSPLandroid/app/SystemServiceRegistry$89;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$8;->createService(Landroid/app/ContextImpl;)Landroid/media/AudioManager;
 HSPLandroid/app/SystemServiceRegistry$8;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
-SPLandroid/app/SystemServiceRegistry$90;->createService(Landroid/app/ContextImpl;)Landroid/content/pm/ShortcutManager;
+HSPLandroid/app/SystemServiceRegistry$90;->createService(Landroid/app/ContextImpl;)Landroid/content/pm/ShortcutManager;
 HSPLandroid/app/SystemServiceRegistry$90;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$91;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
 HSPLandroid/app/SystemServiceRegistry$92;->createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
@@ -2983,17 +2992,17 @@
 HSPLandroid/app/TaskStackListener;->onTaskRemoved(I)V
 HSPLandroid/app/TaskStackListener;->onTaskRequestedOrientationChanged(II)V
 HSPLandroid/app/UiModeManager$1;-><init>(Landroid/app/UiModeManager;)V
-SPLandroid/app/UiModeManager$1;->apply(Ljava/lang/Object;)Ljava/lang/Object;
-SPLandroid/app/UiModeManager$1;->apply(Ljava/lang/Void;)Ljava/lang/Integer;
-SPLandroid/app/UiModeManager$2;-><init>(Landroid/app/UiModeManager;)V
+HSPLandroid/app/UiModeManager$1;->apply(Ljava/lang/Object;)Ljava/lang/Object;
+HSPLandroid/app/UiModeManager$1;->apply(Ljava/lang/Void;)Ljava/lang/Integer;
+HSPLandroid/app/UiModeManager$2;-><init>(Landroid/app/UiModeManager;)V
 HSPLandroid/app/UiModeManager$Globals;->-$$Nest$fgetmService(Landroid/app/UiModeManager$Globals;)Landroid/app/IUiModeManager;
 HSPLandroid/app/UiModeManager$Globals;-><init>(Landroid/app/IUiModeManager;)V
 HSPLandroid/app/UiModeManager$OnProjectionStateChangedListenerResourceManager;-><init>()V
-SPLandroid/app/UiModeManager;->-$$Nest$mgetCurrentModeTypeFromServer(Landroid/app/UiModeManager;)Ljava/lang/Integer;
+HSPLandroid/app/UiModeManager;->-$$Nest$mgetCurrentModeTypeFromServer(Landroid/app/UiModeManager;)Ljava/lang/Integer;
 HSPLandroid/app/UiModeManager;-><init>(Landroid/content/Context;)V
 HSPLandroid/app/UiModeManager;->getActiveProjectionTypes()I
 HSPLandroid/app/UiModeManager;->getCurrentModeType()I
-SPLandroid/app/UiModeManager;->getCurrentModeTypeFromServer()Ljava/lang/Integer;
+HSPLandroid/app/UiModeManager;->getCurrentModeTypeFromServer()Ljava/lang/Integer;
 HSPLandroid/app/UriGrantsManager$1;->create()Landroid/app/IUriGrantsManager;
 HSPLandroid/app/UriGrantsManager$1;->create()Ljava/lang/Object;
 HSPLandroid/app/UriGrantsManager;->getService()Landroid/app/IUriGrantsManager;
@@ -3341,6 +3350,10 @@
 HSPLandroid/app/job/JobInfo;->writeToParcel(Landroid/os/Parcel;I)V
 HSPLandroid/app/job/JobParameters$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/job/JobParameters;
 HSPLandroid/app/job/JobParameters$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
+SPLandroid/app/job/JobParameters$JobCleanupCallback;->disableCleaner()V
+SPLandroid/app/job/JobParameters$JobCleanupCallback;->enableCleaner()V
+SPLandroid/app/job/JobParameters$JobCleanupCallback;->isCleanerEnabled()Z
+HSPLandroid/app/job/JobParameters$JobCleanupCallback;->run()V+]Landroid/app/job/IJobCallback;Landroid/app/job/IJobCallback$Stub$Proxy;]Landroid/app/job/JobParameters$JobCleanupCallback;Landroid/app/job/JobParameters$JobCleanupCallback;
 HSPLandroid/app/job/JobParameters;-><init>(Landroid/os/Parcel;)V
 HSPLandroid/app/job/JobParameters;->completeWork(Landroid/app/job/JobWorkItem;)V
 HSPLandroid/app/job/JobParameters;->dequeueWork()Landroid/app/job/JobWorkItem;
@@ -3354,6 +3367,7 @@
 HSPLandroid/app/job/JobParameters;->getTransientExtras()Landroid/os/Bundle;
 HSPLandroid/app/job/JobParameters;->getTriggeredContentAuthorities()[Ljava/lang/String;
 HSPLandroid/app/job/JobParameters;->getTriggeredContentUris()[Landroid/net/Uri;
+HSPLandroid/app/job/JobParameters;->initCleaner(Landroid/app/job/JobParameters$JobCleanupCallback;)V
 HSPLandroid/app/job/JobParameters;->writeToParcel(Landroid/os/Parcel;I)V
 HSPLandroid/app/job/JobScheduler;-><init>()V
 HSPLandroid/app/job/JobScheduler;->sanitizeNamespace(Ljava/lang/String;)Ljava/lang/String;
@@ -3426,8 +3440,8 @@
 HSPLandroid/app/servertransaction/ActivityResultItem;->execute(Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions;)V
 HSPLandroid/app/servertransaction/ActivityResultItem;->getPostExecutionState()I
 HSPLandroid/app/servertransaction/ActivityTransactionItem;->getActivityToken()Landroid/os/IBinder;
-SPLandroid/app/servertransaction/BaseClientRequest;->postExecute(Landroid/app/ClientTransactionHandler;Landroid/app/servertransaction/PendingTransactionActions;)V
-SPLandroid/app/servertransaction/BaseClientRequest;->preExecute(Landroid/app/ClientTransactionHandler;)V
+HSPLandroid/app/servertransaction/BaseClientRequest;->postExecute(Landroid/app/ClientTransactionHandler;Landroid/app/servertransaction/PendingTransactionActions;)V
+HSPLandroid/app/servertransaction/BaseClientRequest;->preExecute(Landroid/app/ClientTransactionHandler;)V
 HSPLandroid/app/servertransaction/ClientTransaction$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/ClientTransaction;
 HSPLandroid/app/servertransaction/ClientTransaction$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
 HSPLandroid/app/servertransaction/ClientTransaction;-><init>(Landroid/os/Parcel;)V
@@ -3441,13 +3455,13 @@
 HSPLandroid/app/servertransaction/ClientTransactionItem;->getPostExecutionState()I
 HSPLandroid/app/servertransaction/ClientTransactionItem;->isActivityLifecycleItem()Z
 HSPLandroid/app/servertransaction/ClientTransactionItem;->shouldHaveDefinedPreExecutionState()Z
-SPLandroid/app/servertransaction/ClientTransactionListenerController;-><init>(Landroid/hardware/display/DisplayManagerGlobal;)V
+HSPLandroid/app/servertransaction/ClientTransactionListenerController;-><init>(Landroid/hardware/display/DisplayManagerGlobal;)V
 HSPLandroid/app/servertransaction/ClientTransactionListenerController;->getInstance()Landroid/app/servertransaction/ClientTransactionListenerController;
 HSPLandroid/app/servertransaction/ClientTransactionListenerController;->onClientTransactionFinished()V+]Landroid/app/servertransaction/ClientTransactionListenerController;Landroid/app/servertransaction/ClientTransactionListenerController;]Landroid/content/Context;missing_types
 HSPLandroid/app/servertransaction/ClientTransactionListenerController;->onClientTransactionStarted()V
 HSPLandroid/app/servertransaction/ClientTransactionListenerController;->onContextConfigurationPostChanged(Landroid/content/Context;)V
 HSPLandroid/app/servertransaction/ClientTransactionListenerController;->onContextConfigurationPreChanged(Landroid/content/Context;)V+]Landroid/content/Context;missing_types]Landroid/content/res/Resources;Landroid/content/res/Resources;
-HSPLandroid/app/servertransaction/ClientTransactionListenerController;->shouldReportDisplayChange(Landroid/content/Context;Landroid/content/res/Configuration;)Z+]Landroid/content/Context;missing_types]Landroid/content/res/Resources;Landroid/content/res/Resources;
+HSPLandroid/app/servertransaction/ClientTransactionListenerController;->shouldReportDisplayChange(Landroid/content/Context;Landroid/content/res/Configuration;)Z+]Landroid/content/Context;Landroid/window/WindowContext;]Landroid/content/res/Resources;Landroid/content/res/Resources;
 HSPLandroid/app/servertransaction/ConfigurationChangeItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/ConfigurationChangeItem;
 HSPLandroid/app/servertransaction/ConfigurationChangeItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
 HSPLandroid/app/servertransaction/ConfigurationChangeItem;-><init>(Landroid/os/Parcel;)V
@@ -3460,6 +3474,7 @@
 HSPLandroid/app/servertransaction/LaunchActivityItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
 HSPLandroid/app/servertransaction/LaunchActivityItem;-><init>(Landroid/os/IBinder;ILandroid/content/res/Configuration;Landroid/content/res/Configuration;ILjava/lang/String;Lcom/android/internal/app/IVoiceInteractor;ILandroid/os/Bundle;Landroid/os/PersistableBundle;Ljava/util/List;Ljava/util/List;Landroid/app/ActivityOptions$SceneTransitionInfo;ZLandroid/app/ProfilerInfo;Landroid/os/IBinder;Landroid/app/IActivityClientController;Landroid/os/IBinder;ZLandroid/os/IBinder;Landroid/os/IBinder;Landroid/window/ActivityWindowInfo;)V
 HSPLandroid/app/servertransaction/LaunchActivityItem;-><init>(Landroid/os/Parcel;)V
+HSPLandroid/app/servertransaction/LaunchActivityItem;->getActivityToken()Landroid/os/IBinder;
 HSPLandroid/app/servertransaction/NewIntentItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/NewIntentItem;
 HSPLandroid/app/servertransaction/NewIntentItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
 HSPLandroid/app/servertransaction/NewIntentItem;->execute(Landroid/app/ClientTransactionHandler;Landroid/app/ActivityThread$ActivityClientRecord;Landroid/app/servertransaction/PendingTransactionActions;)V
@@ -3515,6 +3530,11 @@
 HSPLandroid/app/servertransaction/TransactionExecutorHelper;->getClosestPreExecutionState(Landroid/app/ActivityThread$ActivityClientRecord;I)I
 HSPLandroid/app/servertransaction/TransactionExecutorHelper;->getLifecyclePath(IIZ)Landroid/util/IntArray;
 HSPLandroid/app/servertransaction/TransactionExecutorHelper;->shouldExcludeLastLifecycleState(Ljava/util/List;I)Z+]Landroid/app/servertransaction/ActivityLifecycleItem;Landroid/app/servertransaction/ResumeActivityItem;]Landroid/app/servertransaction/ClientTransactionItem;megamorphic_types]Ljava/util/List;Ljava/util/ArrayList;
+HSPLandroid/app/servertransaction/WindowStateInsetsControlChangeItem$1;->createFromParcel(Landroid/os/Parcel;)Landroid/app/servertransaction/WindowStateInsetsControlChangeItem;
+HSPLandroid/app/servertransaction/WindowStateInsetsControlChangeItem$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
+HSPLandroid/app/servertransaction/WindowStateInsetsControlChangeItem;-><init>(Landroid/os/Parcel;)V
+SPLandroid/app/servertransaction/WindowStateInsetsControlChangeItem;-><init>(Landroid/os/Parcel;Landroid/app/servertransaction/WindowStateInsetsControlChangeItem-IA;)V
+HSPLandroid/app/servertransaction/WindowStateInsetsControlChangeItem;->execute(Landroid/app/ClientTransactionHandler;Landroid/view/IWindow;Landroid/app/servertransaction/PendingTransactionActions;)V+]Landroid/view/IWindow;missing_types
 HSPLandroid/app/servertransaction/WindowStateTransactionItem;-><init>(Landroid/os/Parcel;)V
 HSPLandroid/app/servertransaction/WindowStateTransactionItem;->execute(Landroid/app/ClientTransactionHandler;Landroid/app/servertransaction/PendingTransactionActions;)V+]Landroid/app/servertransaction/WindowStateTransactionItem$TransactionListener;Landroid/view/ViewRootImpl$W;]Landroid/app/servertransaction/WindowStateTransactionItem;Landroid/app/servertransaction/WindowStateInsetsControlChangeItem;,Landroid/app/servertransaction/WindowStateResizeItem;
 HSPLandroid/app/slice/ISliceManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V
@@ -3619,9 +3639,9 @@
 HSPLandroid/app/usage/UsageStatsManager;->queryUsageStats(IJJ)Ljava/util/List;
 HSPLandroid/appwidget/AppWidgetManager$$ExternalSyntheticLambda3;-><init>()V
 HSPLandroid/appwidget/AppWidgetManager$$ExternalSyntheticLambda5;-><init>()V
-SPLandroid/appwidget/AppWidgetManager$$ExternalSyntheticLambda7;->run()V
+HSPLandroid/appwidget/AppWidgetManager$$ExternalSyntheticLambda7;->run()V
 HSPLandroid/appwidget/AppWidgetManager$ServiceCollectionCache;-><init>(Landroid/content/Context;J)V
-SPLandroid/appwidget/AppWidgetManager;->$r8$lambda$WKLPyaeqLNLNb3560d7QJuq2DwQ(Landroid/appwidget/AppWidgetManager;)V
+HSPLandroid/appwidget/AppWidgetManager;->$r8$lambda$WKLPyaeqLNLNb3560d7QJuq2DwQ(Landroid/appwidget/AppWidgetManager;)V
 HSPLandroid/appwidget/AppWidgetManager;-><init>(Landroid/content/Context;Lcom/android/internal/appwidget/IAppWidgetService;)V
 HSPLandroid/appwidget/AppWidgetManager;->getAppWidgetIds(Landroid/content/ComponentName;)[I
 HSPLandroid/appwidget/AppWidgetManager;->getInstalledProvidersForPackage(Ljava/lang/String;Landroid/os/UserHandle;)Ljava/util/List;
@@ -4381,7 +4401,7 @@
 HSPLandroid/content/IntentFilter;->countCategories()I
 HSPLandroid/content/IntentFilter;->countDataAuthorities()I
 HSPLandroid/content/IntentFilter;->countDataPaths()I
-SPLandroid/content/IntentFilter;->countDataSchemeSpecificParts()I
+HSPLandroid/content/IntentFilter;->countDataSchemeSpecificParts()I
 HSPLandroid/content/IntentFilter;->countDataSchemes()I
 HSPLandroid/content/IntentFilter;->countDataTypes()I
 HSPLandroid/content/IntentFilter;->countMimeGroups()I
@@ -5046,12 +5066,12 @@
 HSPLandroid/content/res/ApkAssets;->getAssetPath()Ljava/lang/String;
 HSPLandroid/content/res/ApkAssets;->getDebugName()Ljava/lang/String;
 HSPLandroid/content/res/ApkAssets;->getStringFromPool(I)Ljava/lang/CharSequence;
-SPLandroid/content/res/ApkAssets;->isForLoader()Z
-SPLandroid/content/res/ApkAssets;->isOverlay()Z
-SPLandroid/content/res/ApkAssets;->isSharedLib()Z
-SPLandroid/content/res/ApkAssets;->isSystem()Z
+HSPLandroid/content/res/ApkAssets;->isForLoader()Z
+HSPLandroid/content/res/ApkAssets;->isOverlay()Z
+HSPLandroid/content/res/ApkAssets;->isSharedLib()Z
+HSPLandroid/content/res/ApkAssets;->isSystem()Z
 HSPLandroid/content/res/ApkAssets;->isUpToDate()Z
-SPLandroid/content/res/ApkAssets;->loadFromFd(Ljava/io/FileDescriptor;Ljava/lang/String;ILandroid/content/res/loader/AssetsProvider;)Landroid/content/res/ApkAssets;
+HSPLandroid/content/res/ApkAssets;->loadFromFd(Ljava/io/FileDescriptor;Ljava/lang/String;ILandroid/content/res/loader/AssetsProvider;)Landroid/content/res/ApkAssets;
 HSPLandroid/content/res/ApkAssets;->loadFromPath(Ljava/lang/String;)Landroid/content/res/ApkAssets;
 HSPLandroid/content/res/ApkAssets;->loadFromPath(Ljava/lang/String;I)Landroid/content/res/ApkAssets;
 HSPLandroid/content/res/ApkAssets;->loadOverlayFromPath(Ljava/lang/String;I)Landroid/content/res/ApkAssets;
@@ -5088,11 +5108,11 @@
 HSPLandroid/content/res/AssetManager;->-$$Nest$fgetmObject(Landroid/content/res/AssetManager;)J
 HSPLandroid/content/res/AssetManager;->-$$Nest$fputmApkAssets(Landroid/content/res/AssetManager;[Landroid/content/res/ApkAssets;)V
 HSPLandroid/content/res/AssetManager;->-$$Nest$fputmLoaders(Landroid/content/res/AssetManager;[Landroid/content/res/loader/ResourcesLoader;)V
-HSPLandroid/content/res/AssetManager;->-$$Nest$mdecRefsLocked(Landroid/content/res/AssetManager;J)V
 HSPLandroid/content/res/AssetManager;->-$$Nest$smnativeAssetDestroy(J)V
 HSPLandroid/content/res/AssetManager;->-$$Nest$smnativeAssetGetLength(J)J
 HSPLandroid/content/res/AssetManager;->-$$Nest$smnativeAssetGetRemainingLength(J)J
 HSPLandroid/content/res/AssetManager;->-$$Nest$smnativeAssetRead(J[BII)I
+SPLandroid/content/res/AssetManager;->-$$Nest$smnativeSetApkAssets(J[Landroid/content/res/ApkAssets;ZZ)V
 HSPLandroid/content/res/AssetManager;-><init>()V
 HSPLandroid/content/res/AssetManager;-><init>(Z)V
 HSPLandroid/content/res/AssetManager;-><init>(ZLandroid/content/res/AssetManager-IA;)V
@@ -5102,7 +5122,7 @@
 HSPLandroid/content/res/AssetManager;->containsAllocatedTable()Z
 HSPLandroid/content/res/AssetManager;->createSystemAssetsInZygoteLocked(ZLjava/lang/String;)V
 HSPLandroid/content/res/AssetManager;->createTheme()J
-HSPLandroid/content/res/AssetManager;->decRefsLocked(J)V
+HSPLandroid/content/res/AssetManager;->decRefs(J)V
 HSPLandroid/content/res/AssetManager;->dump(Ljava/io/PrintWriter;Ljava/lang/String;)V
 HSPLandroid/content/res/AssetManager;->ensureOpenLocked()V
 HSPLandroid/content/res/AssetManager;->ensureValidLocked()V
@@ -5188,19 +5208,19 @@
 HSPLandroid/content/res/CompatibilityInfo;->applyToConfiguration(ILandroid/content/res/Configuration;)V
 HSPLandroid/content/res/CompatibilityInfo;->applyToDisplayMetrics(Landroid/util/DisplayMetrics;)V
 HSPLandroid/content/res/CompatibilityInfo;->equals(Ljava/lang/Object;)Z
-SPLandroid/content/res/CompatibilityInfo;->getCompatibilityChangesForConfig(Landroid/content/res/CompatibilityInfo;)I
+HSPLandroid/content/res/CompatibilityInfo;->getCompatibilityChangesForConfig(Landroid/content/res/CompatibilityInfo;)I
 HSPLandroid/content/res/CompatibilityInfo;->getOverrideInvertedScale()F
 HSPLandroid/content/res/CompatibilityInfo;->getTranslator()Landroid/content/res/CompatibilityInfo$Translator;
 HSPLandroid/content/res/CompatibilityInfo;->hasOverrideDisplayRotation()Z
 HSPLandroid/content/res/CompatibilityInfo;->hasOverrideScale()Z
 HSPLandroid/content/res/CompatibilityInfo;->hasOverrideScaling()Z
 HSPLandroid/content/res/CompatibilityInfo;->hashCode()I
-SPLandroid/content/res/CompatibilityInfo;->isDisplayRotationEqual(Landroid/content/res/CompatibilityInfo;)Z
-SPLandroid/content/res/CompatibilityInfo;->isOverrideDisplayRotationRequired()Z
-SPLandroid/content/res/CompatibilityInfo;->isScaleEqual(Landroid/content/res/CompatibilityInfo;)Z
+HSPLandroid/content/res/CompatibilityInfo;->isDisplayRotationEqual(Landroid/content/res/CompatibilityInfo;)Z
+HSPLandroid/content/res/CompatibilityInfo;->isOverrideDisplayRotationRequired()Z
+HSPLandroid/content/res/CompatibilityInfo;->isScaleEqual(Landroid/content/res/CompatibilityInfo;)Z
 HSPLandroid/content/res/CompatibilityInfo;->isScalingRequired()Z
 HSPLandroid/content/res/CompatibilityInfo;->needsCompatResources()Z
-SPLandroid/content/res/CompatibilityInfo;->setOverrideDisplayRotation(I)V
+HSPLandroid/content/res/CompatibilityInfo;->setOverrideDisplayRotation(I)V
 HSPLandroid/content/res/CompatibilityInfo;->setOverrideInvertedScale(F)V
 HSPLandroid/content/res/CompatibilityInfo;->supportsScreen()Z
 HSPLandroid/content/res/ComplexColor;-><init>()V
@@ -5402,7 +5422,7 @@
 HSPLandroid/content/res/ResourcesImpl$$ExternalSyntheticLambda2;-><init>()V
 HSPLandroid/content/res/ResourcesImpl$$ExternalSyntheticLambda2;->onHeaderDecoded(Landroid/graphics/ImageDecoder;Landroid/graphics/ImageDecoder$ImageInfo;Landroid/graphics/ImageDecoder$Source;)V
 HSPLandroid/content/res/ResourcesImpl$LookupStack;-><init>()V
-SPLandroid/content/res/ResourcesImpl$LookupStack;-><init>(Landroid/content/res/ResourcesImpl-IA;)V
+HSPLandroid/content/res/ResourcesImpl$LookupStack;-><init>(Landroid/content/res/ResourcesImpl-IA;)V
 HSPLandroid/content/res/ResourcesImpl$LookupStack;->contains(I)Z
 HSPLandroid/content/res/ResourcesImpl$LookupStack;->pop()V
 HSPLandroid/content/res/ResourcesImpl$LookupStack;->push(I)V
@@ -5470,7 +5490,7 @@
 HSPLandroid/content/res/ResourcesImpl;->updateConfiguration(Landroid/content/res/Configuration;Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;)V
 HSPLandroid/content/res/ResourcesImpl;->updateConfigurationImpl(Landroid/content/res/Configuration;Landroid/util/DisplayMetrics;Landroid/content/res/CompatibilityInfo;Z)V
 HSPLandroid/content/res/ResourcesImpl;->verifyPreloadConfig(IIILjava/lang/String;)Z
-SPLandroid/content/res/ResourcesKey;-><init>(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/content/res/Configuration;Landroid/content/res/CompatibilityInfo;)V
+HSPLandroid/content/res/ResourcesKey;-><init>(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/content/res/Configuration;Landroid/content/res/CompatibilityInfo;)V
 HSPLandroid/content/res/ResourcesKey;-><init>(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/content/res/Configuration;Landroid/content/res/CompatibilityInfo;[Landroid/content/res/loader/ResourcesLoader;)V
 HSPLandroid/content/res/ResourcesKey;->equals(Ljava/lang/Object;)Z
 HSPLandroid/content/res/ResourcesKey;->hasOverrideConfiguration()Z
@@ -5578,18 +5598,18 @@
 HSPLandroid/content/res/XmlBlock;->finalize()V
 HSPLandroid/content/res/XmlBlock;->newParser()Landroid/content/res/XmlResourceParser;
 HSPLandroid/content/res/XmlBlock;->newParser(I)Landroid/content/res/XmlResourceParser;
-SPLandroid/content/res/loader/ResourcesLoader;-><init>()V
-SPLandroid/content/res/loader/ResourcesLoader;->addProvider(Landroid/content/res/loader/ResourcesProvider;)V
-SPLandroid/content/res/loader/ResourcesLoader;->arrayEquals([Landroid/content/res/loader/ResourcesProvider;[Landroid/content/res/loader/ResourcesProvider;)Z
-SPLandroid/content/res/loader/ResourcesLoader;->getApkAssets()Ljava/util/List;
-HSPLandroid/content/res/loader/ResourcesLoader;->notifyProvidersChangedLocked()V
+HSPLandroid/content/res/loader/ResourcesLoader;-><init>()V
+HSPLandroid/content/res/loader/ResourcesLoader;->addProvider(Landroid/content/res/loader/ResourcesProvider;)V
+HSPLandroid/content/res/loader/ResourcesLoader;->arrayEquals([Landroid/content/res/loader/ResourcesProvider;[Landroid/content/res/loader/ResourcesProvider;)Z
+HSPLandroid/content/res/loader/ResourcesLoader;->getApkAssets()Ljava/util/List;
+HSPLandroid/content/res/loader/ResourcesLoader;->notifyProvidersChangedLocked()V+]Landroid/content/res/loader/ResourcesProvider;Landroid/content/res/loader/ResourcesProvider;
 HSPLandroid/content/res/loader/ResourcesLoader;->registerOnProvidersChangedCallback(Ljava/lang/Object;Landroid/content/res/loader/ResourcesLoader$UpdateCallbacks;)V
-SPLandroid/content/res/loader/ResourcesProvider;-><init>(Landroid/content/res/ApkAssets;)V
-SPLandroid/content/res/loader/ResourcesProvider;->decrementRefCount()V
-SPLandroid/content/res/loader/ResourcesProvider;->getApkAssets()Landroid/content/res/ApkAssets;
-SPLandroid/content/res/loader/ResourcesProvider;->incrementRefCount()V
-SPLandroid/content/res/loader/ResourcesProvider;->loadFromApk(Landroid/os/ParcelFileDescriptor;)Landroid/content/res/loader/ResourcesProvider;
-SPLandroid/content/res/loader/ResourcesProvider;->loadFromApk(Landroid/os/ParcelFileDescriptor;Landroid/content/res/loader/AssetsProvider;)Landroid/content/res/loader/ResourcesProvider;
+HSPLandroid/content/res/loader/ResourcesProvider;-><init>(Landroid/content/res/ApkAssets;)V
+HSPLandroid/content/res/loader/ResourcesProvider;->decrementRefCount()V
+HSPLandroid/content/res/loader/ResourcesProvider;->getApkAssets()Landroid/content/res/ApkAssets;
+HSPLandroid/content/res/loader/ResourcesProvider;->incrementRefCount()V
+HSPLandroid/content/res/loader/ResourcesProvider;->loadFromApk(Landroid/os/ParcelFileDescriptor;)Landroid/content/res/loader/ResourcesProvider;
+HSPLandroid/content/res/loader/ResourcesProvider;->loadFromApk(Landroid/os/ParcelFileDescriptor;Landroid/content/res/loader/AssetsProvider;)Landroid/content/res/loader/ResourcesProvider;
 HSPLandroid/content/type/DefaultMimeMapFactory$$ExternalSyntheticLambda0;->apply(Ljava/lang/Object;)Ljava/lang/Object;
 HSPLandroid/content/type/DefaultMimeMapFactory;->create()Llibcore/content/type/MimeMap;
 HSPLandroid/content/type/DefaultMimeMapFactory;->lambda$create$0(Ljava/lang/Class;Ljava/lang/String;)Ljava/io/InputStream;
@@ -5811,6 +5831,7 @@
 HSPLandroid/database/Observable;->unregisterAll()V
 HSPLandroid/database/Observable;->unregisterObserver(Ljava/lang/Object;)V
 HSPLandroid/database/sqlite/FeatureFlagsImpl;-><init>()V
+SPLandroid/database/sqlite/FeatureFlagsImpl;->concurrentOpenHelper()Z
 HSPLandroid/database/sqlite/FeatureFlagsImpl;->onewayFinalizerCloseFixed()Z
 HSPLandroid/database/sqlite/Flags;-><clinit>()V
 HSPLandroid/database/sqlite/SQLiteClosable;-><init>()V
@@ -5822,14 +5843,14 @@
 HSPLandroid/database/sqlite/SQLiteCompatibilityWalFlags;->initIfNeeded()V
 HSPLandroid/database/sqlite/SQLiteCompatibilityWalFlags;->isLegacyCompatibilityWalEnabled()Z
 HSPLandroid/database/sqlite/SQLiteConnection$Operation;-><init>(Landroid/database/sqlite/SQLiteConnection;)V
-SPLandroid/database/sqlite/SQLiteConnection$Operation;-><init>(Landroid/database/sqlite/SQLiteConnection;Landroid/database/sqlite/SQLiteConnection-IA;)V
+HSPLandroid/database/sqlite/SQLiteConnection$Operation;-><init>(Landroid/database/sqlite/SQLiteConnection;Landroid/database/sqlite/SQLiteConnection-IA;)V
 HSPLandroid/database/sqlite/SQLiteConnection$Operation;->copyFrom(Landroid/database/sqlite/SQLiteConnection$Operation;)V
 HSPLandroid/database/sqlite/SQLiteConnection$Operation;->describe(Ljava/lang/StringBuilder;Z)V
 HSPLandroid/database/sqlite/SQLiteConnection$Operation;->getTraceMethodName()Ljava/lang/String;
 HSPLandroid/database/sqlite/SQLiteConnection$Operation;->setEmpty()V
 HSPLandroid/database/sqlite/SQLiteConnection$Operation;->start()V+]Ljava/util/ArrayList;Ljava/util/ArrayList;
-SPLandroid/database/sqlite/SQLiteConnection$OperationLog$$ExternalSyntheticLambda0;-><init>(Landroid/database/sqlite/SQLiteConnection$OperationLog;)V
-SPLandroid/database/sqlite/SQLiteConnection$OperationLog$$ExternalSyntheticLambda1;-><init>()V
+HSPLandroid/database/sqlite/SQLiteConnection$OperationLog$$ExternalSyntheticLambda0;-><init>(Landroid/database/sqlite/SQLiteConnection$OperationLog;)V
+HSPLandroid/database/sqlite/SQLiteConnection$OperationLog$$ExternalSyntheticLambda1;-><init>()V
 HSPLandroid/database/sqlite/SQLiteConnection$OperationLog$$ExternalSyntheticLambda1;->apply(I)Ljava/lang/Object;
 HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;-><init>(Landroid/database/sqlite/SQLiteConnection;)V
 HSPLandroid/database/sqlite/SQLiteConnection$OperationLog;->beginOperation(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)I
@@ -5907,7 +5928,7 @@
 HSPLandroid/database/sqlite/SQLiteConnection;->setSyncModeFromConfiguration()V
 HSPLandroid/database/sqlite/SQLiteConnection;->throwIfStatementForbidden(Landroid/database/sqlite/SQLiteConnection$PreparedStatement;)V
 HSPLandroid/database/sqlite/SQLiteConnectionPool$ConnectionWaiter;-><init>()V
-SPLandroid/database/sqlite/SQLiteConnectionPool$ConnectionWaiter;-><init>(Landroid/database/sqlite/SQLiteConnectionPool-IA;)V
+HSPLandroid/database/sqlite/SQLiteConnectionPool$ConnectionWaiter;-><init>(Landroid/database/sqlite/SQLiteConnectionPool-IA;)V
 HSPLandroid/database/sqlite/SQLiteConnectionPool$IdleConnectionHandler;->connectionAcquired(Landroid/database/sqlite/SQLiteConnection;)V
 HSPLandroid/database/sqlite/SQLiteConnectionPool$IdleConnectionHandler;->connectionClosed(Landroid/database/sqlite/SQLiteConnection;)V
 HSPLandroid/database/sqlite/SQLiteConnectionPool$IdleConnectionHandler;->connectionReleased(Landroid/database/sqlite/SQLiteConnection;)V
@@ -6171,7 +6192,7 @@
 HSPLandroid/database/sqlite/SQLiteStatementInfo;-><init>()V
 HSPLandroid/ddm/DdmHandle;->putString(Ljava/nio/ByteBuffer;Ljava/lang/String;)V
 HSPLandroid/ddm/DdmHandleAppName$Names;-><init>(Ljava/lang/String;Ljava/lang/String;)V
-SPLandroid/ddm/DdmHandleAppName$Names;-><init>(Ljava/lang/String;Ljava/lang/String;Landroid/ddm/DdmHandleAppName-IA;)V
+HSPLandroid/ddm/DdmHandleAppName$Names;-><init>(Ljava/lang/String;Ljava/lang/String;Landroid/ddm/DdmHandleAppName-IA;)V
 HSPLandroid/ddm/DdmHandleAppName;->sendAPNM(Ljava/lang/String;Ljava/lang/String;I)V
 HSPLandroid/ddm/DdmHandleAppName;->setAppName(Ljava/lang/String;I)V
 HSPLandroid/ddm/DdmHandleAppName;->setAppName(Ljava/lang/String;Ljava/lang/String;I)V
@@ -6180,7 +6201,6 @@
 HSPLandroid/ddm/DdmHandleHello;->handleFEAT(Lorg/apache/harmony/dalvik/ddmc/Chunk;)Lorg/apache/harmony/dalvik/ddmc/Chunk;
 HSPLandroid/ddm/DdmHandleHello;->handleHELO(Lorg/apache/harmony/dalvik/ddmc/Chunk;)Lorg/apache/harmony/dalvik/ddmc/Chunk;
 HSPLandroid/ddm/DdmHandleProfiling;->handleChunk(Lorg/apache/harmony/dalvik/ddmc/Chunk;)Lorg/apache/harmony/dalvik/ddmc/Chunk;
-HSPLandroid/graphics/BLASTBufferQueue;-><init>(Ljava/lang/String;Landroid/view/SurfaceControl;III)V
 HSPLandroid/graphics/BLASTBufferQueue;-><init>(Ljava/lang/String;Z)V
 HSPLandroid/graphics/BLASTBufferQueue;->createSurface()Landroid/view/Surface;
 HSPLandroid/graphics/BLASTBufferQueue;->destroy()V
@@ -7035,7 +7055,7 @@
 HSPLandroid/graphics/Typeface$CustomFallbackBuilder;->setStyle(Landroid/graphics/fonts/FontStyle;)Landroid/graphics/Typeface$CustomFallbackBuilder;
 HSPLandroid/graphics/Typeface;-><init>(J)V
 HSPLandroid/graphics/Typeface;-><init>(JLjava/lang/String;)V
-HSPLandroid/graphics/Typeface;-><init>(JLjava/lang/String;Landroid/graphics/Typeface;)V+]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry;
+HSPLandroid/graphics/Typeface;-><init>(JLjava/lang/String;Landroid/graphics/Typeface;)V
 HSPLandroid/graphics/Typeface;->create(Landroid/graphics/Typeface;I)Landroid/graphics/Typeface;
 HSPLandroid/graphics/Typeface;->create(Ljava/lang/String;I)Landroid/graphics/Typeface;
 HSPLandroid/graphics/Typeface;->createFromAsset(Landroid/content/res/AssetManager;Ljava/lang/String;)Landroid/graphics/Typeface;
@@ -7393,7 +7413,7 @@
 HSPLandroid/graphics/drawable/Drawable;->updateBlendModeFilter(Landroid/graphics/BlendModeColorFilter;Landroid/content/res/ColorStateList;Landroid/graphics/BlendMode;)Landroid/graphics/BlendModeColorFilter;
 HSPLandroid/graphics/drawable/Drawable;->updateTintFilter(Landroid/graphics/PorterDuffColorFilter;Landroid/content/res/ColorStateList;Landroid/graphics/PorterDuff$Mode;)Landroid/graphics/PorterDuffColorFilter;
 HSPLandroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;-><init>()V
-SPLandroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;-><init>(Landroid/graphics/drawable/DrawableContainer-IA;)V
+HSPLandroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;-><init>(Landroid/graphics/drawable/DrawableContainer-IA;)V
 HSPLandroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V
 HSPLandroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;->unwrap()Landroid/graphics/drawable/Drawable$Callback;
 HSPLandroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;->wrap(Landroid/graphics/drawable/Drawable$Callback;)Landroid/graphics/drawable/DrawableContainer$BlockInvalidateCallback;
@@ -8104,9 +8124,9 @@
 HSPLandroid/graphics/fonts/Font;->getAxes()[Landroid/graphics/fonts/FontVariationAxis;
 HSPLandroid/graphics/fonts/Font;->getNativePtr()J
 HSPLandroid/graphics/fonts/Font;->getStyle()Landroid/graphics/fonts/FontStyle;
-SPLandroid/graphics/fonts/FontFamily$Builder$NoImagePreloadHolder;->-$$Nest$sfgetsFamilyRegistry()Llibcore/util/NativeAllocationRegistry;
-SPLandroid/graphics/fonts/FontFamily$Builder$NoImagePreloadHolder;-><clinit>()V
-SPLandroid/graphics/fonts/FontFamily$Builder;->-$$Nest$smnGetReleaseNativeFamily()J
+HSPLandroid/graphics/fonts/FontFamily$Builder$NoImagePreloadHolder;->-$$Nest$sfgetsFamilyRegistry()Llibcore/util/NativeAllocationRegistry;
+HSPLandroid/graphics/fonts/FontFamily$Builder$NoImagePreloadHolder;-><clinit>()V
+HSPLandroid/graphics/fonts/FontFamily$Builder;->-$$Nest$smnGetReleaseNativeFamily()J
 HSPLandroid/graphics/fonts/FontFamily$Builder;-><init>(Landroid/graphics/fonts/Font;)V
 HSPLandroid/graphics/fonts/FontFamily$Builder;->build()Landroid/graphics/fonts/FontFamily;
 HSPLandroid/graphics/fonts/FontFamily$Builder;->build(Ljava/lang/String;IZZI)Landroid/graphics/fonts/FontFamily;
@@ -8123,7 +8143,6 @@
 HSPLandroid/graphics/fonts/FontVariationAxis;->fromFontVariationSettings(Ljava/lang/String;)[Landroid/graphics/fonts/FontVariationAxis;
 HSPLandroid/graphics/fonts/FontVariationAxis;->isValidTag(Ljava/lang/String;)Z
 HSPLandroid/graphics/fonts/FontVariationAxis;->makeTag(Ljava/lang/String;)I
-HSPLandroid/graphics/fonts/FontVariationAxis;->toString()Ljava/lang/String;
 HSPLandroid/graphics/fonts/SystemFonts;->mmap(Ljava/lang/String;)Ljava/nio/ByteBuffer;
 HSPLandroid/graphics/text/LineBreakConfig$Builder;-><init>()V
 HSPLandroid/graphics/text/LineBreakConfig$Builder;->build()Landroid/graphics/text/LineBreakConfig;
@@ -8172,7 +8191,7 @@
 HSPLandroid/hardware/CameraStatus$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
 HSPLandroid/hardware/CameraStatus$1;->newArray(I)[Landroid/hardware/CameraStatus;
 HSPLandroid/hardware/CameraStatus$1;->newArray(I)[Ljava/lang/Object;
-SPLandroid/hardware/DataSpace;->pack(III)I
+HSPLandroid/hardware/DataSpace;->pack(III)I
 HSPLandroid/hardware/GeomagneticField$LegendreTable;-><init>(IF)V
 HSPLandroid/hardware/GeomagneticField;-><init>(FFFJ)V
 HSPLandroid/hardware/GeomagneticField;->computeGeocentricCoordinates(FFF)V
@@ -8224,8 +8243,8 @@
 HSPLandroid/hardware/SyncFence;-><init>(J)V+]Llibcore/util/NativeAllocationRegistry;Llibcore/util/NativeAllocationRegistry;
 HSPLandroid/hardware/SyncFence;-><init>(Landroid/hardware/SyncFence;)V
 HSPLandroid/hardware/SyncFence;->await(J)Z
-SPLandroid/hardware/SyncFence;->awaitForever()Z
-HSPLandroid/hardware/SyncFence;->close()V
+HSPLandroid/hardware/SyncFence;->awaitForever()Z
+HSPLandroid/hardware/SyncFence;->close()V+]Ljava/lang/Runnable;Llibcore/util/NativeAllocationRegistry$CleanerRunner;
 HSPLandroid/hardware/SyncFence;->getSignalTime()J
 HSPLandroid/hardware/SystemSensorManager$BaseEventQueue;-><init>(Landroid/os/Looper;Landroid/hardware/SystemSensorManager;ILjava/lang/String;)V
 HSPLandroid/hardware/SystemSensorManager$BaseEventQueue;->addSensor(Landroid/hardware/Sensor;II)Z
@@ -8246,7 +8265,7 @@
 HSPLandroid/hardware/SystemSensorManager$TriggerEventQueue;->dispatchSensorEvent(I[FIJ)V
 HSPLandroid/hardware/SystemSensorManager$TriggerEventQueue;->removeSensorEvent(Landroid/hardware/Sensor;)V
 HSPLandroid/hardware/SystemSensorManager;->-$$Nest$fgetmHandleToSensor(Landroid/hardware/SystemSensorManager;)Ljava/util/HashMap;
-SPLandroid/hardware/SystemSensorManager;-><clinit>()V
+HSPLandroid/hardware/SystemSensorManager;-><clinit>()V
 HSPLandroid/hardware/SystemSensorManager;-><init>(Landroid/content/Context;Landroid/os/Looper;)V
 HSPLandroid/hardware/SystemSensorManager;->cancelTriggerSensorImpl(Landroid/hardware/TriggerEventListener;Landroid/hardware/Sensor;Z)Z
 HSPLandroid/hardware/SystemSensorManager;->getFullSensorList()Ljava/util/List;
@@ -8356,30 +8375,32 @@
 HSPLandroid/hardware/camera2/utils/TypeReference;->getRawType(Ljava/lang/reflect/Type;)Ljava/lang/Class;
 HSPLandroid/hardware/camera2/utils/TypeReference;->getType()Ljava/lang/reflect/Type;
 HSPLandroid/hardware/camera2/utils/TypeReference;->hashCode()I
-SPLandroid/hardware/devicestate/DeviceState$Configuration;-><init>(ILjava/lang/String;Landroid/util/ArraySet;Landroid/util/ArraySet;)V
-SPLandroid/hardware/devicestate/DeviceState$Configuration;-><init>(ILjava/lang/String;Landroid/util/ArraySet;Landroid/util/ArraySet;Landroid/hardware/devicestate/DeviceState-IA;)V
-SPLandroid/hardware/devicestate/DeviceState$Configuration;->getIdentifier()I
-SPLandroid/hardware/devicestate/DeviceState;-><init>(Landroid/hardware/devicestate/DeviceState$Configuration;)V
-SPLandroid/hardware/devicestate/DeviceState;->getIdentifier()I
+HSPLandroid/hardware/devicestate/DeviceState$Configuration;-><init>(ILjava/lang/String;Landroid/util/ArraySet;Landroid/util/ArraySet;)V
+HSPLandroid/hardware/devicestate/DeviceState$Configuration;-><init>(ILjava/lang/String;Landroid/util/ArraySet;Landroid/util/ArraySet;Landroid/hardware/devicestate/DeviceState-IA;)V
+HSPLandroid/hardware/devicestate/DeviceState$Configuration;->getIdentifier()I
+HSPLandroid/hardware/devicestate/DeviceState;-><init>(Landroid/hardware/devicestate/DeviceState$Configuration;)V
+HSPLandroid/hardware/devicestate/DeviceState;->getIdentifier()I
 HSPLandroid/hardware/devicestate/DeviceStateInfo$1;-><init>()V
 HSPLandroid/hardware/devicestate/DeviceStateInfo$1;->createFromParcel(Landroid/os/Parcel;)Landroid/hardware/devicestate/DeviceStateInfo;
 HSPLandroid/hardware/devicestate/DeviceStateInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
 HSPLandroid/hardware/devicestate/DeviceStateInfo;-><clinit>()V
 HSPLandroid/hardware/devicestate/DeviceStateManager;-><init>()V
+SPLandroid/hardware/devicestate/DeviceStateManager;->getSupportedDeviceStates()Ljava/util/List;
 HSPLandroid/hardware/devicestate/DeviceStateManager;->registerCallback(Ljava/util/concurrent/Executor;Landroid/hardware/devicestate/DeviceStateManager$DeviceStateCallback;)V
 HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrapper$$ExternalSyntheticLambda0;->run()V
 HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrapper$$ExternalSyntheticLambda1;->run()V
 HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrapper$$ExternalSyntheticLambda2;->run()V
 HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateCallbackWrapper;-><init>(Landroid/hardware/devicestate/DeviceStateManager$DeviceStateCallback;Ljava/util/concurrent/Executor;)V
 HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateManagerCallback;-><init>(Landroid/hardware/devicestate/DeviceStateManagerGlobal;)V
-SPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateManagerCallback;-><init>(Landroid/hardware/devicestate/DeviceStateManagerGlobal;Landroid/hardware/devicestate/DeviceStateManagerGlobal-IA;)V
+HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateManagerCallback;-><init>(Landroid/hardware/devicestate/DeviceStateManagerGlobal;Landroid/hardware/devicestate/DeviceStateManagerGlobal-IA;)V
 HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateManagerCallback;->onDeviceStateInfoChanged(Landroid/hardware/devicestate/DeviceStateInfo;)V
 HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->-$$Nest$mhandleDeviceStateInfoChanged(Landroid/hardware/devicestate/DeviceStateManagerGlobal;Landroid/hardware/devicestate/DeviceStateInfo;)V
 HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;-><init>(Landroid/hardware/devicestate/IDeviceStateManager;)V
 HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->findCallbackLocked(Landroid/hardware/devicestate/DeviceStateManager$DeviceStateCallback;)I
 HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->getInstance()Landroid/hardware/devicestate/DeviceStateManagerGlobal;
+SPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->getSupportedDeviceStates()Ljava/util/List;
 HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->handleDeviceStateInfoChanged(Landroid/hardware/devicestate/DeviceStateInfo;)V
-SPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->registerCallbackLocked()V
+HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->registerCallbackLocked()V
 HSPLandroid/hardware/devicestate/DeviceStateManagerGlobal;->registerDeviceStateCallback(Landroid/hardware/devicestate/DeviceStateManager$DeviceStateCallback;Ljava/util/concurrent/Executor;)V
 HSPLandroid/hardware/devicestate/IDeviceStateManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V
 HSPLandroid/hardware/devicestate/IDeviceStateManager$Stub$Proxy;->asBinder()Landroid/os/IBinder;
@@ -8435,7 +8456,7 @@
 HSPLandroid/hardware/display/DisplayManager;->registerDisplayListener(Landroid/hardware/display/DisplayManager$DisplayListener;Landroid/os/Handler;)V
 HSPLandroid/hardware/display/DisplayManager;->registerDisplayListener(Landroid/hardware/display/DisplayManager$DisplayListener;Landroid/os/Handler;J)V
 HSPLandroid/hardware/display/DisplayManager;->unregisterDisplayListener(Landroid/hardware/display/DisplayManager$DisplayListener;)V
-SPLandroid/hardware/display/DisplayManagerGlobal$1;-><init>(Landroid/hardware/display/DisplayManagerGlobal;Landroid/app/PropertyInvalidatedCache$Args;Ljava/lang/String;Landroid/app/PropertyInvalidatedCache$QueryHandler;)V
+HSPLandroid/hardware/display/DisplayManagerGlobal$1;-><init>(Landroid/hardware/display/DisplayManagerGlobal;Landroid/app/PropertyInvalidatedCache$Args;Ljava/lang/String;Landroid/app/PropertyInvalidatedCache$QueryHandler;)V
 HSPLandroid/hardware/display/DisplayManagerGlobal$1;->recompute(Ljava/lang/Integer;)Landroid/view/DisplayInfo;
 HSPLandroid/hardware/display/DisplayManagerGlobal$1;->recompute(Ljava/lang/Object;)Ljava/lang/Object;
 HSPLandroid/hardware/display/DisplayManagerGlobal$DisplayListenerDelegate$$ExternalSyntheticLambda0;-><init>(Landroid/hardware/display/DisplayManagerGlobal$DisplayListenerDelegate;JIILandroid/view/DisplayInfo;Z)V
@@ -8444,7 +8465,7 @@
 HSPLandroid/hardware/display/DisplayManagerGlobal$DisplayListenerDelegate;->handleDisplayEventInner(IILandroid/view/DisplayInfo;Z)V
 HSPLandroid/hardware/display/DisplayManagerGlobal$DisplayListenerDelegate;->sendDisplayEvent(IILandroid/view/DisplayInfo;Z)V+]Ljava/util/concurrent/Executor;missing_types
 HSPLandroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback;-><init>(Landroid/hardware/display/DisplayManagerGlobal;)V
-SPLandroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback;-><init>(Landroid/hardware/display/DisplayManagerGlobal;Landroid/hardware/display/DisplayManagerGlobal-IA;)V
+HSPLandroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback;-><init>(Landroid/hardware/display/DisplayManagerGlobal;Landroid/hardware/display/DisplayManagerGlobal-IA;)V
 HSPLandroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback;->onDisplayEvent(II)V
 HSPLandroid/hardware/display/DisplayManagerGlobal;->-$$Nest$fgetmDm(Landroid/hardware/display/DisplayManagerGlobal;)Landroid/hardware/display/IDisplayManager;
 HSPLandroid/hardware/display/DisplayManagerGlobal;-><init>(Landroid/hardware/display/IDisplayManager;)V
@@ -8459,13 +8480,13 @@
 HSPLandroid/hardware/display/DisplayManagerGlobal;->getDisplayInfoLocked(I)Landroid/view/DisplayInfo;
 HSPLandroid/hardware/display/DisplayManagerGlobal;->getInstance()Landroid/hardware/display/DisplayManagerGlobal;
 HSPLandroid/hardware/display/DisplayManagerGlobal;->getLooperForHandler(Landroid/os/Handler;)Landroid/os/Looper;
-SPLandroid/hardware/display/DisplayManagerGlobal;->getOverlaySupport()Landroid/hardware/OverlayProperties;
+HSPLandroid/hardware/display/DisplayManagerGlobal;->getOverlaySupport()Landroid/hardware/OverlayProperties;
 HSPLandroid/hardware/display/DisplayManagerGlobal;->getPreferredWideGamutColorSpace()Landroid/graphics/ColorSpace;
 HSPLandroid/hardware/display/DisplayManagerGlobal;->getStableDisplaySize()Landroid/graphics/Point;
 HSPLandroid/hardware/display/DisplayManagerGlobal;->getWifiDisplayStatus()Landroid/hardware/display/WifiDisplayStatus;
 HSPLandroid/hardware/display/DisplayManagerGlobal;->handleDisplayEvent(IIZ)V+]Ljava/util/Iterator;Ljava/util/concurrent/CopyOnWriteArrayList$COWIterator;]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList;
 HSPLandroid/hardware/display/DisplayManagerGlobal;->initExtraLogging()Z
-SPLandroid/hardware/display/DisplayManagerGlobal;->mapPrivateEventFlags(J)J
+HSPLandroid/hardware/display/DisplayManagerGlobal;->mapPrivateEventFlags(J)J
 HSPLandroid/hardware/display/DisplayManagerGlobal;->mapPublicEventFlags(J)J
 HSPLandroid/hardware/display/DisplayManagerGlobal;->maybeLogAllDisplayListeners()V
 HSPLandroid/hardware/display/DisplayManagerGlobal;->registerCallbackIfNeededLocked()V
@@ -8738,7 +8759,7 @@
 HSPLandroid/icu/impl/ICUBinary$DatPackageReader;->getNameOffset(Ljava/nio/ByteBuffer;I)I
 HSPLandroid/icu/impl/ICUBinary$PackageDataFile;->addBaseNamesInFolder(Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;)V
 HSPLandroid/icu/impl/ICUBinary$PackageDataFile;->getData(Ljava/lang/String;)Ljava/nio/ByteBuffer;
-SPLandroid/icu/impl/ICUBinary$SingleDataFile;->getData(Ljava/lang/String;)Ljava/nio/ByteBuffer;
+HSPLandroid/icu/impl/ICUBinary$SingleDataFile;->getData(Ljava/lang/String;)Ljava/nio/ByteBuffer;
 HSPLandroid/icu/impl/ICUBinary;->addBaseNamesInFileFolder(Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;)V
 HSPLandroid/icu/impl/ICUBinary;->compareKeys(Ljava/lang/CharSequence;Ljava/nio/ByteBuffer;I)I
 HSPLandroid/icu/impl/ICUBinary;->compareKeys(Ljava/lang/CharSequence;[BI)I
@@ -9394,8 +9415,6 @@
 HSPLandroid/icu/impl/locale/InternalLocaleBuilder;->setRegion(Ljava/lang/String;)Landroid/icu/impl/locale/InternalLocaleBuilder;
 HSPLandroid/icu/impl/locale/KeyTypeData;->initFromResourceBundle()V
 HSPLandroid/icu/impl/locale/LSR$CachedDecoder$$ExternalSyntheticLambda0;-><init>()V
-HSPLandroid/icu/impl/locale/LSR$CachedDecoder$$ExternalSyntheticLambda0;->apply(Ljava/lang/Object;)Ljava/lang/Object;
-HSPLandroid/icu/impl/locale/LSR$CachedDecoder;->$r8$lambda$2Vo5iUPXBd-yMfh29hR8_HJ2Bj4(I)Ljava/lang/String;
 HSPLandroid/icu/impl/locale/LSR$CachedDecoder;->decode(I)[Ljava/lang/String;
 HSPLandroid/icu/impl/locale/LSR$CachedDecoder;->toLanguage(I)Ljava/lang/String;
 HSPLandroid/icu/impl/locale/LSR;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
@@ -9722,11 +9741,11 @@
 HSPLandroid/icu/impl/number/range/StandardPluralRanges;->getPluralRangesData(Ljava/lang/String;Landroid/icu/impl/number/range/StandardPluralRanges;)V
 HSPLandroid/icu/impl/number/range/StandardPluralRanges;->getSetForLocale(Landroid/icu/util/ULocale;)Ljava/lang/String;
 HSPLandroid/icu/impl/number/range/StandardPluralRanges;->setCapacity(I)V
-HSPLandroid/icu/lang/CharSequences;->codePoints(Ljava/lang/CharSequence;)[I
 HSPLandroid/icu/lang/UCharacter;->codePointAt(Ljava/lang/CharSequence;I)I
 HSPLandroid/icu/lang/UCharacter;->digit(I)I
 HSPLandroid/icu/lang/UCharacter;->foldCase(II)I
 HSPLandroid/icu/lang/UCharacter;->foldCase(IZ)I
+HSPLandroid/icu/lang/UCharacter;->getAge(I)Landroid/icu/util/VersionInfo;
 HSPLandroid/icu/lang/UCharacter;->getPropertyValueEnumNoThrow(ILjava/lang/CharSequence;)I
 HSPLandroid/icu/lang/UCharacter;->getType(I)I
 HSPLandroid/icu/lang/UCharacter;->isDigit(I)Z
@@ -10756,6 +10775,8 @@
 HSPLandroid/icu/util/VersionInfo;->getMajor()I
 HSPLandroid/internal/modules/utils/build/SdkLevel;->isAtLeastPreReleaseCodename(Ljava/lang/String;)Z
 HSPLandroid/internal/modules/utils/build/SdkLevel;->isAtLeastV()Z
+SPLandroid/location/ILocationManager$Stub;-><clinit>()V
+HSPLandroid/location/ILocationManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/location/ILocationManager;+]Landroid/os/IBinder;Landroid/os/BinderProxy;
 HSPLandroid/location/Location$$ExternalSyntheticLambda0;->get()Ljava/lang/Object;
 HSPLandroid/location/Location$1;->createFromParcel(Landroid/os/Parcel;)Landroid/location/Location;
 HSPLandroid/location/Location$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
@@ -10800,6 +10821,10 @@
 HSPLandroid/location/Location;->setVerticalAccuracyMeters(F)V
 HSPLandroid/location/Location;->toString()Ljava/lang/String;
 HSPLandroid/location/Location;->writeToParcel(Landroid/os/Parcel;I)V
+SPLandroid/location/LocationManager$LocationEnabledCache;-><init>(I)V
+SPLandroid/location/LocationManager;->-$$Nest$sfgetCACHE_KEY_LOCATION_ENABLED_PROPERTY()Ljava/lang/String;
+SPLandroid/location/LocationManager;-><clinit>()V
+HSPLandroid/location/LocationManager;-><init>(Landroid/content/Context;Landroid/location/ILocationManager;)V
 HSPLandroid/media/AudioAttributes$1;->createFromParcel(Landroid/os/Parcel;)Landroid/media/AudioAttributes;
 HSPLandroid/media/AudioAttributes$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
 HSPLandroid/media/AudioAttributes$Builder;-><init>()V
@@ -11598,7 +11623,7 @@
 HSPLandroid/multiuser/FeatureFlagsImpl;->cacheUserSerialNumberReadOnly()Z
 HSPLandroid/multiuser/FeatureFlagsImpl;->cachingDevelopmentImprovements()Z
 HSPLandroid/multiuser/FeatureFlagsImpl;->enableSystemUserOnlyForServicesAndProviders()Z
-SPLandroid/multiuser/Flags;->cachingDevelopmentImprovements()Z
+HSPLandroid/multiuser/Flags;->cachingDevelopmentImprovements()Z
 HSPLandroid/multiuser/Flags;->enableSystemUserOnlyForServicesAndProviders()Z
 HSPLandroid/net/Credentials;-><init>(III)V
 HSPLandroid/net/Credentials;->getPid()I
@@ -11774,7 +11799,7 @@
 HSPLandroid/net/Uri$PathPart;->getEncoded()Ljava/lang/String;
 HSPLandroid/net/Uri$PathPart;->getPathSegments()Landroid/net/Uri$PathSegments;
 HSPLandroid/net/Uri$PathPart;->makeAbsolute(Landroid/net/Uri$PathPart;)Landroid/net/Uri$PathPart;
-SPLandroid/net/Uri$PathSegments;-><clinit>()V
+HSPLandroid/net/Uri$PathSegments;-><clinit>()V
 HSPLandroid/net/Uri$PathSegments;-><init>([Ljava/lang/String;I)V
 HSPLandroid/net/Uri$PathSegments;->get(I)Ljava/lang/Object;
 HSPLandroid/net/Uri$PathSegments;->get(I)Ljava/lang/String;
@@ -11782,8 +11807,8 @@
 HSPLandroid/net/Uri$PathSegmentsBuilder;->add(Ljava/lang/String;)V
 HSPLandroid/net/Uri$PathSegmentsBuilder;->build()Landroid/net/Uri$PathSegments;
 HSPLandroid/net/Uri$StringUri;->-$$Nest$mgetFragmentPart(Landroid/net/Uri$StringUri;)Landroid/net/Uri$Part;
-SPLandroid/net/Uri$StringUri;->-$$Nest$mgetSsp(Landroid/net/Uri$StringUri;)Landroid/net/Uri$Part;
-SPLandroid/net/Uri$StringUri;->-$$Nest$mparseScheme(Landroid/net/Uri$StringUri;)Ljava/lang/String;
+HSPLandroid/net/Uri$StringUri;->-$$Nest$mgetSsp(Landroid/net/Uri$StringUri;)Landroid/net/Uri$Part;
+HSPLandroid/net/Uri$StringUri;->-$$Nest$mparseScheme(Landroid/net/Uri$StringUri;)Ljava/lang/String;
 HSPLandroid/net/Uri$StringUri;-><init>(Ljava/lang/String;)V
 HSPLandroid/net/Uri$StringUri;-><init>(Ljava/lang/String;Landroid/net/Uri-IA;)V
 HSPLandroid/net/Uri$StringUri;->buildUpon()Landroid/net/Uri$Builder;
@@ -11921,7 +11946,6 @@
 HSPLandroid/os/BaseBundle;->getByteArray(Ljava/lang/String;)[B
 HSPLandroid/os/BaseBundle;->getCharSequence(Ljava/lang/String;)Ljava/lang/CharSequence;
 HSPLandroid/os/BaseBundle;->getCharSequenceArray(Ljava/lang/String;)[Ljava/lang/CharSequence;
-HSPLandroid/os/BaseBundle;->getClassLoader()Ljava/lang/ClassLoader;
 HSPLandroid/os/BaseBundle;->getFloat(Ljava/lang/String;F)F
 HSPLandroid/os/BaseBundle;->getInt(Ljava/lang/String;)I
 HSPLandroid/os/BaseBundle;->getInt(Ljava/lang/String;I)I
@@ -12081,7 +12105,6 @@
 HSPLandroid/os/Bundle;->getBundle(Ljava/lang/String;)Landroid/os/Bundle;
 HSPLandroid/os/Bundle;->getByteArray(Ljava/lang/String;)[B
 HSPLandroid/os/Bundle;->getCharSequence(Ljava/lang/String;)Ljava/lang/CharSequence;
-HSPLandroid/os/Bundle;->getClassLoader()Ljava/lang/ClassLoader;
 HSPLandroid/os/Bundle;->getFloat(Ljava/lang/String;)F
 HSPLandroid/os/Bundle;->getFloat(Ljava/lang/String;F)F
 HSPLandroid/os/Bundle;->getIntegerArrayList(Ljava/lang/String;)Ljava/util/ArrayList;
@@ -12293,7 +12316,7 @@
 HSPLandroid/os/GraphicsEnvironment;->getInstance()Landroid/os/GraphicsEnvironment;
 HSPLandroid/os/GraphicsEnvironment;->getPackageIndex(Ljava/lang/String;Ljava/util/List;)I
 HSPLandroid/os/GraphicsEnvironment;->getVulkanVersion(Landroid/content/pm/PackageManager;)I
-SPLandroid/os/GraphicsEnvironment;->queryAngleChoice(Landroid/content/Context;Landroid/os/Bundle;Ljava/lang/String;)Ljava/lang/String;
+HSPLandroid/os/GraphicsEnvironment;->queryAngleChoice(Landroid/content/Context;Landroid/os/Bundle;Ljava/lang/String;)Ljava/lang/String;
 HSPLandroid/os/GraphicsEnvironment;->setLayerPaths(Ljava/lang/ClassLoader;Ljava/lang/String;Ljava/lang/String;)V
 HSPLandroid/os/GraphicsEnvironment;->setup(Landroid/content/Context;Landroid/os/Bundle;)V
 HSPLandroid/os/GraphicsEnvironment;->setupAngle(Landroid/content/Context;Landroid/os/Bundle;Landroid/content/pm/PackageManager;Ljava/lang/String;)Z
@@ -12382,7 +12405,7 @@
 HSPLandroid/os/IBatteryPropertiesRegistrar$Stub$Proxy;->asBinder()Landroid/os/IBinder;
 HSPLandroid/os/IBatteryPropertiesRegistrar$Stub$Proxy;->getProperty(ILandroid/os/BatteryProperty;)I
 HSPLandroid/os/IBatteryPropertiesRegistrar$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/IBatteryPropertiesRegistrar;
-HSPLandroid/os/IBinder$DeathRecipient;->binderDied(Landroid/os/IBinder;)V
+HSPLandroid/os/IBinder$DeathRecipient;->binderDied(Landroid/os/IBinder;)V+]Landroid/os/IBinder$DeathRecipient;Landroid/os/RemoteCallbackList$Interface;
 HSPLandroid/os/IBinder;->getSuggestedMaxIpcSizeBytes()I
 HSPLandroid/os/ICancellationSignal$Stub$Proxy;-><init>(Landroid/os/IBinder;)V
 HSPLandroid/os/ICancellationSignal$Stub$Proxy;->asBinder()Landroid/os/IBinder;
@@ -12433,7 +12456,8 @@
 HSPLandroid/os/IRemoteCallback$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
 HSPLandroid/os/IServiceManager$Stub$Proxy;->addService(Ljava/lang/String;Landroid/os/IBinder;ZI)V
 HSPLandroid/os/IServiceManager$Stub$Proxy;->asBinder()Landroid/os/IBinder;
-HSPLandroid/os/IServiceManager$Stub$Proxy;->checkService(Ljava/lang/String;)Landroid/os/Service;+]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/IServiceManager$Stub$Proxy;Landroid/os/IServiceManager$Stub$Proxy;
+HSPLandroid/os/IServiceManager$Stub$Proxy;->checkService(Ljava/lang/String;)Landroid/os/IBinder;
+HSPLandroid/os/IServiceManager$Stub$Proxy;->checkService2(Ljava/lang/String;)Landroid/os/Service;+]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/os/IServiceManager$Stub$Proxy;Landroid/os/IServiceManager$Stub$Proxy;
 HSPLandroid/os/IServiceManager$Stub$Proxy;->isDeclared(Ljava/lang/String;)Z
 HSPLandroid/os/ISystemConfig$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/ISystemConfig;
 HSPLandroid/os/IThermalEventListener$Stub;-><init>()V
@@ -12473,13 +12497,13 @@
 HSPLandroid/os/IVibratorManagerService$Stub$Proxy;-><init>(Landroid/os/IBinder;)V
 HSPLandroid/os/IVibratorManagerService$Stub$Proxy;->getVibratorIds()[I
 HSPLandroid/os/IVibratorManagerService$Stub;->asInterface(Landroid/os/IBinder;)Landroid/os/IVibratorManagerService;
-SPLandroid/os/IpcDataCache$1;-><init>(Landroid/os/IpcDataCache$RemoteCall;)V
+HSPLandroid/os/IpcDataCache$1;-><init>(Landroid/os/IpcDataCache$RemoteCall;)V
 HSPLandroid/os/IpcDataCache$1;->apply(Ljava/lang/Object;)Ljava/lang/Object;+]Landroid/os/IpcDataCache$RemoteCall;megamorphic_types
-SPLandroid/os/IpcDataCache$Config;-><init>(ILjava/lang/String;Ljava/lang/String;)V
+HSPLandroid/os/IpcDataCache$Config;-><init>(ILjava/lang/String;Ljava/lang/String;)V
 HSPLandroid/os/IpcDataCache$Config;-><init>(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
-SPLandroid/os/IpcDataCache$Config;-><init>(Landroid/app/PropertyInvalidatedCache$Args;Ljava/lang/String;)V
+HSPLandroid/os/IpcDataCache$Config;-><init>(Landroid/app/PropertyInvalidatedCache$Args;Ljava/lang/String;)V
 HSPLandroid/os/IpcDataCache$Config;-><init>(Landroid/os/IpcDataCache$Config;Ljava/lang/String;Ljava/lang/String;)V
-SPLandroid/os/IpcDataCache$Config;->cacheNulls(Z)Landroid/os/IpcDataCache$Config;
+HSPLandroid/os/IpcDataCache$Config;->cacheNulls(Z)Landroid/os/IpcDataCache$Config;
 HSPLandroid/os/IpcDataCache$Config;->child(Ljava/lang/String;)Landroid/os/IpcDataCache$Config;
 HSPLandroid/os/IpcDataCache$Config;->registerChild(Ljava/lang/String;)V
 HSPLandroid/os/IpcDataCache$QueryHandler;-><init>()V
@@ -12489,6 +12513,7 @@
 HSPLandroid/os/IpcDataCache;-><init>(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/IpcDataCache$QueryHandler;)V
 HSPLandroid/os/IpcDataCache;-><init>(Landroid/os/IpcDataCache$Config;Landroid/os/IpcDataCache$QueryHandler;)V
 HSPLandroid/os/IpcDataCache;-><init>(Landroid/os/IpcDataCache$Config;Landroid/os/IpcDataCache$RemoteCall;)V
+HSPLandroid/os/IpcDataCache;->isDisabled()Z
 HSPLandroid/os/IpcDataCache;->query(Ljava/lang/Object;)Ljava/lang/Object;
 HSPLandroid/os/LocaleList$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/LocaleList;
 HSPLandroid/os/LocaleList$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
@@ -12542,6 +12567,7 @@
 HSPLandroid/os/Message;->getData()Landroid/os/Bundle;
 HSPLandroid/os/Message;->getTarget()Landroid/os/Handler;
 HSPLandroid/os/Message;->getWhen()J
+HSPLandroid/os/Message;->isAsynchronous()Z
 HSPLandroid/os/Message;->isInUse()Z
 HSPLandroid/os/Message;->markInUse()V
 HSPLandroid/os/Message;->obtain()Landroid/os/Message;
@@ -12731,7 +12757,7 @@
 HSPLandroid/os/Messenger;->writeToParcel(Landroid/os/Parcel;I)V
 HSPLandroid/os/Parcel$2;-><init>(Landroid/os/Parcel;Ljava/io/InputStream;Ljava/lang/ClassLoader;)V
 HSPLandroid/os/Parcel$2;->resolveClass(Ljava/io/ObjectStreamClass;)Ljava/lang/Class;
-HSPLandroid/os/Parcel$LazyValue;-><init>(Landroid/os/Parcel;IIILandroid/os/Parcel$ClassLoaderProvider;)V
+HSPLandroid/os/Parcel$LazyValue;-><init>(Landroid/os/Parcel;IIILjava/lang/ClassLoader;)V
 HSPLandroid/os/Parcel$LazyValue;->apply(Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Object;
 HSPLandroid/os/Parcel$LazyValue;->apply(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
 HSPLandroid/os/Parcel$LazyValue;->writeToParcel(Landroid/os/Parcel;)V
@@ -12771,7 +12797,6 @@
 HSPLandroid/os/Parcel;->finalize()V
 HSPLandroid/os/Parcel;->freeBuffer()V
 HSPLandroid/os/Parcel;->getClassCookie(Ljava/lang/Class;)Ljava/lang/Object;
-HSPLandroid/os/Parcel;->getClassLoader(Landroid/os/Parcel$ClassLoaderProvider;)Ljava/lang/ClassLoader;+]Landroid/os/Parcel$ClassLoaderProvider;Landroid/os/Bundle;,Landroid/os/PersistableBundle;
 HSPLandroid/os/Parcel;->getExceptionCode(Ljava/lang/Throwable;)I
 HSPLandroid/os/Parcel;->getValueType(Ljava/lang/Object;)I
 HSPLandroid/os/Parcel;->hasFileDescriptors()Z
@@ -12789,7 +12814,9 @@
 HSPLandroid/os/Parcel;->readArrayList(Ljava/lang/ClassLoader;)Ljava/util/ArrayList;
 HSPLandroid/os/Parcel;->readArrayList(Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/util/ArrayList;
 HSPLandroid/os/Parcel;->readArrayListInternal(Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/util/ArrayList;
-HSPLandroid/os/Parcel;->readArrayMap(Landroid/util/ArrayMap;IZZLandroid/os/Parcel$ClassLoaderProvider;[I)V
+HSPLandroid/os/Parcel;->readArrayMap(Landroid/util/ArrayMap;IZZLjava/lang/ClassLoader;[I)V
+HSPLandroid/os/Parcel;->readArrayMap(Landroid/util/ArrayMap;Ljava/lang/ClassLoader;)V
+HSPLandroid/os/Parcel;->readArrayMapInternal(Landroid/util/ArrayMap;ILjava/lang/ClassLoader;)V
 HSPLandroid/os/Parcel;->readArraySet(Ljava/lang/ClassLoader;)Landroid/util/ArraySet;
 HSPLandroid/os/Parcel;->readBinderList(Ljava/util/List;)V
 HSPLandroid/os/Parcel;->readBlob()[B
@@ -12812,7 +12839,7 @@
 HSPLandroid/os/Parcel;->readHashMapInternal(Ljava/lang/ClassLoader;Ljava/lang/Class;Ljava/lang/Class;)Ljava/util/HashMap;
 HSPLandroid/os/Parcel;->readInt()I
 HSPLandroid/os/Parcel;->readIntArray([I)V
-HSPLandroid/os/Parcel;->readLazyValue(Landroid/os/Parcel$ClassLoaderProvider;)Ljava/lang/Object;
+HSPLandroid/os/Parcel;->readLazyValue(Ljava/lang/ClassLoader;)Ljava/lang/Object;
 HSPLandroid/os/Parcel;->readList(Ljava/util/List;Ljava/lang/ClassLoader;)V
 HSPLandroid/os/Parcel;->readList(Ljava/util/List;Ljava/lang/ClassLoader;Ljava/lang/Class;)V
 HSPLandroid/os/Parcel;->readListInternal(Ljava/util/List;ILjava/lang/ClassLoader;)V
@@ -13118,26 +13145,24 @@
 HSPLandroid/os/ServiceManager;->rawGetService(Ljava/lang/String;)Landroid/os/IBinder;
 HSPLandroid/os/ServiceManager;->waitForDeclaredService(Ljava/lang/String;)Landroid/os/IBinder;
 HSPLandroid/os/ServiceManagerProxy;->addService(Ljava/lang/String;Landroid/os/IBinder;ZI)V
-HSPLandroid/os/ServiceManagerProxy;->checkService(Ljava/lang/String;)Landroid/os/Service;+]Landroid/os/IServiceManager;Landroid/os/IServiceManager$Stub$Proxy;
+HSPLandroid/os/ServiceManagerProxy;->checkService2(Ljava/lang/String;)Landroid/os/Service;+]Landroid/os/IServiceManager;Landroid/os/IServiceManager$Stub$Proxy;
 HSPLandroid/os/ServiceManagerProxy;->getService(Ljava/lang/String;)Landroid/os/IBinder;
 HSPLandroid/os/ServiceManagerProxy;->getService2(Ljava/lang/String;)Landroid/os/Service;+]Landroid/os/ServiceManagerProxy;Landroid/os/ServiceManagerProxy;
 HSPLandroid/os/ServiceManagerProxy;->isDeclared(Ljava/lang/String;)Z
 HSPLandroid/os/ServiceSpecificException;-><init>(ILjava/lang/String;)V
-SPLandroid/os/ServiceWithMetadata$1;-><init>()V
+HSPLandroid/os/ServiceWithMetadata$1;-><init>()V
 HSPLandroid/os/ServiceWithMetadata$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/ServiceWithMetadata;
 HSPLandroid/os/ServiceWithMetadata$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;+]Landroid/os/ServiceWithMetadata$1;Landroid/os/ServiceWithMetadata$1;
-SPLandroid/os/ServiceWithMetadata;-><clinit>()V
+HSPLandroid/os/ServiceWithMetadata;-><clinit>()V
 HSPLandroid/os/ServiceWithMetadata;-><init>()V
 HSPLandroid/os/ServiceWithMetadata;->readFromParcel(Landroid/os/Parcel;)V
 HSPLandroid/os/SharedMemory$1;->createFromParcel(Landroid/os/Parcel;)Landroid/os/SharedMemory;
 HSPLandroid/os/SharedMemory$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
-HSPLandroid/os/SharedMemory$Closer;-><init>(Ljava/io/FileDescriptor;Landroid/os/SharedMemory$MemoryRegistration;)V
-SPLandroid/os/SharedMemory$Closer;-><init>(Ljava/io/FileDescriptor;Landroid/os/SharedMemory$MemoryRegistration;Landroid/os/SharedMemory-IA;)V
 HSPLandroid/os/SharedMemory$MemoryRegistration;-><init>(I)V
-SPLandroid/os/SharedMemory$MemoryRegistration;-><init>(ILandroid/os/SharedMemory-IA;)V
+HSPLandroid/os/SharedMemory$MemoryRegistration;-><init>(ILandroid/os/SharedMemory-IA;)V
 HSPLandroid/os/SharedMemory$MemoryRegistration;->acquire()Landroid/os/SharedMemory$MemoryRegistration;
 HSPLandroid/os/SharedMemory$Unmapper;-><init>(JILandroid/os/SharedMemory$MemoryRegistration;)V
-SPLandroid/os/SharedMemory$Unmapper;-><init>(JILandroid/os/SharedMemory$MemoryRegistration;Landroid/os/SharedMemory-IA;)V
+HSPLandroid/os/SharedMemory$Unmapper;-><init>(JILandroid/os/SharedMemory$MemoryRegistration;Landroid/os/SharedMemory-IA;)V
 HSPLandroid/os/SharedMemory;-><init>(Ljava/io/FileDescriptor;)V
 HSPLandroid/os/SharedMemory;-><init>(Ljava/io/FileDescriptor;Landroid/os/SharedMemory-IA;)V
 HSPLandroid/os/SharedMemory;->checkOpen()V
@@ -13188,7 +13213,7 @@
 HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy;->setThreadPolicyMask(I)V
 HSPLandroid/os/StrictMode$AndroidBlockGuardPolicy;->startHandlingViolationException(Landroid/os/strictmode/Violation;)V
 HSPLandroid/os/StrictMode$AndroidCloseGuardReporter;-><init>()V
-SPLandroid/os/StrictMode$AndroidCloseGuardReporter;-><init>(Landroid/os/StrictMode-IA;)V
+HSPLandroid/os/StrictMode$AndroidCloseGuardReporter;-><init>(Landroid/os/StrictMode-IA;)V
 HSPLandroid/os/StrictMode$AndroidCloseGuardReporter;->report(Ljava/lang/String;)V
 HSPLandroid/os/StrictMode$AndroidCloseGuardReporter;->report(Ljava/lang/String;Ljava/lang/Throwable;)V
 HSPLandroid/os/StrictMode$InstanceTracker;-><init>(Ljava/lang/Object;)V
@@ -13249,6 +13274,7 @@
 HSPLandroid/os/StrictMode$VmPolicy$Builder;->permitActivityLeaks()Landroid/os/StrictMode$VmPolicy$Builder;
 HSPLandroid/os/StrictMode$VmPolicy$Builder;->permitUnsafeIntentLaunch()Landroid/os/StrictMode$VmPolicy$Builder;
 HSPLandroid/os/StrictMode$VmPolicy;-><init>(ILjava/util/HashMap;Landroid/os/StrictMode$OnVmViolationListener;Ljava/util/concurrent/Executor;)V
+SPLandroid/os/StrictMode$VmPolicy;-><init>(ILjava/util/HashMap;Landroid/os/StrictMode$OnVmViolationListener;Ljava/util/concurrent/Executor;Landroid/os/StrictMode-IA;)V
 HSPLandroid/os/StrictMode;->-$$Nest$sfgetEMPTY_CLASS_LIMIT_MAP()Ljava/util/HashMap;
 HSPLandroid/os/StrictMode;->-$$Nest$sfgetLOGCAT_LOGGER()Landroid/os/StrictMode$ViolationLogger;
 HSPLandroid/os/StrictMode;->-$$Nest$sfgetLOG_V()Z
@@ -13307,9 +13333,9 @@
 HSPLandroid/os/StrictMode;->vmUnsafeIntentLaunchEnabled()Z
 HSPLandroid/os/StrictMode;->vmUntaggedSocketEnabled()Z
 HSPLandroid/os/StrictMode;->writeGatheredViolationsToParcel(Landroid/os/Parcel;)V
-SPLandroid/os/SystemClock$2;-><init>(Ljava/time/ZoneId;)V
+HSPLandroid/os/SystemClock$2;-><init>(Ljava/time/ZoneId;)V
 HSPLandroid/os/SystemClock$2;->millis()J
-SPLandroid/os/SystemClock;->elapsedRealtimeClock()Ljava/time/Clock;
+HSPLandroid/os/SystemClock;->elapsedRealtimeClock()Ljava/time/Clock;
 HSPLandroid/os/SystemClock;->sleep(J)V
 HSPLandroid/os/SystemConfigManager;-><init>()V
 HSPLandroid/os/SystemConfigManager;->getDisabledUntilUsedPreinstalledCarrierApps()Ljava/util/Set;
@@ -13396,9 +13422,9 @@
 HSPLandroid/os/UserHandle;->writeToParcel(Landroid/os/Parcel;I)V
 HSPLandroid/os/UserHandle;->writeToParcel(Landroid/os/UserHandle;Landroid/os/Parcel;)V
 HSPLandroid/os/UserManager$$ExternalSyntheticLambda10;-><init>(Landroid/os/IUserManager;)V
-SPLandroid/os/UserManager$$ExternalSyntheticLambda10;->apply(Ljava/lang/Object;)Ljava/lang/Object;
+HSPLandroid/os/UserManager$$ExternalSyntheticLambda10;->apply(Ljava/lang/Object;)Ljava/lang/Object;
 HSPLandroid/os/UserManager$$ExternalSyntheticLambda5;-><init>(Landroid/os/IUserManager;)V
-SPLandroid/os/UserManager$$ExternalSyntheticLambda5;->apply(Ljava/lang/Object;)Ljava/lang/Object;
+HSPLandroid/os/UserManager$$ExternalSyntheticLambda5;->apply(Ljava/lang/Object;)Ljava/lang/Object;
 HSPLandroid/os/UserManager$1;-><init>(Landroid/os/UserManager;ILjava/lang/String;)V
 HSPLandroid/os/UserManager$1;->bypass(Ljava/lang/Integer;)Z
 HSPLandroid/os/UserManager$1;->bypass(Ljava/lang/Object;)Z
@@ -13461,7 +13487,7 @@
 HSPLandroid/os/UserManager;->isUserUnlocked(Landroid/os/UserHandle;)Z
 HSPLandroid/os/UserManager;->isUserUnlockingOrUnlocked(I)Z
 HSPLandroid/os/UserManager;->supportsMultipleUsers()Z
-SPLandroid/os/UserManagerCache;-><clinit>()V
+HSPLandroid/os/UserManagerCache;-><clinit>()V
 HSPLandroid/os/UserManagerCache;-><init>()V
 HSPLandroid/os/UserManagerCache;->isUserUnlocked(Landroid/os/IpcDataCache$RemoteCall;Ljava/lang/Integer;)Ljava/lang/Boolean;+]Landroid/os/IpcDataCache;Landroid/os/IpcDataCache;
 HSPLandroid/os/UserManagerCache;->isUserUnlockingOrUnlocked(Landroid/os/IpcDataCache$RemoteCall;Ljava/lang/Integer;)Ljava/lang/Boolean;+]Landroid/os/IpcDataCache;Landroid/os/IpcDataCache;
@@ -13631,7 +13657,7 @@
 HSPLandroid/permission/PermissionManager$SplitPermissionInfo;->getNewPermissions()Ljava/util/List;
 HSPLandroid/permission/PermissionManager$SplitPermissionInfo;->getSplitPermission()Ljava/lang/String;
 HSPLandroid/permission/PermissionManager$SplitPermissionInfo;->getTargetSdk()I
-SPLandroid/permission/PermissionManager;->-$$Nest$smcheckPackageNamePermissionUncached(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)I
+HSPLandroid/permission/PermissionManager;->-$$Nest$smcheckPackageNamePermissionUncached(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)I
 HSPLandroid/permission/PermissionManager;->-$$Nest$smcheckPermissionUncached(Ljava/lang/String;III)I
 HSPLandroid/permission/PermissionManager;-><clinit>()V
 HSPLandroid/permission/PermissionManager;-><init>(Landroid/content/Context;)V
@@ -13963,7 +13989,7 @@
 HSPLandroid/security/net/config/ApplicationConfig;->isCleartextTrafficPermitted()Z
 HSPLandroid/security/net/config/ApplicationConfig;->isCleartextTrafficPermitted(Ljava/lang/String;)Z
 HSPLandroid/security/net/config/ApplicationConfig;->setDefaultInstance(Landroid/security/net/config/ApplicationConfig;)V
-SPLandroid/security/net/config/CertificatesEntryRef;->disableCT()Z
+HSPLandroid/security/net/config/CertificatesEntryRef;->disableCT()Z
 HSPLandroid/security/net/config/CertificatesEntryRef;->findAllCertificatesByIssuerAndSignature(Ljava/security/cert/X509Certificate;)Ljava/util/Set;
 HSPLandroid/security/net/config/CertificatesEntryRef;->findBySubjectAndPublicKey(Ljava/security/cert/X509Certificate;)Landroid/security/net/config/TrustAnchor;
 HSPLandroid/security/net/config/ConfigNetworkSecurityPolicy;-><init>(Landroid/security/net/config/ApplicationConfig;)V
@@ -14003,14 +14029,14 @@
 HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->addCertificatesEntryRef(Landroid/security/net/config/CertificatesEntryRef;)Landroid/security/net/config/NetworkSecurityConfig$Builder;
 HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->addCertificatesEntryRefs(Ljava/util/Collection;)Landroid/security/net/config/NetworkSecurityConfig$Builder;
 HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->build()Landroid/security/net/config/NetworkSecurityConfig;
-SPLandroid/security/net/config/NetworkSecurityConfig$Builder;->getCertificateTransparencyVerificationRequired()Z
-SPLandroid/security/net/config/NetworkSecurityConfig$Builder;->getCertificatesEntryRefs()Ljava/util/List;
+HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->getCertificateTransparencyVerificationRequired()Z
+HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->getCertificatesEntryRefs()Ljava/util/List;
 HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->getEffectiveCertificatesEntryRefs()Ljava/util/List;
 HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->getEffectiveCleartextTrafficPermitted()Z
 HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->getEffectiveHstsEnforced()Z
 HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->getEffectivePinSet()Landroid/security/net/config/PinSet;
 HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->getParent()Landroid/security/net/config/NetworkSecurityConfig$Builder;
-SPLandroid/security/net/config/NetworkSecurityConfig$Builder;->hasCertificatesEntryRefs()Z
+HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->hasCertificatesEntryRefs()Z
 HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->setCleartextTrafficPermitted(Z)Landroid/security/net/config/NetworkSecurityConfig$Builder;
 HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->setHstsEnforced(Z)Landroid/security/net/config/NetworkSecurityConfig$Builder;
 HSPLandroid/security/net/config/NetworkSecurityConfig$Builder;->setParent(Landroid/security/net/config/NetworkSecurityConfig$Builder;)Landroid/security/net/config/NetworkSecurityConfig$Builder;
@@ -14061,9 +14087,9 @@
 HSPLandroid/security/net/config/XmlConfigSource;->parseTrustAnchors(Landroid/content/res/XmlResourceParser;Z)Ljava/util/Collection;
 HSPLandroid/server/FeatureFlagsImpl;->telemetryApisService()Z
 HSPLandroid/service/appprediction/IPredictionService$Stub;-><init>()V
-SPLandroid/service/autofill/FeatureFlagsImpl;->autofillCredmanIntegration()Z
-SPLandroid/service/autofill/FeatureFlagsImpl;->improveFillDialogAconfig()Z
-SPLandroid/service/autofill/FeatureFlagsImpl;->relayoutFix()Z
+HSPLandroid/service/autofill/FeatureFlagsImpl;->autofillCredmanIntegration()Z
+HSPLandroid/service/autofill/FeatureFlagsImpl;->improveFillDialogAconfig()Z
+HSPLandroid/service/autofill/FeatureFlagsImpl;->relayoutFix()Z
 HSPLandroid/service/dreams/IDreamManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/service/dreams/IDreamManager;
 HSPLandroid/service/media/IMediaBrowserService$Stub;-><init>()V
 HSPLandroid/service/media/IMediaBrowserService$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
@@ -14141,7 +14167,7 @@
 HSPLandroid/service/notification/NotificationRankingUpdate$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
 HSPLandroid/service/notification/NotificationRankingUpdate;-><init>(Landroid/os/Parcel;)V
 HSPLandroid/service/notification/NotificationRankingUpdate;->getRankingMap()Landroid/service/notification/NotificationListenerService$RankingMap;
-SPLandroid/service/notification/RateEstimator;-><init>()V
+HSPLandroid/service/notification/RateEstimator;-><init>()V
 HSPLandroid/service/notification/StatusBarNotification$1;->createFromParcel(Landroid/os/Parcel;)Landroid/service/notification/StatusBarNotification;
 HSPLandroid/service/notification/StatusBarNotification$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
 HSPLandroid/service/notification/StatusBarNotification;-><init>(Landroid/os/Parcel;)V
@@ -14728,7 +14754,7 @@
 HSPLandroid/telephony/SubscriptionInfo;->isOpportunistic()Z
 HSPLandroid/telephony/SubscriptionInfo;->toString()Ljava/lang/String;
 HSPLandroid/telephony/SubscriptionManager$$ExternalSyntheticLambda10;->applyOrThrow(Ljava/lang/Object;)Ljava/lang/Object;
-SPLandroid/telephony/SubscriptionManager$$ExternalSyntheticLambda13;->applyOrThrow(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
+HSPLandroid/telephony/SubscriptionManager$$ExternalSyntheticLambda13;->applyOrThrow(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
 HSPLandroid/telephony/SubscriptionManager$$ExternalSyntheticLambda15;->applyOrThrow(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
 HSPLandroid/telephony/SubscriptionManager$$ExternalSyntheticLambda9;->applyOrThrow(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
 HSPLandroid/telephony/SubscriptionManager$IntegerPropertyInvalidatedCache;->query(Ljava/lang/Integer;)Ljava/lang/Object;
@@ -15006,6 +15032,7 @@
 HSPLandroid/text/BoringLayout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFLandroid/text/BoringLayout$Metrics;Z)V
 HSPLandroid/text/BoringLayout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFLandroid/text/BoringLayout$Metrics;ZLandroid/text/TextUtils$TruncateAt;I)V
 HSPLandroid/text/BoringLayout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFLandroid/text/BoringLayout$Metrics;ZLandroid/text/TextUtils$TruncateAt;IZ)V
+HSPLandroid/text/BoringLayout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFZZILandroid/text/TextUtils$TruncateAt;Landroid/text/BoringLayout$Metrics;ZZLandroid/graphics/Paint$FontMetrics;)V
 HSPLandroid/text/BoringLayout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;Landroid/text/TextDirectionHeuristic;FFZZILandroid/text/TextUtils$TruncateAt;III[I[IILandroid/graphics/text/LineBreakConfig;Landroid/text/BoringLayout$Metrics;ZZLandroid/graphics/Paint$FontMetrics;)V+]Landroid/text/BoringLayout;Landroid/text/BoringLayout;
 HSPLandroid/text/BoringLayout;->draw(Landroid/graphics/Canvas;Landroid/graphics/Path;Landroid/graphics/Paint;I)V
 HSPLandroid/text/BoringLayout;->ellipsized(II)V
@@ -15129,6 +15156,7 @@
 HSPLandroid/text/Layout;->draw(Landroid/graphics/Canvas;Landroid/graphics/Path;Landroid/graphics/Paint;I)V
 HSPLandroid/text/Layout;->draw(Landroid/graphics/Canvas;Ljava/util/List;Ljava/util/List;Landroid/graphics/Path;Landroid/graphics/Paint;I)V
 HSPLandroid/text/Layout;->drawBackground(Landroid/graphics/Canvas;II)V
+HSPLandroid/text/Layout;->drawHighContrastBackground(Landroid/graphics/Canvas;II)V
 HSPLandroid/text/Layout;->drawHighlights(Landroid/graphics/Canvas;Ljava/util/List;Ljava/util/List;Landroid/graphics/Path;Landroid/graphics/Paint;III)V+]Landroid/graphics/Canvas;Landroid/graphics/Canvas;,Landroid/graphics/RecordingCanvas;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLandroid/text/Layout;->drawText(Landroid/graphics/Canvas;II)V
 HSPLandroid/text/Layout;->drawWithoutText(Landroid/graphics/Canvas;Ljava/util/List;Ljava/util/List;Landroid/graphics/Path;Landroid/graphics/Paint;III)V
@@ -15192,7 +15220,7 @@
 HSPLandroid/text/MeasuredParagraph;->breakText(IZF)I
 HSPLandroid/text/MeasuredParagraph;->buildForBidi(Ljava/lang/CharSequence;IILandroid/text/TextDirectionHeuristic;Landroid/text/MeasuredParagraph;)Landroid/text/MeasuredParagraph;
 HSPLandroid/text/MeasuredParagraph;->buildForMeasurement(Landroid/text/TextPaint;Ljava/lang/CharSequence;IILandroid/text/TextDirectionHeuristic;Landroid/text/MeasuredParagraph;)Landroid/text/MeasuredParagraph;
-HSPLandroid/text/MeasuredParagraph;->buildForStaticLayoutInternal(Landroid/text/TextPaint;Landroid/graphics/text/LineBreakConfig;Ljava/lang/CharSequence;IILandroid/text/TextDirectionHeuristic;IZZLandroid/text/MeasuredParagraph;Landroid/text/MeasuredParagraph;Landroid/text/MeasuredParagraph$StyleRunCallback;)Landroid/text/MeasuredParagraph;+]Landroid/text/AutoGrowArray$IntArray;Landroid/text/AutoGrowArray$IntArray;]Landroid/text/Spanned;megamorphic_types
+HSPLandroid/text/MeasuredParagraph;->buildForStaticLayoutInternal(Landroid/text/TextPaint;Landroid/graphics/text/LineBreakConfig;Ljava/lang/CharSequence;IILandroid/text/TextDirectionHeuristic;IZZLandroid/text/MeasuredParagraph;Landroid/text/MeasuredParagraph;Landroid/text/MeasuredParagraph$StyleRunCallback;)Landroid/text/MeasuredParagraph;+]Landroid/text/AutoGrowArray$IntArray;Landroid/text/AutoGrowArray$IntArray;]Landroid/text/Spanned;missing_types
 HSPLandroid/text/MeasuredParagraph;->getCharWidthAt(I)F
 HSPLandroid/text/MeasuredParagraph;->getChars()[C
 HSPLandroid/text/MeasuredParagraph;->getDirections(II)Landroid/text/Layout$Directions;
@@ -15679,28 +15707,28 @@
 HSPLandroid/text/util/Linkify;->containsUnsupportedCharacters(Ljava/lang/String;)Z
 HSPLandroid/text/util/Linkify;->gatherLinks(Ljava/util/ArrayList;Landroid/text/Spannable;Ljava/util/regex/Pattern;[Ljava/lang/String;Landroid/text/util/Linkify$MatchFilter;Landroid/text/util/Linkify$TransformFilter;)V
 HSPLandroid/text/util/Linkify;->pruneOverlaps(Ljava/util/ArrayList;)V
-SPLandroid/tracing/FeatureFlagsImpl;->clientSideProtoLogging()Z
-SPLandroid/tracing/FeatureFlagsImpl;->perfettoIme()Z
-SPLandroid/tracing/FeatureFlagsImpl;->perfettoProtologTracing()Z
-SPLandroid/tracing/Flags;->clientSideProtoLogging()Z
-SPLandroid/tracing/Flags;->perfettoProtologTracing()Z
-SPLandroid/tracing/inputmethod/InputMethodDataSource;-><init>(Ljava/lang/Runnable;Ljava/lang/Runnable;)V
-SPLandroid/tracing/perfetto/DataSource;-><init>(Ljava/lang/String;)V
-SPLandroid/tracing/perfetto/DataSource;->createInstance([BI)Landroid/tracing/perfetto/DataSourceInstance;
-SPLandroid/tracing/perfetto/DataSource;->register(Landroid/tracing/perfetto/DataSourceParams;)V
-SPLandroid/tracing/perfetto/DataSourceInstance;-><init>(Landroid/tracing/perfetto/DataSource;I)V
-SPLandroid/tracing/perfetto/DataSourceParams$Builder;-><init>()V
-SPLandroid/tracing/perfetto/DataSourceParams$Builder;->build()Landroid/tracing/perfetto/DataSourceParams;
-SPLandroid/tracing/perfetto/DataSourceParams$Builder;->setBufferExhaustedPolicy(I)Landroid/tracing/perfetto/DataSourceParams$Builder;
-SPLandroid/tracing/perfetto/DataSourceParams$Builder;->setNoFlush(Z)Landroid/tracing/perfetto/DataSourceParams$Builder;
-SPLandroid/tracing/perfetto/DataSourceParams$Builder;->setWillNotifyOnStop(Z)Landroid/tracing/perfetto/DataSourceParams$Builder;
-SPLandroid/tracing/perfetto/DataSourceParams;-><clinit>()V
-SPLandroid/tracing/perfetto/DataSourceParams;-><init>(IZZ)V
-SPLandroid/tracing/perfetto/DataSourceParams;-><init>(IZZLandroid/tracing/perfetto/DataSourceParams-IA;)V
-SPLandroid/tracing/perfetto/InitArguments;-><clinit>()V
-SPLandroid/tracing/perfetto/InitArguments;-><init>(II)V
-SPLandroid/tracing/perfetto/Producer;->init(Landroid/tracing/perfetto/InitArguments;)V
-SPLandroid/tracing/perfetto/StartCallbackArguments;-><init>()V
+HSPLandroid/tracing/FeatureFlagsImpl;->clientSideProtoLogging()Z
+HSPLandroid/tracing/FeatureFlagsImpl;->perfettoIme()Z
+HSPLandroid/tracing/FeatureFlagsImpl;->perfettoProtologTracing()Z
+HSPLandroid/tracing/Flags;->clientSideProtoLogging()Z
+HSPLandroid/tracing/Flags;->perfettoProtologTracing()Z
+HSPLandroid/tracing/inputmethod/InputMethodDataSource;-><init>(Ljava/lang/Runnable;Ljava/lang/Runnable;)V
+HSPLandroid/tracing/perfetto/DataSource;-><init>(Ljava/lang/String;)V
+HSPLandroid/tracing/perfetto/DataSource;->createInstance([BI)Landroid/tracing/perfetto/DataSourceInstance;
+HSPLandroid/tracing/perfetto/DataSource;->register(Landroid/tracing/perfetto/DataSourceParams;)V
+HSPLandroid/tracing/perfetto/DataSourceInstance;-><init>(Landroid/tracing/perfetto/DataSource;I)V
+HSPLandroid/tracing/perfetto/DataSourceParams$Builder;-><init>()V
+HSPLandroid/tracing/perfetto/DataSourceParams$Builder;->build()Landroid/tracing/perfetto/DataSourceParams;
+HSPLandroid/tracing/perfetto/DataSourceParams$Builder;->setBufferExhaustedPolicy(I)Landroid/tracing/perfetto/DataSourceParams$Builder;
+HSPLandroid/tracing/perfetto/DataSourceParams$Builder;->setNoFlush(Z)Landroid/tracing/perfetto/DataSourceParams$Builder;
+HSPLandroid/tracing/perfetto/DataSourceParams$Builder;->setWillNotifyOnStop(Z)Landroid/tracing/perfetto/DataSourceParams$Builder;
+HSPLandroid/tracing/perfetto/DataSourceParams;-><clinit>()V
+HSPLandroid/tracing/perfetto/DataSourceParams;-><init>(IZZ)V
+HSPLandroid/tracing/perfetto/DataSourceParams;-><init>(IZZLandroid/tracing/perfetto/DataSourceParams-IA;)V
+HSPLandroid/tracing/perfetto/InitArguments;-><clinit>()V
+HSPLandroid/tracing/perfetto/InitArguments;-><init>(II)V
+HSPLandroid/tracing/perfetto/Producer;->init(Landroid/tracing/perfetto/InitArguments;)V
+HSPLandroid/tracing/perfetto/StartCallbackArguments;-><init>()V
 HSPLandroid/transition/ChangeBounds;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
 HSPLandroid/transition/ChangeBounds;->setResizeClip(Z)V
 HSPLandroid/transition/ChangeClipBounds;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
@@ -15905,8 +15933,8 @@
 HSPLandroid/util/Base64;->encodeToString([BIII)Ljava/lang/String;
 HSPLandroid/util/CloseGuard;-><init>()V
 HSPLandroid/util/CloseGuard;->close()V
-SPLandroid/util/CloseGuard;->get()Landroid/util/CloseGuard;
-SPLandroid/util/CloseGuard;->getImpl()Ldalvik/system/CloseGuard;
+HSPLandroid/util/CloseGuard;->get()Landroid/util/CloseGuard;
+HSPLandroid/util/CloseGuard;->getImpl()Ldalvik/system/CloseGuard;
 HSPLandroid/util/CloseGuard;->open(Ljava/lang/String;)V
 HSPLandroid/util/ContainerHelpers;->binarySearch([III)I
 HSPLandroid/util/ContainerHelpers;->binarySearch([JIJ)I
@@ -16196,7 +16224,7 @@
 HSPLandroid/util/Rational;-><init>(II)V
 HSPLandroid/util/Rational;->compareTo(Landroid/util/Rational;)I
 HSPLandroid/util/Rational;->compareTo(Ljava/lang/Object;)I
-SPLandroid/util/SequenceUtils;->getInitSeq()I
+HSPLandroid/util/SequenceUtils;->getInitSeq()I
 HSPLandroid/util/SequenceUtils;->isIncomingSeqStale(II)Z
 HSPLandroid/util/Singleton;-><init>()V
 HSPLandroid/util/Singleton;->get()Ljava/lang/Object;
@@ -16323,7 +16351,7 @@
 HSPLandroid/util/Xml;->newFastSerializer()Lcom/android/modules/utils/TypedXmlSerializer;
 HSPLandroid/util/Xml;->newPullParser()Lorg/xmlpull/v1/XmlPullParser;
 HSPLandroid/util/Xml;->newSerializer()Lorg/xmlpull/v1/XmlSerializer;
-SPLandroid/util/Xml;->newXmlPullParser()Lorg/xmlpull/v1/XmlPullParser;
+HSPLandroid/util/Xml;->newXmlPullParser()Lorg/xmlpull/v1/XmlPullParser;
 HSPLandroid/util/proto/EncodedBuffer;-><init>(I)V
 HSPLandroid/util/proto/EncodedBuffer;->editRawFixed32(II)V
 HSPLandroid/util/proto/EncodedBuffer;->getBytes(I)[B
@@ -16345,7 +16373,7 @@
 HSPLandroid/util/proto/EncodedBuffer;->writeRawFixed32(I)V
 HSPLandroid/util/proto/EncodedBuffer;->writeRawVarint32(I)V
 HSPLandroid/util/proto/EncodedBuffer;->writeRawVarint64(J)V
-SPLandroid/util/proto/ProtoInputStream;-><init>([B)V
+HSPLandroid/util/proto/ProtoInputStream;-><init>([B)V
 HSPLandroid/util/proto/ProtoInputStream;->assertFieldNumber(J)V
 HSPLandroid/util/proto/ProtoInputStream;->assertFreshData()V
 HSPLandroid/util/proto/ProtoInputStream;->assertWireType(I)V
@@ -16401,8 +16429,8 @@
 HSPLandroid/view/Choreographer$1;->initialValue()Ljava/lang/Object;
 HSPLandroid/view/Choreographer$2;->initialValue()Landroid/view/Choreographer;
 HSPLandroid/view/Choreographer$2;->initialValue()Ljava/lang/Object;
-SPLandroid/view/Choreographer$BufferStuffingState;-><init>()V
-SPLandroid/view/Choreographer$BufferStuffingState;-><init>(Landroid/view/Choreographer-IA;)V
+HSPLandroid/view/Choreographer$BufferStuffingState;-><init>()V
+HSPLandroid/view/Choreographer$BufferStuffingState;-><init>(Landroid/view/Choreographer-IA;)V
 HSPLandroid/view/Choreographer$CallbackQueue;-><init>(Landroid/view/Choreographer;)V
 HSPLandroid/view/Choreographer$CallbackQueue;->addCallbackLocked(JLjava/lang/Object;Ljava/lang/Object;)V
 HSPLandroid/view/Choreographer$CallbackQueue;->extractDueCallbacksLocked(J)Landroid/view/Choreographer$CallbackRecord;
@@ -16517,7 +16545,7 @@
 HSPLandroid/view/Display;->getMetrics(Landroid/util/DisplayMetrics;)V
 HSPLandroid/view/Display;->getMode()Landroid/view/Display$Mode;
 HSPLandroid/view/Display;->getName()Ljava/lang/String;
-SPLandroid/view/Display;->getOverlaySupport()Landroid/hardware/OverlayProperties;
+HSPLandroid/view/Display;->getOverlaySupport()Landroid/hardware/OverlayProperties;
 HSPLandroid/view/Display;->getPreferredWideGamutColorSpace()Landroid/graphics/ColorSpace;
 HSPLandroid/view/Display;->getPresentationDeadlineNanos()J
 HSPLandroid/view/Display;->getRealMetrics(Landroid/util/DisplayMetrics;)V
@@ -16540,7 +16568,7 @@
 HSPLandroid/view/DisplayAddress$Physical$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/DisplayAddress$Physical;
 HSPLandroid/view/DisplayAddress$Physical$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
 HSPLandroid/view/DisplayAddress$Physical;-><init>(J)V
-SPLandroid/view/DisplayAddress$Physical;-><init>(JLandroid/view/DisplayAddress-IA;)V
+HSPLandroid/view/DisplayAddress$Physical;-><init>(JLandroid/view/DisplayAddress-IA;)V
 HSPLandroid/view/DisplayAddress$Physical;->equals(Ljava/lang/Object;)Z
 HSPLandroid/view/DisplayAddress$Physical;->writeToParcel(Landroid/os/Parcel;I)V
 HSPLandroid/view/DisplayAddress;-><init>()V
@@ -16555,7 +16583,7 @@
 HSPLandroid/view/DisplayAdjustments;->setConfiguration(Landroid/content/res/Configuration;)V
 HSPLandroid/view/DisplayCutout$Bounds;->-$$Nest$mgetRects(Landroid/view/DisplayCutout$Bounds;)[Landroid/graphics/Rect;
 HSPLandroid/view/DisplayCutout$Bounds;-><init>([Landroid/graphics/Rect;Z)V
-SPLandroid/view/DisplayCutout$Bounds;-><init>([Landroid/graphics/Rect;ZLandroid/view/DisplayCutout-IA;)V
+HSPLandroid/view/DisplayCutout$Bounds;-><init>([Landroid/graphics/Rect;ZLandroid/view/DisplayCutout-IA;)V
 HSPLandroid/view/DisplayCutout$Bounds;->equals(Ljava/lang/Object;)Z
 HSPLandroid/view/DisplayCutout$Bounds;->getRects()[Landroid/graphics/Rect;
 HSPLandroid/view/DisplayCutout$Bounds;->isEmpty()Z
@@ -16722,7 +16750,7 @@
 HSPLandroid/view/IGraphicsStatsCallback$Stub;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
 HSPLandroid/view/IRemoteAnimationRunner$Stub;-><init>()V
 HSPLandroid/view/IRemoteAnimationRunner$Stub;->asBinder()Landroid/os/IBinder;
-SPLandroid/view/ISensitiveContentProtectionManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V
+HSPLandroid/view/ISensitiveContentProtectionManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V
 HSPLandroid/view/ISensitiveContentProtectionManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/view/ISensitiveContentProtectionManager;
 HSPLandroid/view/ISystemGestureExclusionListener$Stub;-><init>()V
 HSPLandroid/view/IWindow$Stub;-><init>()V
@@ -16854,6 +16882,7 @@
 HSPLandroid/view/InsetsAnimationControlImpl;->setInsetsAndAlpha(Landroid/graphics/Insets;FF)V
 HSPLandroid/view/InsetsAnimationControlImpl;->setInsetsAndAlpha(Landroid/graphics/Insets;FFZ)V
 HSPLandroid/view/InsetsAnimationControlImpl;->updateSurfacePosition(Landroid/util/SparseArray;)V
+HSPLandroid/view/InsetsAnimationControlRunner$SurfaceParamsApplier$$ExternalSyntheticLambda0;->applySurfaceParams([Landroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams;)V
 HSPLandroid/view/InsetsAnimationControlRunner$SurfaceParamsApplier;->lambda$static$0([Landroid/view/SyncRtSurfaceTransactionApplier$SurfaceParams;)V
 HSPLandroid/view/InsetsAnimationThread;->ensureThreadLocked()V
 HSPLandroid/view/InsetsAnimationThread;->getHandler()Landroid/os/Handler;
@@ -16877,7 +16906,7 @@
 HSPLandroid/view/InsetsAnimationThreadControlRunner;->updateSurfacePosition(Landroid/util/SparseArray;)V
 HSPLandroid/view/InsetsController$$ExternalSyntheticLambda10;-><init>(Landroid/view/InsetsController;)V
 HSPLandroid/view/InsetsController$$ExternalSyntheticLambda1;->apply(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
-SPLandroid/view/InsetsController$$ExternalSyntheticLambda8;-><init>()V
+HSPLandroid/view/InsetsController$$ExternalSyntheticLambda8;-><init>()V
 HSPLandroid/view/InsetsController$$ExternalSyntheticLambda9;-><init>(Landroid/view/InsetsController;)V
 HSPLandroid/view/InsetsController$1;-><init>(Landroid/view/InsetsController;)V
 HSPLandroid/view/InsetsController$2;-><init>(Landroid/view/InsetsController;)V
@@ -16965,7 +16994,7 @@
 HSPLandroid/view/InsetsSource;->setVisible(Z)Landroid/view/InsetsSource;
 HSPLandroid/view/InsetsSource;->writeToParcel(Landroid/os/Parcel;I)V
 HSPLandroid/view/InsetsSourceConsumer;->applyLocalVisibilityOverride()Z
-HSPLandroid/view/InsetsSourceConsumer;->applyRequestedVisibilityAndPositionToControl()V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/view/InsetsAnimationControlRunner$SurfaceParamsApplier;Landroid/view/InsetsAnimationControlRunner$SurfaceParamsApplier$$ExternalSyntheticLambda0;]Landroid/view/InsetsController;Landroid/view/InsetsController;]Landroid/view/InsetsSourceConsumer;Landroid/view/InsetsSourceConsumer;]Landroid/view/InsetsSourceControl;Landroid/view/InsetsSourceControl;
+HSPLandroid/view/InsetsSourceConsumer;->applyRequestedVisibilityAndPositionToControl()V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Landroid/view/InsetsAnimationControlRunner$SurfaceParamsApplier;Landroid/view/InsetsAnimationControlRunner$SurfaceParamsApplier$$ExternalSyntheticLambda0;,Landroid/view/InsetsController;]Landroid/view/InsetsController;Landroid/view/InsetsController;]Landroid/view/InsetsSourceConsumer;Landroid/view/InsetsSourceConsumer;]Landroid/view/InsetsSourceControl;Landroid/view/InsetsSourceControl;
 HSPLandroid/view/InsetsSourceConsumer;->getControl()Landroid/view/InsetsSourceControl;
 HSPLandroid/view/InsetsSourceConsumer;->getId()I
 HSPLandroid/view/InsetsSourceConsumer;->getType()I
@@ -16981,8 +17010,11 @@
 HSPLandroid/view/InsetsSourceControl$1;->newArray(I)[Landroid/view/InsetsSourceControl;
 HSPLandroid/view/InsetsSourceControl$1;->newArray(I)[Ljava/lang/Object;
 HSPLandroid/view/InsetsSourceControl$Array$1;-><init>()V
+HSPLandroid/view/InsetsSourceControl$Array$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/InsetsSourceControl$Array;
+HSPLandroid/view/InsetsSourceControl$Array$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;+]Landroid/view/InsetsSourceControl$Array$1;Landroid/view/InsetsSourceControl$Array$1;
 HSPLandroid/view/InsetsSourceControl$Array;-><clinit>()V
 HSPLandroid/view/InsetsSourceControl$Array;-><init>()V
+HSPLandroid/view/InsetsSourceControl$Array;-><init>(Landroid/os/Parcel;)V+]Landroid/view/InsetsSourceControl$Array;Landroid/view/InsetsSourceControl$Array;
 HSPLandroid/view/InsetsSourceControl$Array;->get()[Landroid/view/InsetsSourceControl;
 HSPLandroid/view/InsetsSourceControl$Array;->getSeq()I
 HSPLandroid/view/InsetsSourceControl$Array;->readFromParcel(Landroid/os/Parcel;)V
@@ -17271,8 +17303,8 @@
 HSPLandroid/view/SurfaceControl$Builder;->setOpaque(Z)Landroid/view/SurfaceControl$Builder;
 HSPLandroid/view/SurfaceControl$Builder;->setParent(Landroid/view/SurfaceControl;)Landroid/view/SurfaceControl$Builder;
 HSPLandroid/view/SurfaceControl$Builder;->unsetBufferSize()V
-SPLandroid/view/SurfaceControl$Transaction$$ExternalSyntheticLambda0;-><init>()V
-SPLandroid/view/SurfaceControl$Transaction$$ExternalSyntheticLambda0;->accept(Ljava/lang/Object;)V
+HSPLandroid/view/SurfaceControl$Transaction$$ExternalSyntheticLambda0;-><init>()V
+HSPLandroid/view/SurfaceControl$Transaction$$ExternalSyntheticLambda0;->accept(Ljava/lang/Object;)V
 HSPLandroid/view/SurfaceControl$Transaction$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;)V
 HSPLandroid/view/SurfaceControl$Transaction$$ExternalSyntheticLambda3;-><init>(Ljava/util/function/Consumer;Landroid/view/SurfaceControl$TransactionStats;)V
 HSPLandroid/view/SurfaceControl$Transaction$$ExternalSyntheticLambda3;->run()V
@@ -17289,7 +17321,7 @@
 HSPLandroid/view/SurfaceControl$Transaction;->close()V
 HSPLandroid/view/SurfaceControl$Transaction;->hide(Landroid/view/SurfaceControl;)Landroid/view/SurfaceControl$Transaction;
 HSPLandroid/view/SurfaceControl$Transaction;->lambda$addTransactionCompletedListener$1(Ljava/util/function/Consumer;Landroid/view/SurfaceControl$TransactionStats;)V
-SPLandroid/view/SurfaceControl$Transaction;->lambda$addTransactionCompletedListener$2(Ljava/util/concurrent/Executor;Ljava/util/function/Consumer;Landroid/view/SurfaceControl$TransactionStats;)V
+HSPLandroid/view/SurfaceControl$Transaction;->lambda$addTransactionCompletedListener$2(Ljava/util/concurrent/Executor;Ljava/util/function/Consumer;Landroid/view/SurfaceControl$TransactionStats;)V
 HSPLandroid/view/SurfaceControl$Transaction;->merge(Landroid/view/SurfaceControl$Transaction;)Landroid/view/SurfaceControl$Transaction;
 HSPLandroid/view/SurfaceControl$Transaction;->notifyReparentedSurfaces()V
 HSPLandroid/view/SurfaceControl$Transaction;->onMergeWithNextTransaction(Ljava/lang/CharSequence;)V
@@ -17300,7 +17332,6 @@
 HSPLandroid/view/SurfaceControl$Transaction;->setBufferSize(Landroid/view/SurfaceControl;II)Landroid/view/SurfaceControl$Transaction;
 HSPLandroid/view/SurfaceControl$Transaction;->setColor(Landroid/view/SurfaceControl;[F)Landroid/view/SurfaceControl$Transaction;
 HSPLandroid/view/SurfaceControl$Transaction;->setCornerRadius(Landroid/view/SurfaceControl;F)Landroid/view/SurfaceControl$Transaction;
-HSPLandroid/view/SurfaceControl$Transaction;->setDesintationFrame(Landroid/view/SurfaceControl;II)Landroid/view/SurfaceControl$Transaction;
 HSPLandroid/view/SurfaceControl$Transaction;->setExtendedRangeBrightness(Landroid/view/SurfaceControl;FF)Landroid/view/SurfaceControl$Transaction;
 HSPLandroid/view/SurfaceControl$Transaction;->setFrameRateCategory(Landroid/view/SurfaceControl;IZ)Landroid/view/SurfaceControl$Transaction;+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;
 HSPLandroid/view/SurfaceControl$Transaction;->setFrameRateSelectionStrategy(Landroid/view/SurfaceControl;I)Landroid/view/SurfaceControl$Transaction;+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;
@@ -17318,17 +17349,17 @@
 HSPLandroid/view/SurfaceControl$Transaction;->show(Landroid/view/SurfaceControl;)Landroid/view/SurfaceControl$Transaction;
 HSPLandroid/view/SurfaceControl$Transaction;->writeToParcel(Landroid/os/Parcel;I)V
 HSPLandroid/view/SurfaceControl$TransactionStats;-><init>(JJ)V
-SPLandroid/view/SurfaceControl$TransactionStats;->close()V
-SPLandroid/view/SurfaceControl$TransactionStats;->getPresentFence()Landroid/hardware/SyncFence;
-SPLandroid/view/SurfaceControl;->-$$Nest$smnativeApplyTransaction(JZZ)V
+HSPLandroid/view/SurfaceControl$TransactionStats;->close()V
+HSPLandroid/view/SurfaceControl$TransactionStats;->getPresentFence()Landroid/hardware/SyncFence;
+HSPLandroid/view/SurfaceControl;->-$$Nest$smnativeApplyTransaction(JZZ)V
 HSPLandroid/view/SurfaceControl;->-$$Nest$smnativeCreateTransaction()J
 HSPLandroid/view/SurfaceControl;->-$$Nest$smnativeSanitize(JII)V
 HSPLandroid/view/SurfaceControl;->-$$Nest$smnativeSetDestinationFrame(JJIIII)V
 HSPLandroid/view/SurfaceControl;->-$$Nest$smnativeSetExtendedRangeBrightness(JJFF)V
 HSPLandroid/view/SurfaceControl;->-$$Nest$smnativeSetFlags(JJII)V
-SPLandroid/view/SurfaceControl;->-$$Nest$smnativeSetFrameRate(JJFII)V
+HSPLandroid/view/SurfaceControl;->-$$Nest$smnativeSetFrameRate(JJFII)V
 HSPLandroid/view/SurfaceControl;->-$$Nest$smnativeSetFrameRateCategory(JJIZ)V
-SPLandroid/view/SurfaceControl;->-$$Nest$smnativeSetFrameRateSelectionStrategy(JJI)V
+HSPLandroid/view/SurfaceControl;->-$$Nest$smnativeSetFrameRateSelectionStrategy(JJI)V
 HSPLandroid/view/SurfaceControl;-><init>()V
 HSPLandroid/view/SurfaceControl;-><init>(Landroid/os/Parcel;)V
 HSPLandroid/view/SurfaceControl;-><init>(Landroid/view/SurfaceControl;Ljava/lang/String;)V
@@ -17349,8 +17380,8 @@
 HSPLandroid/view/SurfaceControlRegistry$NoOpRegistry;->remove(Landroid/view/SurfaceControl;)V
 HSPLandroid/view/SurfaceControlRegistry;-><clinit>()V
 HSPLandroid/view/SurfaceControlRegistry;->getProcessInstance()Landroid/view/SurfaceControlRegistry;
-SPLandroid/view/SurfaceControlRegistry;->initializeCallStackDebugging()V
-SPLandroid/view/SurfaceControlRegistry;->updateCallStackDebuggingParams()V
+HSPLandroid/view/SurfaceControlRegistry;->initializeCallStackDebugging()V
+HSPLandroid/view/SurfaceControlRegistry;->updateCallStackDebuggingParams()V
 HSPLandroid/view/SurfaceSession;-><init>()V
 HSPLandroid/view/SurfaceSession;->finalize()V
 HSPLandroid/view/SurfaceSession;->kill()V
@@ -17476,7 +17507,7 @@
 HSPLandroid/view/VelocityTracker;->getYVelocity(I)F
 HSPLandroid/view/VelocityTracker;->obtain()Landroid/view/VelocityTracker;
 HSPLandroid/view/VelocityTracker;->recycle()V
-SPLandroid/view/View$$ExternalSyntheticLambda3;->get()Ljava/lang/Object;
+HSPLandroid/view/View$$ExternalSyntheticLambda3;->get()Ljava/lang/Object;
 HSPLandroid/view/View$$ExternalSyntheticLambda4;-><init>(Landroid/view/View;)V
 HSPLandroid/view/View$$ExternalSyntheticLambda4;->run()V
 HSPLandroid/view/View$$ExternalSyntheticLambda5;->run()V
@@ -17540,8 +17571,8 @@
 HSPLandroid/view/View$PerformClick;->run()V
 HSPLandroid/view/View$ScrollabilityCache;-><init>(Landroid/view/ViewConfiguration;Landroid/view/View;)V
 HSPLandroid/view/View$ScrollabilityCache;->run()V
-SPLandroid/view/View$SensitiveAutofillHintsHelper;-><clinit>()V
-SPLandroid/view/View$SensitiveAutofillHintsHelper;->containsSensitiveAutofillHint([Ljava/lang/String;)Z
+HSPLandroid/view/View$SensitiveAutofillHintsHelper;-><clinit>()V
+HSPLandroid/view/View$SensitiveAutofillHintsHelper;->containsSensitiveAutofillHint([Ljava/lang/String;)Z
 HSPLandroid/view/View$TintInfo;-><init>()V
 HSPLandroid/view/View$TransformationInfo;-><init>()V
 HSPLandroid/view/View$UnsetPressedState;->run()V
@@ -18544,29 +18575,14 @@
 HSPLandroid/view/ViewPropertyAnimator;->withEndAction(Ljava/lang/Runnable;)Landroid/view/ViewPropertyAnimator;
 HSPLandroid/view/ViewPropertyAnimator;->withLayer()Landroid/view/ViewPropertyAnimator;
 HSPLandroid/view/ViewPropertyAnimator;->withStartAction(Ljava/lang/Runnable;)Landroid/view/ViewPropertyAnimator;
-SPLandroid/view/ViewProtoLogGroups;-><clinit>()V
-SPLandroid/view/ViewRootImpl$$ExternalSyntheticLambda19;-><init>()V
-HSPLandroid/view/ViewRootImpl$$ExternalSyntheticLambda20;-><init>(Landroid/view/ViewRootImpl;)V
-HSPLandroid/view/ViewRootImpl$$ExternalSyntheticLambda20;->execute(Ljava/lang/Runnable;)V
-HSPLandroid/view/ViewRootImpl$$ExternalSyntheticLambda21;-><init>(Landroid/view/ViewRootImpl;)V
-HSPLandroid/view/ViewRootImpl$$ExternalSyntheticLambda21;->run()V
+HSPLandroid/view/ViewProtoLogGroups;-><clinit>()V
+HSPLandroid/view/ViewRootImpl$$ExternalSyntheticLambda19;-><init>()V
 HSPLandroid/view/ViewRootImpl$$ExternalSyntheticLambda22;-><init>(Landroid/view/ViewRootImpl;)V
-HSPLandroid/view/ViewRootImpl$$ExternalSyntheticLambda22;->run()V
-SPLandroid/view/ViewRootImpl$$ExternalSyntheticLambda23;-><init>(Landroid/view/ViewRootImpl;)V
-SPLandroid/view/ViewRootImpl$$ExternalSyntheticLambda23;->run()V
+HSPLandroid/view/ViewRootImpl$$ExternalSyntheticLambda23;-><init>(Landroid/view/ViewRootImpl;)V
+HSPLandroid/view/ViewRootImpl$$ExternalSyntheticLambda23;->run()V
 HSPLandroid/view/ViewRootImpl$$ExternalSyntheticLambda3;->run()V
-HSPLandroid/view/ViewRootImpl$$ExternalSyntheticLambda5;->accept(Ljava/lang/Object;)V
-HSPLandroid/view/ViewRootImpl$10;->run()V
-SPLandroid/view/ViewRootImpl$11$$ExternalSyntheticLambda3;-><init>(Landroid/view/ViewRootImpl$11;JLandroid/window/SurfaceSyncGroup;Z)V
-HSPLandroid/view/ViewRootImpl$11$$ExternalSyntheticLambda3;->onFrameCommit(Z)V
-SPLandroid/view/ViewRootImpl$11;->$r8$lambda$lOIKKNnrcWn9ZndeJebfX4H5mOg(Landroid/view/ViewRootImpl$11;JLandroid/window/SurfaceSyncGroup;ZZ)V
-SPLandroid/view/ViewRootImpl$11;->lambda$onFrameDraw$3(JLandroid/window/SurfaceSyncGroup;ZZ)V
-HSPLandroid/view/ViewRootImpl$11;->onFrameDraw(IJ)Landroid/graphics/HardwareRenderer$FrameCommitCallback;
 HSPLandroid/view/ViewRootImpl$4;-><init>(Landroid/view/ViewRootImpl;)V
-HSPLandroid/view/ViewRootImpl$5;->accept(Landroid/view/SurfaceControl$TransactionStats;)V
-SPLandroid/view/ViewRootImpl$5;->accept(Ljava/lang/Object;)V
-SPLandroid/view/ViewRootImpl$6;-><init>(Landroid/view/ViewRootImpl;)V
-HSPLandroid/view/ViewRootImpl$6;->run()V
+HSPLandroid/view/ViewRootImpl$6;->run()V+]Landroid/app/IActivityManager;Landroid/app/IActivityManager$Stub$Proxy;
 HSPLandroid/view/ViewRootImpl$AccessibilityInteractionConnectionManager;-><init>(Landroid/view/ViewRootImpl;)V
 HSPLandroid/view/ViewRootImpl$AccessibilityInteractionConnectionManager;->ensureNoConnection()V
 HSPLandroid/view/ViewRootImpl$AsyncInputStage;-><init>(Landroid/view/ViewRootImpl;Landroid/view/ViewRootImpl$InputStage;Ljava/lang/String;)V
@@ -18655,18 +18671,15 @@
 HSPLandroid/view/ViewRootImpl$WindowInputEventReceiver;->onBatchedInputEventPending(I)V
 HSPLandroid/view/ViewRootImpl$WindowInputEventReceiver;->onFocusEvent(Z)V
 HSPLandroid/view/ViewRootImpl$WindowInputEventReceiver;->onInputEvent(Landroid/view/InputEvent;)V
-SPLandroid/view/ViewRootImpl;->$r8$lambda$I9KJH1qLSZb1_fWNfrFUXDtFojg(Landroid/view/ViewRootImpl;)V
-SPLandroid/view/ViewRootImpl;->$r8$lambda$J_WUiRtQMmJK5FDj7HKcqXqyDcc(Landroid/view/ViewRootImpl;)V
-SPLandroid/view/ViewRootImpl;->$r8$lambda$Lx9xSQs8XgeRJZgj7lPDiojIGvE(Landroid/view/ViewRootImpl;)V
-SPLandroid/view/ViewRootImpl;->$r8$lambda$kydZ5VrQzxxxtiGWLXqElnQw9pY(Landroid/view/ViewRootImpl;ILandroid/view/SurfaceControl$Transaction;)V
-SPLandroid/view/ViewRootImpl;->$r8$lambda$o-4fi-JcmDrHYU6rHJDidn63Y3s(Landroid/view/ViewRootImpl;Ljava/lang/Runnable;)V
-SPLandroid/view/ViewRootImpl;->-$$Nest$fgetmAppStartTimestampsSent(Landroid/view/ViewRootImpl;)Ljava/util/concurrent/atomic/AtomicBoolean;
+HSPLandroid/view/ViewRootImpl;->$r8$lambda$I9KJH1qLSZb1_fWNfrFUXDtFojg(Landroid/view/ViewRootImpl;)V
+HSPLandroid/view/ViewRootImpl;->$r8$lambda$Lx9xSQs8XgeRJZgj7lPDiojIGvE(Landroid/view/ViewRootImpl;)V
+HSPLandroid/view/ViewRootImpl;->-$$Nest$fgetmAppStartTimestampsSent(Landroid/view/ViewRootImpl;)Ljava/util/concurrent/atomic/AtomicBoolean;
 HSPLandroid/view/ViewRootImpl;->-$$Nest$fgetmBlastBufferQueue(Landroid/view/ViewRootImpl;)Landroid/graphics/BLASTBufferQueue;
-SPLandroid/view/ViewRootImpl;->-$$Nest$fgetmFirstFramePresentedTimeNs(Landroid/view/ViewRootImpl;)J
-SPLandroid/view/ViewRootImpl;->-$$Nest$fgetmRenderThreadDrawStartTimeNs(Landroid/view/ViewRootImpl;)J
-SPLandroid/view/ViewRootImpl;->-$$Nest$fputmFirstFramePresentedTimeNs(Landroid/view/ViewRootImpl;J)V
+HSPLandroid/view/ViewRootImpl;->-$$Nest$fgetmFirstFramePresentedTimeNs(Landroid/view/ViewRootImpl;)J
+HSPLandroid/view/ViewRootImpl;->-$$Nest$fgetmRenderThreadDrawStartTimeNs(Landroid/view/ViewRootImpl;)J
+HSPLandroid/view/ViewRootImpl;->-$$Nest$fputmFirstFramePresentedTimeNs(Landroid/view/ViewRootImpl;J)V
 HSPLandroid/view/ViewRootImpl;->-$$Nest$fputmProfileRendering(Landroid/view/ViewRootImpl;Z)V
-SPLandroid/view/ViewRootImpl;->-$$Nest$mmaybeSendAppStartTimes(Landroid/view/ViewRootImpl;)V
+HSPLandroid/view/ViewRootImpl;->-$$Nest$mmaybeSendAppStartTimes(Landroid/view/ViewRootImpl;)V
 HSPLandroid/view/ViewRootImpl;->-$$Nest$mprofileRendering(Landroid/view/ViewRootImpl;Z)V
 HSPLandroid/view/ViewRootImpl;-><init>(Landroid/content/Context;Landroid/view/Display;)V
 HSPLandroid/view/ViewRootImpl;-><init>(Landroid/content/Context;Landroid/view/Display;Landroid/view/IWindowSession;Landroid/view/WindowLayout;)V
@@ -18695,7 +18708,7 @@
 HSPLandroid/view/ViewRootImpl;->destroyHardwareRenderer()V
 HSPLandroid/view/ViewRootImpl;->destroyHardwareResources()V
 HSPLandroid/view/ViewRootImpl;->destroySurface()V
-HSPLandroid/view/ViewRootImpl;->determineForceDarkType()I
+HSPLandroid/view/ViewRootImpl;->determineForceDarkType()I+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;
 HSPLandroid/view/ViewRootImpl;->die(Z)Z
 HSPLandroid/view/ViewRootImpl;->dipToPx(I)I
 HSPLandroid/view/ViewRootImpl;->dispatchAppVisibility(Z)V
@@ -18735,7 +18748,7 @@
 HSPLandroid/view/ViewRootImpl;->getCompatWindowConfiguration()Landroid/app/WindowConfiguration;
 HSPLandroid/view/ViewRootImpl;->getConfiguration()Landroid/content/res/Configuration;
 HSPLandroid/view/ViewRootImpl;->getDisplayId()I
-SPLandroid/view/ViewRootImpl;->getFrameRateCompatibility()I
+HSPLandroid/view/ViewRootImpl;->getFrameRateCompatibility()I
 HSPLandroid/view/ViewRootImpl;->getHandwritingInitiator()Landroid/view/HandwritingInitiator;
 HSPLandroid/view/ViewRootImpl;->getHostVisibility()I
 HSPLandroid/view/ViewRootImpl;->getHostVisibilityReason()Ljava/lang/String;+]Landroid/view/View;missing_types
@@ -18763,7 +18776,7 @@
 HSPLandroid/view/ViewRootImpl;->handleAppVisibility(Z)V
 HSPLandroid/view/ViewRootImpl;->handleContentCaptureFlush()V
 HSPLandroid/view/ViewRootImpl;->handleDispatchSystemUiVisibilityChanged()V
-SPLandroid/view/ViewRootImpl;->handleInsetsControlChanged(Landroid/view/InsetsState;Landroid/view/InsetsSourceControl$Array;)V
+HSPLandroid/view/ViewRootImpl;->handleInsetsControlChanged(Landroid/view/InsetsState;Landroid/view/InsetsSourceControl$Array;)V
 HSPLandroid/view/ViewRootImpl;->handleWindowFocusChanged()V
 HSPLandroid/view/ViewRootImpl;->initializeProtoLogInProcess()V
 HSPLandroid/view/ViewRootImpl;->intermittentUpdateState()I
@@ -18784,13 +18797,11 @@
 HSPLandroid/view/ViewRootImpl;->isTextDirectionResolved()Z
 HSPLandroid/view/ViewRootImpl;->keepClearRectsChanged(Z)V
 HSPLandroid/view/ViewRootImpl;->lambda$createSyncIfNeeded$4(ILandroid/view/SurfaceControl$Transaction;)V
-HSPLandroid/view/ViewRootImpl;->lambda$getOrCreateSurfaceSyncGroup$16()V
 HSPLandroid/view/ViewRootImpl;->lambda$getOrCreateSurfaceSyncGroup$17()V
 HSPLandroid/view/ViewRootImpl;->lambda$getOrCreateSurfaceSyncGroup$18()V
 HSPLandroid/view/ViewRootImpl;->lambda$new$0(Landroid/view/View;)Ljava/util/List;
 HSPLandroid/view/ViewRootImpl;->lambda$new$1(Landroid/view/View;)Ljava/util/List;
 HSPLandroid/view/ViewRootImpl;->lambda$new$2(Landroid/view/View;)Ljava/util/List;
-HSPLandroid/view/ViewRootImpl;->lambda$new$9(Ljava/lang/Runnable;)V
 HSPLandroid/view/ViewRootImpl;->loadSystemProperties()V
 HSPLandroid/view/ViewRootImpl;->logAndTrace(Ljava/lang/String;)V
 HSPLandroid/view/ViewRootImpl;->logColorMode(IZ)V
@@ -19202,7 +19213,7 @@
 HSPLandroid/view/accessibility/CaptioningManager;->isEnabled()Z
 HSPLandroid/view/accessibility/CaptioningManager;->registerObserver(Ljava/lang/String;)V
 HSPLandroid/view/accessibility/CaptioningManager;->removeCaptioningChangeListener(Landroid/view/accessibility/CaptioningManager$CaptioningChangeListener;)V
-SPLandroid/view/accessibility/FeatureFlagsImpl;->forceInvertColor()Z
+HSPLandroid/view/accessibility/FeatureFlagsImpl;->forceInvertColor()Z
 HSPLandroid/view/accessibility/FeatureFlagsImpl;->supplementalDescription()Z
 HSPLandroid/view/accessibility/Flags;->forceInvertColor()Z
 HSPLandroid/view/accessibility/Flags;->supplementalDescription()Z+]Landroid/view/accessibility/FeatureFlags;Landroid/view/accessibility/FeatureFlagsImpl;
@@ -19388,26 +19399,26 @@
 HSPLandroid/view/autofill/AutofillFeatureFlags$$ExternalSyntheticLambda0;-><init>()V
 HSPLandroid/view/autofill/AutofillFeatureFlags$$ExternalSyntheticLambda1;-><init>()V
 HSPLandroid/view/autofill/AutofillFeatureFlags$$ExternalSyntheticLambda1;->test(Ljava/lang/Object;)Z
-SPLandroid/view/autofill/AutofillFeatureFlags;->enableRelativeLocationForRelayout()Z
-SPLandroid/view/autofill/AutofillFeatureFlags;->enableRelayoutFixes()Z
-SPLandroid/view/autofill/AutofillFeatureFlags;->getAllowlistStringFromFlag()Ljava/lang/String;
+HSPLandroid/view/autofill/AutofillFeatureFlags;->enableRelativeLocationForRelayout()Z
+HSPLandroid/view/autofill/AutofillFeatureFlags;->enableRelayoutFixes()Z
+HSPLandroid/view/autofill/AutofillFeatureFlags;->getAllowlistStringFromFlag()Ljava/lang/String;
 HSPLandroid/view/autofill/AutofillFeatureFlags;->getDenylistStringFromFlag()Ljava/lang/String;
 HSPLandroid/view/autofill/AutofillFeatureFlags;->getFillDialogEnabledHints()[Ljava/lang/String;
 HSPLandroid/view/autofill/AutofillFeatureFlags;->getNonAutofillableImeActionIdSetFromFlag()Ljava/util/Set;
-SPLandroid/view/autofill/AutofillFeatureFlags;->isCredentialManagerEnabled()Z
+HSPLandroid/view/autofill/AutofillFeatureFlags;->isCredentialManagerEnabled()Z
 HSPLandroid/view/autofill/AutofillFeatureFlags;->isFillAndSaveDialogDisabledForCredentialManager()Z
 HSPLandroid/view/autofill/AutofillFeatureFlags;->isFillDialogEnabled()Z
-SPLandroid/view/autofill/AutofillFeatureFlags;->isImproveFillDialogEnabled()Z
-SPLandroid/view/autofill/AutofillFeatureFlags;->isTriggerFillRequestOnFilteredImportantViewsEnabled()Z
+HSPLandroid/view/autofill/AutofillFeatureFlags;->isImproveFillDialogEnabled()Z
+HSPLandroid/view/autofill/AutofillFeatureFlags;->isTriggerFillRequestOnFilteredImportantViewsEnabled()Z
 HSPLandroid/view/autofill/AutofillFeatureFlags;->isTriggerFillRequestOnUnimportantViewEnabled()Z
 HSPLandroid/view/autofill/AutofillFeatureFlags;->lambda$getFillDialogEnabledHints$1(Ljava/lang/String;)Z
-SPLandroid/view/autofill/AutofillFeatureFlags;->shouldAlwaysIncludeWebviewInAssistStructure()Z
-SPLandroid/view/autofill/AutofillFeatureFlags;->shouldEnableAutofillOnAllViewTypes()Z
-SPLandroid/view/autofill/AutofillFeatureFlags;->shouldEnableMultilineFilter()Z
-SPLandroid/view/autofill/AutofillFeatureFlags;->shouldIgnoreRelayoutWhenAuthPending()Z
+HSPLandroid/view/autofill/AutofillFeatureFlags;->shouldAlwaysIncludeWebviewInAssistStructure()Z
+HSPLandroid/view/autofill/AutofillFeatureFlags;->shouldEnableAutofillOnAllViewTypes()Z
+HSPLandroid/view/autofill/AutofillFeatureFlags;->shouldEnableMultilineFilter()Z
+HSPLandroid/view/autofill/AutofillFeatureFlags;->shouldIgnoreRelayoutWhenAuthPending()Z
 HSPLandroid/view/autofill/AutofillFeatureFlags;->shouldIncludeAllChildrenViewInAssistStructure()Z
 HSPLandroid/view/autofill/AutofillFeatureFlags;->shouldIncludeAllViewsAutofillTypeNotNoneInAssistStructrue()Z
-SPLandroid/view/autofill/AutofillFeatureFlags;->shouldIncludeInvisibleViewInAssistStructure()Z
+HSPLandroid/view/autofill/AutofillFeatureFlags;->shouldIncludeInvisibleViewInAssistStructure()Z
 HSPLandroid/view/autofill/AutofillId$1;->createFromParcel(Landroid/os/Parcel;)Landroid/view/autofill/AutofillId;
 HSPLandroid/view/autofill/AutofillId$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
 HSPLandroid/view/autofill/AutofillId;-><init>(I)V
@@ -19600,14 +19611,14 @@
 HSPLandroid/view/contentcapture/ViewNode;-><init>()V
 HSPLandroid/view/contentcapture/ViewNode;->writeSelfToParcel(Landroid/os/Parcel;I)V
 HSPLandroid/view/contentcapture/ViewNode;->writeToParcel(Landroid/os/Parcel;Landroid/view/contentcapture/ViewNode;I)V
-SPLandroid/view/flags/FeatureFlagsImpl;->addSchandleToVriSurface()Z
+HSPLandroid/view/flags/FeatureFlagsImpl;->addSchandleToVriSurface()Z
 HSPLandroid/view/flags/FeatureFlagsImpl;->bufferStuffingRecovery()Z
-SPLandroid/view/flags/FeatureFlagsImpl;->customizableWindowHeaders()Z
-SPLandroid/view/flags/FeatureFlagsImpl;->disableDrawWakeLock()Z
-SPLandroid/view/flags/FeatureFlagsImpl;->enableScrollFeedbackForTouch()Z
-SPLandroid/view/flags/FeatureFlagsImpl;->enableSurfaceNativeAllocRegistrationRo()Z
+HSPLandroid/view/flags/FeatureFlagsImpl;->customizableWindowHeaders()Z
+HSPLandroid/view/flags/FeatureFlagsImpl;->disableDrawWakeLock()Z
+HSPLandroid/view/flags/FeatureFlagsImpl;->enableScrollFeedbackForTouch()Z
+HSPLandroid/view/flags/FeatureFlagsImpl;->enableSurfaceNativeAllocRegistrationRo()Z
 HSPLandroid/view/flags/FeatureFlagsImpl;->sensitiveContentAppProtection()Z
-SPLandroid/view/flags/FeatureFlagsImpl;->viewVelocityApi()Z
+HSPLandroid/view/flags/FeatureFlagsImpl;->viewVelocityApi()Z
 HSPLandroid/view/flags/Flags;->bufferStuffingRecovery()Z+]Landroid/view/flags/FeatureFlags;Landroid/view/flags/FeatureFlagsImpl;
 HSPLandroid/view/flags/Flags;->disableDrawWakeLock()Z
 HSPLandroid/view/flags/Flags;->sensitiveContentAppProtection()Z+]Landroid/view/flags/FeatureFlags;Landroid/view/flags/FeatureFlagsImpl;
@@ -19644,8 +19655,8 @@
 HSPLandroid/view/inputmethod/EditorInfo;->setInitialToolType(I)V
 HSPLandroid/view/inputmethod/EditorInfo;->writeToParcel(Landroid/os/Parcel;I)V
 HSPLandroid/view/inputmethod/ExtractedTextRequest;-><init>()V
-SPLandroid/view/inputmethod/FeatureFlagsImpl;->compatchangeForZerojankproxy()Z
-SPLandroid/view/inputmethod/FeatureFlagsImpl;->initiationWithoutInputConnection()Z
+HSPLandroid/view/inputmethod/FeatureFlagsImpl;->compatchangeForZerojankproxy()Z
+HSPLandroid/view/inputmethod/FeatureFlagsImpl;->initiationWithoutInputConnection()Z
 HSPLandroid/view/inputmethod/FeatureFlagsImpl;->refactorInsetsController()Z
 HSPLandroid/view/inputmethod/Flags;->refactorInsetsController()Z+]Landroid/view/inputmethod/FeatureFlags;Landroid/view/inputmethod/FeatureFlagsImpl;
 HSPLandroid/view/inputmethod/IInputMethodManagerGlobalInvoker;-><clinit>()V
@@ -21449,15 +21460,15 @@
 HSPLandroid/window/ActivityWindowInfo$1;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;+]Landroid/window/ActivityWindowInfo$1;Landroid/window/ActivityWindowInfo$1;
 HSPLandroid/window/ActivityWindowInfo;-><init>()V
 HSPLandroid/window/ActivityWindowInfo;-><init>(Landroid/os/Parcel;)V
-SPLandroid/window/ActivityWindowInfo;-><init>(Landroid/os/Parcel;Landroid/window/ActivityWindowInfo-IA;)V
+HSPLandroid/window/ActivityWindowInfo;-><init>(Landroid/os/Parcel;Landroid/window/ActivityWindowInfo-IA;)V
 HSPLandroid/window/ActivityWindowInfo;-><init>(Landroid/window/ActivityWindowInfo;)V
 HSPLandroid/window/ActivityWindowInfo;->equals(Ljava/lang/Object;)Z
 HSPLandroid/window/ActivityWindowInfo;->set(Landroid/window/ActivityWindowInfo;)V
 HSPLandroid/window/ActivityWindowInfo;->set(ZLandroid/graphics/Rect;Landroid/graphics/Rect;)V
 HSPLandroid/window/BackProgressAnimator;-><init>()V
-SPLandroid/window/BackTouchTracker$TouchTrackerState;->$values()[Landroid/window/BackTouchTracker$TouchTrackerState;
-SPLandroid/window/BackTouchTracker$TouchTrackerState;-><clinit>()V
-SPLandroid/window/BackTouchTracker$TouchTrackerState;-><init>(Ljava/lang/String;I)V
+HSPLandroid/window/BackTouchTracker$TouchTrackerState;->$values()[Landroid/window/BackTouchTracker$TouchTrackerState;
+HSPLandroid/window/BackTouchTracker$TouchTrackerState;-><clinit>()V
+HSPLandroid/window/BackTouchTracker$TouchTrackerState;-><init>(Ljava/lang/String;I)V
 HSPLandroid/window/BackTouchTracker;-><init>()V
 HSPLandroid/window/BackTouchTracker;->setProgressThresholds(FFF)V
 HSPLandroid/window/ClientWindowFrames$1;-><init>()V
@@ -21473,49 +21484,48 @@
 HSPLandroid/window/ConfigurationHelper;->isDisplayRotationChanged(Landroid/content/res/Configuration;Landroid/content/res/Configuration;)Z
 HSPLandroid/window/ConfigurationHelper;->shouldUpdateResources(Landroid/os/IBinder;Landroid/content/res/Configuration;Landroid/content/res/Configuration;Landroid/content/res/Configuration;ZLjava/lang/Boolean;)Z
 HSPLandroid/window/ConfigurationHelper;->shouldUpdateWindowMetricsBounds(Landroid/content/res/Configuration;Landroid/content/res/Configuration;)Z
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda0;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda10;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda11;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda12;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda13;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda14;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda15;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda16;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda17;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda18;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda19;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda1;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda20;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda21;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda22;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda23;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda24;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda25;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda26;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda27;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda28;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda29;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda2;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda30;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda31;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda32;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda3;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda4;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda5;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda6;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda7;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda8;-><init>()V
-SPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda9;-><init>()V
-SPLandroid/window/DesktopModeFlags$ToggleOverride;->$values()[Landroid/window/DesktopModeFlags$ToggleOverride;
-SPLandroid/window/DesktopModeFlags$ToggleOverride;-><clinit>()V
-SPLandroid/window/DesktopModeFlags$ToggleOverride;-><init>(Ljava/lang/String;I)V
-SPLandroid/window/DesktopModeFlags$ToggleOverride;->fromSetting(ILandroid/window/DesktopModeFlags$ToggleOverride;)Landroid/window/DesktopModeFlags$ToggleOverride;
-SPLandroid/window/DesktopModeFlags$ToggleOverride;->getSetting()I
-SPLandroid/window/DesktopModeFlags;->$values()[Landroid/window/DesktopModeFlags;
-SPLandroid/window/DesktopModeFlags;-><clinit>()V
-HSPLandroid/window/DesktopModeFlags;->getToggleOverride(Landroid/content/ContentResolver;)Landroid/window/DesktopModeFlags$ToggleOverride;
-SPLandroid/window/DesktopModeFlags;->getToggleOverrideFromSystem(Landroid/content/ContentResolver;)Landroid/window/DesktopModeFlags$ToggleOverride;
-HSPLandroid/window/DesktopModeFlags;->isTrue()Z+]Landroid/app/Application;Landroid/app/Application;]Ljava/util/function/Supplier;megamorphic_types
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda0;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda10;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda11;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda12;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda13;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda14;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda15;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda16;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda17;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda18;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda19;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda1;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda20;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda21;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda22;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda23;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda24;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda25;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda26;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda27;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda28;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda29;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda2;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda30;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda31;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda32;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda3;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda4;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda5;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda6;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda7;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda8;-><init>()V
+HSPLandroid/window/DesktopModeFlags$$ExternalSyntheticLambda9;-><init>()V
+HSPLandroid/window/DesktopModeFlags$ToggleOverride;->$values()[Landroid/window/DesktopModeFlags$ToggleOverride;
+HSPLandroid/window/DesktopModeFlags$ToggleOverride;-><clinit>()V
+HSPLandroid/window/DesktopModeFlags$ToggleOverride;-><init>(Ljava/lang/String;I)V
+HSPLandroid/window/DesktopModeFlags$ToggleOverride;->fromSetting(ILandroid/window/DesktopModeFlags$ToggleOverride;)Landroid/window/DesktopModeFlags$ToggleOverride;
+HSPLandroid/window/DesktopModeFlags$ToggleOverride;->getSetting()I
+HSPLandroid/window/DesktopModeFlags;->$values()[Landroid/window/DesktopModeFlags;
+HSPLandroid/window/DesktopModeFlags;-><clinit>()V
+HSPLandroid/window/DesktopModeFlags;->isFlagTrue(Ljava/util/function/BooleanSupplier;Z)Z+]Landroid/app/Application;Landroid/app/Application;]Ljava/util/function/BooleanSupplier;megamorphic_types
+HSPLandroid/window/DesktopModeFlags;->isTrue()Z+]Landroid/app/Application;Landroid/app/Application;]Ljava/util/function/Supplier;Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda0;,Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda14;,Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda21;,Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda22;,Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda25;,Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda26;,Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda29;,Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda3;,Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda8;
 HSPLandroid/window/IOnBackInvokedCallback$Stub$Proxy;-><init>(Landroid/os/IBinder;)V
 HSPLandroid/window/IOnBackInvokedCallback$Stub$Proxy;->asBinder()Landroid/os/IBinder;
 HSPLandroid/window/IOnBackInvokedCallback$Stub;-><init>()V
@@ -21558,7 +21568,7 @@
 HSPLandroid/window/SurfaceSyncGroup$2;-><init>(Landroid/window/SurfaceSyncGroup;Z)V
 HSPLandroid/window/SurfaceSyncGroup$2;->onTransactionReady(Landroid/view/SurfaceControl$Transaction;)V
 HSPLandroid/window/SurfaceSyncGroup$ISurfaceSyncGroupImpl;->getSurfaceSyncGroup()Landroid/window/SurfaceSyncGroup;
-SPLandroid/window/SurfaceSyncGroup;->$r8$lambda$Kan-laRIbBzOqZCBkfLmwXUDtJA(Landroid/window/SurfaceSyncGroup;Ljava/util/function/Consumer;Landroid/view/SurfaceControl$Transaction;)V
+HSPLandroid/window/SurfaceSyncGroup;->$r8$lambda$Kan-laRIbBzOqZCBkfLmwXUDtJA(Landroid/window/SurfaceSyncGroup;Ljava/util/function/Consumer;Landroid/view/SurfaceControl$Transaction;)V
 HSPLandroid/window/SurfaceSyncGroup;->-$$Nest$fgetmLock(Landroid/window/SurfaceSyncGroup;)Ljava/lang/Object;
 HSPLandroid/window/SurfaceSyncGroup;->-$$Nest$fgetmPendingSyncs(Landroid/window/SurfaceSyncGroup;)Landroid/util/ArraySet;
 HSPLandroid/window/SurfaceSyncGroup;->-$$Nest$fgetmTransaction(Landroid/window/SurfaceSyncGroup;)Landroid/view/SurfaceControl$Transaction;
@@ -21629,7 +21639,7 @@
 HSPLandroid/window/WindowOnBackInvokedDispatcher;->hasImeOnBackInvokedDispatcher()Z
 HSPLandroid/window/WindowOnBackInvokedDispatcher;->isOnBackInvokedCallbackEnabled()Z
 HSPLandroid/window/WindowOnBackInvokedDispatcher;->isOnBackInvokedCallbackEnabled(Landroid/content/Context;)Z
-HSPLandroid/window/WindowOnBackInvokedDispatcher;->isOnBackInvokedCallbackEnabled(Landroid/content/pm/ActivityInfo;Landroid/content/pm/ApplicationInfo;Ljava/util/function/Supplier;)Z
+HSPLandroid/window/WindowOnBackInvokedDispatcher;->isOnBackInvokedCallbackEnabled(Landroid/content/pm/ActivityInfo;Landroid/content/pm/ApplicationInfo;Ljava/util/function/Supplier;)Z+]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;
 HSPLandroid/window/WindowOnBackInvokedDispatcher;->onConfigurationChanged(Landroid/content/res/Configuration;)V
 HSPLandroid/window/WindowOnBackInvokedDispatcher;->registerOnBackInvokedCallback(ILandroid/window/OnBackInvokedCallback;)V
 HSPLandroid/window/WindowOnBackInvokedDispatcher;->registerOnBackInvokedCallbackUnchecked(Landroid/window/OnBackInvokedCallback;I)V
@@ -21852,8 +21862,8 @@
 HSPLcom/android/i18n/timezone/internal/NioBufferIterator;->readInt()I
 HSPLcom/android/i18n/timezone/internal/NioBufferIterator;->readLongArray([JII)V
 HSPLcom/android/i18n/timezone/internal/NioBufferIterator;->skip(I)V
-SPLcom/android/i18n/util/ATrace;->traceBegin(Ljava/lang/String;)V
-SPLcom/android/i18n/util/ATrace;->traceEnd()V
+HSPLcom/android/i18n/util/ATrace;->traceBegin(Ljava/lang/String;)V
+HSPLcom/android/i18n/util/ATrace;->traceEnd()V
 HSPLcom/android/icu/charset/CharsetDecoderICU;-><init>(Ljava/nio/charset/Charset;FJ)V
 HSPLcom/android/icu/charset/CharsetDecoderICU;->decodeLoop(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;
 HSPLcom/android/icu/charset/CharsetDecoderICU;->getArray(Ljava/nio/ByteBuffer;)I
@@ -22074,40 +22084,46 @@
 HSPLcom/android/internal/hidden_from_bootclasspath/android/app/job/FeatureFlagsImpl;->handleAbandonedJobs()Z
 HSPLcom/android/internal/hidden_from_bootclasspath/android/app/job/FeatureFlagsImpl;->ignoreImportantWhileForeground()Z
 HSPLcom/android/internal/hidden_from_bootclasspath/android/app/job/Flags;->handleAbandonedJobs()Z+]Lcom/android/internal/hidden_from_bootclasspath/android/app/job/FeatureFlags;Lcom/android/internal/hidden_from_bootclasspath/android/app/job/FeatureFlagsImpl;
-SPLcom/android/internal/hidden_from_bootclasspath/android/companion/virtualdevice/flags/FeatureFlagsImpl;-><init>()V
+HSPLcom/android/internal/hidden_from_bootclasspath/android/companion/virtualdevice/flags/FeatureFlagsImpl;-><init>()V
 HSPLcom/android/internal/hidden_from_bootclasspath/android/companion/virtualdevice/flags/FeatureFlagsImpl;->displayPowerManagerApis()Z
-SPLcom/android/internal/hidden_from_bootclasspath/android/companion/virtualdevice/flags/Flags;-><clinit>()V
+HSPLcom/android/internal/hidden_from_bootclasspath/android/companion/virtualdevice/flags/Flags;-><clinit>()V
 HSPLcom/android/internal/hidden_from_bootclasspath/android/companion/virtualdevice/flags/Flags;->displayPowerManagerApis()Z+]Lcom/android/internal/hidden_from_bootclasspath/android/companion/virtualdevice/flags/FeatureFlags;Lcom/android/internal/hidden_from_bootclasspath/android/companion/virtualdevice/flags/FeatureFlagsImpl;
 HSPLcom/android/internal/hidden_from_bootclasspath/android/content/pm/FeatureFlagsImpl;->relativeReferenceIntentFilters()Z
-SPLcom/android/internal/hidden_from_bootclasspath/android/net/http/FeatureFlagsImpl;-><init>()V
-SPLcom/android/internal/hidden_from_bootclasspath/android/net/http/FeatureFlagsImpl;->preloadHttpengineInZygote()Z
-SPLcom/android/internal/hidden_from_bootclasspath/android/net/http/Flags;-><clinit>()V
-SPLcom/android/internal/hidden_from_bootclasspath/android/net/http/Flags;->preloadHttpengineInZygote()Z
+HSPLcom/android/internal/hidden_from_bootclasspath/android/content/pm/Flags;->relativeReferenceIntentFilters()Z+]Lcom/android/internal/hidden_from_bootclasspath/android/content/pm/FeatureFlags;Lcom/android/internal/hidden_from_bootclasspath/android/content/pm/FeatureFlagsImpl;
+HSPLcom/android/internal/hidden_from_bootclasspath/android/net/http/FeatureFlagsImpl;-><init>()V
+HSPLcom/android/internal/hidden_from_bootclasspath/android/net/http/FeatureFlagsImpl;->preloadHttpengineInZygote()Z
+HSPLcom/android/internal/hidden_from_bootclasspath/android/net/http/Flags;-><clinit>()V
+HSPLcom/android/internal/hidden_from_bootclasspath/android/net/http/Flags;->preloadHttpengineInZygote()Z
 HSPLcom/android/internal/hidden_from_bootclasspath/android/os/FeatureFlagsImpl;->adpfMeasureDuringInputEventBoost()Z
-SPLcom/android/internal/hidden_from_bootclasspath/android/os/FeatureFlagsImpl;->enableAngleAllowList()Z
+HSPLcom/android/internal/hidden_from_bootclasspath/android/os/FeatureFlagsImpl;->enableAngleAllowList()Z
 HSPLcom/android/internal/hidden_from_bootclasspath/android/os/FeatureFlagsImpl;->messageQueueTailTracking()Z
-SPLcom/android/internal/hidden_from_bootclasspath/android/os/Flags;->enableAngleAllowList()Z
-SPLcom/android/internal/hidden_from_bootclasspath/android/security/FeatureFlagsImpl;->contentUriPermissionApis()Z
+HSPLcom/android/internal/hidden_from_bootclasspath/android/os/Flags;->enableAngleAllowList()Z
+SPLcom/android/internal/hidden_from_bootclasspath/android/security/FeatureFlagsImpl;->certificateTransparencyConfiguration()Z
+HSPLcom/android/internal/hidden_from_bootclasspath/android/security/FeatureFlagsImpl;->contentUriPermissionApis()Z
 HSPLcom/android/internal/hidden_from_bootclasspath/android/security/FeatureFlagsImpl;->preventIntentRedirect()Z
 HSPLcom/android/internal/hidden_from_bootclasspath/android/security/Flags;->contentUriPermissionApis()Z
 HSPLcom/android/internal/hidden_from_bootclasspath/android/security/Flags;->preventIntentRedirect()Z+]Lcom/android/internal/hidden_from_bootclasspath/android/security/FeatureFlags;Lcom/android/internal/hidden_from_bootclasspath/android/security/FeatureFlagsImpl;
-SPLcom/android/internal/hidden_from_bootclasspath/android/service/notification/FeatureFlagsImpl;->notificationClassification()Z
-SPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->enableCaptionCompatInsetForceConsumption()Z
+HSPLcom/android/internal/hidden_from_bootclasspath/android/service/notification/FeatureFlagsImpl;->notificationClassification()Z
+SPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->disableOptOutEdgeToEdge()Z
+HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->enableCaptionCompatInsetForceConsumption()Z
 HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->enableCaptionCompatInsetForceConsumptionAlways()Z
 HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->enableDesktopWindowingMode()Z
-SPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->predictiveBackPrioritySystemNavigationObserver()Z
-SPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->predictiveBackSystemOverrideCallback()Z
-SPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->scrollingFromLetterbox()Z
-SPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->sdkDesiredPresentTime()Z
-SPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->setScPropertiesInClient()Z
+HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->predictiveBackPrioritySystemNavigationObserver()Z
+HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->predictiveBackSystemOverrideCallback()Z
+HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->scrollingFromLetterbox()Z
+HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->sdkDesiredPresentTime()Z
+HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->setScPropertiesInClient()Z
+HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->showDesktopExperienceDevOption()Z
 HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->showDesktopWindowingDevOption()Z
-SPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->wlinfoOncreate()Z
+HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;->wlinfoOncreate()Z
+HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/Flags;->disableOptOutEdgeToEdge()Z
 HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/Flags;->enableCaptionCompatInsetForceConsumption()Z+]Lcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlags;Lcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;
 HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/Flags;->enableCaptionCompatInsetForceConsumptionAlways()Z+]Lcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlags;Lcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;
 HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/Flags;->enableDesktopWindowingMode()Z+]Lcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlags;Lcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;
-SPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/Flags;->scrollingFromLetterbox()Z
+HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/Flags;->scrollingFromLetterbox()Z
 HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/Flags;->setScPropertiesInClient()Z+]Lcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlags;Lcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;
-HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/Flags;->showDesktopWindowingDevOption()Z+]Lcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlags;Lcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;
+HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/Flags;->showDesktopExperienceDevOption()Z
+HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/Flags;->showDesktopWindowingDevOption()Z
 HSPLcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/Flags;->wlinfoOncreate()Z+]Lcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlags;Lcom/android/internal/hidden_from_bootclasspath/com/android/window/flags/FeatureFlagsImpl;
 HSPLcom/android/internal/infra/AndroidFuture$1;->complete(Lcom/android/internal/infra/AndroidFuture;)V
 HSPLcom/android/internal/infra/AndroidFuture$2;->createFromParcel(Landroid/os/Parcel;)Lcom/android/internal/infra/AndroidFuture;
@@ -22153,9 +22169,9 @@
 HSPLcom/android/internal/inputmethod/ImeTracing;->isSystemProcess()Z
 HSPLcom/android/internal/inputmethod/ImeTracingClientImpl;-><init>()V
 HSPLcom/android/internal/inputmethod/ImeTracingClientImpl;->triggerClientDump(Ljava/lang/String;Landroid/view/inputmethod/InputMethodManager;[B)V
-SPLcom/android/internal/inputmethod/ImeTracingPerfettoImpl$$ExternalSyntheticLambda3;-><init>(Ljava/util/concurrent/atomic/AtomicInteger;)V
-SPLcom/android/internal/inputmethod/ImeTracingPerfettoImpl$$ExternalSyntheticLambda4;-><init>(Ljava/util/concurrent/atomic/AtomicInteger;)V
-SPLcom/android/internal/inputmethod/ImeTracingPerfettoImpl;-><init>()V
+HSPLcom/android/internal/inputmethod/ImeTracingPerfettoImpl$$ExternalSyntheticLambda3;-><init>(Ljava/util/concurrent/atomic/AtomicInteger;)V
+HSPLcom/android/internal/inputmethod/ImeTracingPerfettoImpl$$ExternalSyntheticLambda4;-><init>(Ljava/util/concurrent/atomic/AtomicInteger;)V
+HSPLcom/android/internal/inputmethod/ImeTracingPerfettoImpl;-><init>()V
 HSPLcom/android/internal/inputmethod/ImeTracingPerfettoImpl;->isEnabled()Z
 HSPLcom/android/internal/inputmethod/ImeTracingPerfettoImpl;->triggerClientDump(Ljava/lang/String;Landroid/view/inputmethod/InputMethodManager;[B)V
 HSPLcom/android/internal/inputmethod/InputBindResult$1;-><init>()V
@@ -22229,14 +22245,14 @@
 HSPLcom/android/internal/net/NetworkUtilsInternal;-><clinit>()V
 HSPLcom/android/internal/os/AndroidPrintStream;-><init>(ILjava/lang/String;)V
 HSPLcom/android/internal/os/AndroidPrintStream;->log(Ljava/lang/String;)V
-SPLcom/android/internal/os/ApplicationSharedMemory;-><init>(Ljava/io/FileDescriptor;ZJ)V
-SPLcom/android/internal/os/ApplicationSharedMemory;->closeFileDescriptor()V
-SPLcom/android/internal/os/ApplicationSharedMemory;->fromFileDescriptor(Ljava/io/FileDescriptor;Z)Lcom/android/internal/os/ApplicationSharedMemory;
+HSPLcom/android/internal/os/ApplicationSharedMemory;-><init>(Ljava/io/FileDescriptor;ZJ)V
+HSPLcom/android/internal/os/ApplicationSharedMemory;->closeFileDescriptor()V
+HSPLcom/android/internal/os/ApplicationSharedMemory;->fromFileDescriptor(Ljava/io/FileDescriptor;Z)Lcom/android/internal/os/ApplicationSharedMemory;
 HSPLcom/android/internal/os/ApplicationSharedMemory;->getInstance()Lcom/android/internal/os/ApplicationSharedMemory;
-SPLcom/android/internal/os/ApplicationSharedMemory;->getSystemNonceBlock()J
-SPLcom/android/internal/os/ApplicationSharedMemory;->isMapped()Z
-SPLcom/android/internal/os/ApplicationSharedMemory;->isMutable()Z
-SPLcom/android/internal/os/ApplicationSharedMemory;->setInstance(Lcom/android/internal/os/ApplicationSharedMemory;)V
+HSPLcom/android/internal/os/ApplicationSharedMemory;->getSystemNonceBlock()J
+HSPLcom/android/internal/os/ApplicationSharedMemory;->isMapped()Z
+HSPLcom/android/internal/os/ApplicationSharedMemory;->isMutable()Z
+HSPLcom/android/internal/os/ApplicationSharedMemory;->setInstance(Lcom/android/internal/os/ApplicationSharedMemory;)V
 HSPLcom/android/internal/os/BackgroundThread;-><init>()V
 HSPLcom/android/internal/os/BackgroundThread;->ensureThreadLocked()V
 HSPLcom/android/internal/os/BackgroundThread;->getExecutor()Ljava/util/concurrent/Executor;
@@ -22300,9 +22316,9 @@
 HSPLcom/android/internal/os/DebugStore;->recordServiceCreate(Landroid/content/pm/ServiceInfo;)J+]Lcom/android/internal/os/DebugStore$DebugStoreNative;Lcom/android/internal/os/DebugStore$DebugStoreNativeImpl;
 HSPLcom/android/internal/os/DebugStore;->recordServiceOnStart(IILandroid/content/Intent;)J+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/internal/os/DebugStore$DebugStoreNative;Lcom/android/internal/os/DebugStore$DebugStoreNativeImpl;
 HSPLcom/android/internal/os/FeatureFlagsImpl;->applicationSharedMemoryEnabled()Z
-SPLcom/android/internal/os/FeatureFlagsImpl;->enableApacheHttpLegacyPreload()Z
+HSPLcom/android/internal/os/FeatureFlagsImpl;->enableApacheHttpLegacyPreload()Z
 HSPLcom/android/internal/os/Flags;->applicationSharedMemoryEnabled()Z+]Lcom/android/internal/os/FeatureFlags;Lcom/android/internal/os/FeatureFlagsImpl;
-SPLcom/android/internal/os/Flags;->enableApacheHttpLegacyPreload()Z
+HSPLcom/android/internal/os/Flags;->enableApacheHttpLegacyPreload()Z
 HSPLcom/android/internal/os/HandlerCaller$MyHandler;-><init>(Lcom/android/internal/os/HandlerCaller;Landroid/os/Looper;Z)V
 HSPLcom/android/internal/os/HandlerCaller$MyHandler;->handleMessage(Landroid/os/Message;)V
 HSPLcom/android/internal/os/HandlerCaller;-><init>(Landroid/content/Context;Landroid/os/Looper;Lcom/android/internal/os/HandlerCaller$Callback;Z)V
@@ -22341,6 +22357,12 @@
 HSPLcom/android/internal/os/ProcessCpuTracker;->collectStats(Ljava/lang/String;IZ[ILjava/util/ArrayList;)[I
 HSPLcom/android/internal/os/ProcessCpuTracker;->getName(Lcom/android/internal/os/ProcessCpuTracker$Stats;Ljava/lang/String;)V
 HSPLcom/android/internal/os/ProcessCpuTracker;->onMeasureProcessName(Ljava/lang/String;)I
+HSPLcom/android/internal/os/ProcfsMemoryUtil$MemorySnapshot;-><init>()V
+SPLcom/android/internal/os/ProcfsMemoryUtil;-><clinit>()V
+SPLcom/android/internal/os/ProcfsMemoryUtil;->readMemorySnapshotFromProcfs()Lcom/android/internal/os/ProcfsMemoryUtil$MemorySnapshot;
+HSPLcom/android/internal/os/ProcfsMemoryUtil;->readMemorySnapshotFromProcfs(Ljava/lang/String;)Lcom/android/internal/os/ProcfsMemoryUtil$MemorySnapshot;
+SPLcom/android/internal/os/ProcfsMemoryUtil;->readOomScoreAdjFromProcfs()I
+HSPLcom/android/internal/os/ProcfsMemoryUtil;->readOomScoreAdjFromProcfs(Ljava/lang/String;)I
 HSPLcom/android/internal/os/RuntimeInit$$ExternalSyntheticLambda0;->get()Ljava/lang/Object;
 HSPLcom/android/internal/os/RuntimeInit$$ExternalSyntheticLambda1;-><init>()V
 HSPLcom/android/internal/os/RuntimeInit$$ExternalSyntheticLambda1;->get()Ljava/lang/Object;
@@ -22348,7 +22370,7 @@
 HSPLcom/android/internal/os/RuntimeInit$Arguments;->parseArgs([Ljava/lang/String;)V
 HSPLcom/android/internal/os/RuntimeInit$KillApplicationHandler;-><init>(Lcom/android/internal/os/RuntimeInit$LoggingHandler;)V
 HSPLcom/android/internal/os/RuntimeInit$LoggingHandler;-><init>()V
-SPLcom/android/internal/os/RuntimeInit$LoggingHandler;-><init>(Lcom/android/internal/os/RuntimeInit-IA;)V
+HSPLcom/android/internal/os/RuntimeInit$LoggingHandler;-><init>(Lcom/android/internal/os/RuntimeInit-IA;)V
 HSPLcom/android/internal/os/RuntimeInit$MethodAndArgsCaller;-><init>(Ljava/lang/reflect/Method;[Ljava/lang/String;)V
 HSPLcom/android/internal/os/RuntimeInit$MethodAndArgsCaller;->run()V
 HSPLcom/android/internal/os/RuntimeInit;->applicationInit(I[J[Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Runnable;
@@ -22444,7 +22466,8 @@
 HSPLcom/android/internal/os/ZygoteServer;->isUsapPoolEnabled()Z
 HSPLcom/android/internal/os/ZygoteServer;->runSelectLoop(Ljava/lang/String;)Ljava/lang/Runnable;
 HSPLcom/android/internal/os/ZygoteServer;->setForkChild()V
-SPLcom/android/internal/pm/RoSystemFeatures;->maybeHasFeature(Ljava/lang/String;I)Ljava/lang/Boolean;
+HSPLcom/android/internal/os/logging/MetricsLoggerWrapper;->logPostGcMemorySnapshot()V+]Ljava/util/Collection;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;
+HSPLcom/android/internal/pm/RoSystemFeatures;->maybeHasFeature(Ljava/lang/String;I)Ljava/lang/Boolean;
 HSPLcom/android/internal/policy/DecorContext;-><init>(Landroid/content/Context;Lcom/android/internal/policy/PhoneWindow;)V
 HSPLcom/android/internal/policy/DecorContext;->getAutofillOptions()Landroid/content/AutofillOptions;
 HSPLcom/android/internal/policy/DecorContext;->getContentCaptureOptions()Landroid/content/ContentCaptureOptions;
@@ -22566,6 +22589,7 @@
 HSPLcom/android/internal/policy/PhoneWindow;->invalidatePanelMenu(I)V
 HSPLcom/android/internal/policy/PhoneWindow;->isEdgeToEdgeEnforced(Landroid/content/pm/ApplicationInfo;ZLandroid/content/res/TypedArray;)Z
 HSPLcom/android/internal/policy/PhoneWindow;->isFloating()Z
+HSPLcom/android/internal/policy/PhoneWindow;->isOptingOutEdgeToEdgeEnforcement(Landroid/content/pm/ApplicationInfo;ZLandroid/content/res/TypedArray;)Z+]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;
 HSPLcom/android/internal/policy/PhoneWindow;->isShowingWallpaper()Z
 HSPLcom/android/internal/policy/PhoneWindow;->isTranslucent()Z
 HSPLcom/android/internal/policy/PhoneWindow;->lambda$static$0(Landroid/view/View;Landroid/view/WindowInsets;)Landroid/util/Pair;
@@ -22601,61 +22625,61 @@
 HSPLcom/android/internal/policy/PhoneWindow;->superDispatchTouchEvent(Landroid/view/MotionEvent;)Z
 HSPLcom/android/internal/policy/ScreenDecorationsUtils;->supportsRoundedCornersOnWindows(Landroid/content/res/Resources;)Z
 HSPLcom/android/internal/policy/WearGestureInterceptionDetector;->isEnabled(Landroid/content/Context;)Z
-SPLcom/android/internal/protolog/IProtoLogClient$Stub;-><init>()V
-SPLcom/android/internal/protolog/PerfettoProtoLogImpl$$ExternalSyntheticLambda4;-><init>(Lcom/android/internal/protolog/PerfettoProtoLogImpl;)V
-SPLcom/android/internal/protolog/PerfettoProtoLogImpl$$ExternalSyntheticLambda4;->run(ILcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;)V
-SPLcom/android/internal/protolog/PerfettoProtoLogImpl$$ExternalSyntheticLambda5;-><init>(Lcom/android/internal/protolog/PerfettoProtoLogImpl;)V
-SPLcom/android/internal/protolog/PerfettoProtoLogImpl$$ExternalSyntheticLambda6;-><init>(Lcom/android/internal/protolog/PerfettoProtoLogImpl;)V
-SPLcom/android/internal/protolog/PerfettoProtoLogImpl;->$r8$lambda$MQ_SVaXmDujMW5ISGNMGvz8bOeI(Lcom/android/internal/protolog/PerfettoProtoLogImpl;ILcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;)V
-SPLcom/android/internal/protolog/PerfettoProtoLogImpl;-><init>(Lcom/android/internal/protolog/ProtoLogDataSource;Lcom/android/internal/protolog/ProtoLogCacheUpdater;[Lcom/android/internal/protolog/common/IProtoLogGroup;)V
-SPLcom/android/internal/protolog/PerfettoProtoLogImpl;-><init>(Lcom/android/internal/protolog/ProtoLogDataSource;Lcom/android/internal/protolog/ProtoLogCacheUpdater;[Lcom/android/internal/protolog/common/IProtoLogGroup;Lcom/android/internal/protolog/IProtoLogConfigurationService;)V
-SPLcom/android/internal/protolog/PerfettoProtoLogImpl;->enable()V
+HSPLcom/android/internal/protolog/IProtoLogClient$Stub;-><init>()V
+HSPLcom/android/internal/protolog/PerfettoProtoLogImpl$$ExternalSyntheticLambda4;-><init>(Lcom/android/internal/protolog/PerfettoProtoLogImpl;)V
+HSPLcom/android/internal/protolog/PerfettoProtoLogImpl$$ExternalSyntheticLambda4;->run(ILcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;)V
+HSPLcom/android/internal/protolog/PerfettoProtoLogImpl$$ExternalSyntheticLambda5;-><init>(Lcom/android/internal/protolog/PerfettoProtoLogImpl;)V
+HSPLcom/android/internal/protolog/PerfettoProtoLogImpl$$ExternalSyntheticLambda6;-><init>(Lcom/android/internal/protolog/PerfettoProtoLogImpl;)V
+HSPLcom/android/internal/protolog/PerfettoProtoLogImpl;->$r8$lambda$MQ_SVaXmDujMW5ISGNMGvz8bOeI(Lcom/android/internal/protolog/PerfettoProtoLogImpl;ILcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;)V
+HSPLcom/android/internal/protolog/PerfettoProtoLogImpl;-><init>(Lcom/android/internal/protolog/ProtoLogDataSource;Lcom/android/internal/protolog/ProtoLogCacheUpdater;[Lcom/android/internal/protolog/common/IProtoLogGroup;)V
+HSPLcom/android/internal/protolog/PerfettoProtoLogImpl;-><init>(Lcom/android/internal/protolog/ProtoLogDataSource;Lcom/android/internal/protolog/ProtoLogCacheUpdater;[Lcom/android/internal/protolog/common/IProtoLogGroup;Lcom/android/internal/protolog/IProtoLogConfigurationService;)V
+HSPLcom/android/internal/protolog/PerfettoProtoLogImpl;->enable()V
 HSPLcom/android/internal/protolog/PerfettoProtoLogImpl;->onTracingInstanceStart(ILcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;)V+]Lcom/android/internal/protolog/ProtoLogCacheUpdater;missing_types]Lcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;Lcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;]Ljava/util/Iterator;Ljava/util/HashMap$KeyIterator;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/Set;Ljava/util/HashMap$KeySet;
-SPLcom/android/internal/protolog/PerfettoProtoLogImpl;->readyToLogToLogcat()V
-SPLcom/android/internal/protolog/PerfettoProtoLogImpl;->registerGroupsLocally([Lcom/android/internal/protolog/common/IProtoLogGroup;)V
-SPLcom/android/internal/protolog/PerfettoProtoLogImpl;->verifyNoCollisionsOrDuplicates([Lcom/android/internal/protolog/common/IProtoLogGroup;)V
-SPLcom/android/internal/protolog/ProtoLog;-><clinit>()V
-SPLcom/android/internal/protolog/ProtoLog;->createAndEnableNewPerfettoProtoLogImpl(Lcom/android/internal/protolog/ProtoLogDataSource;[Lcom/android/internal/protolog/common/IProtoLogGroup;)Lcom/android/internal/protolog/PerfettoProtoLogImpl;
-SPLcom/android/internal/protolog/ProtoLog;->getSharedSingleInstanceDataSource()Lcom/android/internal/protolog/ProtoLogDataSource;
-SPLcom/android/internal/protolog/ProtoLog;->init([Lcom/android/internal/protolog/common/IProtoLogGroup;)V
-SPLcom/android/internal/protolog/ProtoLog;->initializePerfettoProtoLog([Lcom/android/internal/protolog/common/IProtoLogGroup;)V
-SPLcom/android/internal/protolog/ProtoLogDataSource$$ExternalSyntheticLambda0;-><init>(Lcom/android/internal/protolog/ProtoLogDataSource;)V
-SPLcom/android/internal/protolog/ProtoLogDataSource$$ExternalSyntheticLambda0;->run(ILcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;)V
-SPLcom/android/internal/protolog/ProtoLogDataSource$$ExternalSyntheticLambda1;-><init>(Lcom/android/internal/protolog/ProtoLogDataSource;)V
-SPLcom/android/internal/protolog/ProtoLogDataSource$$ExternalSyntheticLambda2;-><init>(Lcom/android/internal/protolog/ProtoLogDataSource;)V
+HSPLcom/android/internal/protolog/PerfettoProtoLogImpl;->readyToLogToLogcat()V
+HSPLcom/android/internal/protolog/PerfettoProtoLogImpl;->registerGroupsLocally([Lcom/android/internal/protolog/common/IProtoLogGroup;)V
+HSPLcom/android/internal/protolog/PerfettoProtoLogImpl;->verifyNoCollisionsOrDuplicates([Lcom/android/internal/protolog/common/IProtoLogGroup;)V
+HSPLcom/android/internal/protolog/ProtoLog;-><clinit>()V
+HSPLcom/android/internal/protolog/ProtoLog;->createAndEnableNewPerfettoProtoLogImpl(Lcom/android/internal/protolog/ProtoLogDataSource;[Lcom/android/internal/protolog/common/IProtoLogGroup;)Lcom/android/internal/protolog/PerfettoProtoLogImpl;
+HSPLcom/android/internal/protolog/ProtoLog;->getSharedSingleInstanceDataSource()Lcom/android/internal/protolog/ProtoLogDataSource;
+HSPLcom/android/internal/protolog/ProtoLog;->init([Lcom/android/internal/protolog/common/IProtoLogGroup;)V
+HSPLcom/android/internal/protolog/ProtoLog;->initializePerfettoProtoLog([Lcom/android/internal/protolog/common/IProtoLogGroup;)V
+HSPLcom/android/internal/protolog/ProtoLogDataSource$$ExternalSyntheticLambda0;-><init>(Lcom/android/internal/protolog/ProtoLogDataSource;)V
+HSPLcom/android/internal/protolog/ProtoLogDataSource$$ExternalSyntheticLambda0;->run(ILcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;)V
+HSPLcom/android/internal/protolog/ProtoLogDataSource$$ExternalSyntheticLambda1;-><init>(Lcom/android/internal/protolog/ProtoLogDataSource;)V
+HSPLcom/android/internal/protolog/ProtoLogDataSource$$ExternalSyntheticLambda2;-><init>(Lcom/android/internal/protolog/ProtoLogDataSource;)V
 HSPLcom/android/internal/protolog/ProtoLogDataSource$GroupConfig;-><init>(Lcom/android/internal/protolog/common/LogLevel;Z)V
-SPLcom/android/internal/protolog/ProtoLogDataSource$Instance;-><init>(Landroid/tracing/perfetto/DataSource;ILcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;Lcom/android/internal/protolog/ProtoLogDataSource$Instance$TracingInstanceStartCallback;Ljava/lang/Runnable;Lcom/android/internal/protolog/ProtoLogDataSource$Instance$TracingInstanceStopCallback;)V
-SPLcom/android/internal/protolog/ProtoLogDataSource$Instance;->onStart(Landroid/tracing/perfetto/StartCallbackArguments;)V
-SPLcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;-><clinit>()V
-SPLcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;-><init>(Lcom/android/internal/protolog/common/LogLevel;Ljava/util/Map;)V
-SPLcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;-><init>(Lcom/android/internal/protolog/common/LogLevel;Ljava/util/Map;Lcom/android/internal/protolog/ProtoLogDataSource-IA;)V
+HSPLcom/android/internal/protolog/ProtoLogDataSource$Instance;-><init>(Landroid/tracing/perfetto/DataSource;ILcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;Lcom/android/internal/protolog/ProtoLogDataSource$Instance$TracingInstanceStartCallback;Ljava/lang/Runnable;Lcom/android/internal/protolog/ProtoLogDataSource$Instance$TracingInstanceStopCallback;)V
+HSPLcom/android/internal/protolog/ProtoLogDataSource$Instance;->onStart(Landroid/tracing/perfetto/StartCallbackArguments;)V
+HSPLcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;-><clinit>()V
+HSPLcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;-><init>(Lcom/android/internal/protolog/common/LogLevel;Ljava/util/Map;)V
+HSPLcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;-><init>(Lcom/android/internal/protolog/common/LogLevel;Ljava/util/Map;Lcom/android/internal/protolog/ProtoLogDataSource-IA;)V
 HSPLcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;->getConfigFor(Ljava/lang/String;)Lcom/android/internal/protolog/ProtoLogDataSource$GroupConfig;+]Lcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;Lcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;]Ljava/util/Map;Ljava/util/HashMap;
 HSPLcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;->getDefaultGroupConfig()Lcom/android/internal/protolog/ProtoLogDataSource$GroupConfig;
-SPLcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;->getGroupTagsWithOverriddenConfigs()Ljava/util/Set;
-SPLcom/android/internal/protolog/ProtoLogDataSource;->$r8$lambda$UIYmd4vygAyNlpzo0qcmzUnaAs4(Lcom/android/internal/protolog/ProtoLogDataSource;ILcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;)V
-SPLcom/android/internal/protolog/ProtoLogDataSource;-><init>()V
-SPLcom/android/internal/protolog/ProtoLogDataSource;-><init>(Ljava/lang/String;)V
-SPLcom/android/internal/protolog/ProtoLogDataSource;->createInstance(Landroid/util/proto/ProtoInputStream;I)Landroid/tracing/perfetto/DataSourceInstance;
-SPLcom/android/internal/protolog/ProtoLogDataSource;->createInstance(Landroid/util/proto/ProtoInputStream;I)Lcom/android/internal/protolog/ProtoLogDataSource$Instance;
-SPLcom/android/internal/protolog/ProtoLogDataSource;->executeOnStartCallbacks(ILcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;)V
-SPLcom/android/internal/protolog/ProtoLogDataSource;->logLevelFromInt(I)Lcom/android/internal/protolog/common/LogLevel;
-SPLcom/android/internal/protolog/ProtoLogDataSource;->readProtoLogConfig(Landroid/util/proto/ProtoInputStream;)Lcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;
-SPLcom/android/internal/protolog/ProtoLogDataSource;->registerOnFlushCallback(Ljava/lang/Runnable;)V
-SPLcom/android/internal/protolog/ProtoLogDataSource;->registerOnStartCallback(Lcom/android/internal/protolog/ProtoLogDataSource$Instance$TracingInstanceStartCallback;)V
-SPLcom/android/internal/protolog/ProtoLogDataSource;->registerOnStopCallback(Lcom/android/internal/protolog/ProtoLogDataSource$Instance$TracingInstanceStopCallback;)V
-SPLcom/android/internal/protolog/ProtoLogGroup;-><init>(Ljava/lang/String;Ljava/lang/String;Z)V
-SPLcom/android/internal/protolog/ProtoLogGroup;->getId()I
+HSPLcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;->getGroupTagsWithOverriddenConfigs()Ljava/util/Set;
+HSPLcom/android/internal/protolog/ProtoLogDataSource;->$r8$lambda$UIYmd4vygAyNlpzo0qcmzUnaAs4(Lcom/android/internal/protolog/ProtoLogDataSource;ILcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;)V
+HSPLcom/android/internal/protolog/ProtoLogDataSource;-><init>()V
+HSPLcom/android/internal/protolog/ProtoLogDataSource;-><init>(Ljava/lang/String;)V
+HSPLcom/android/internal/protolog/ProtoLogDataSource;->createInstance(Landroid/util/proto/ProtoInputStream;I)Landroid/tracing/perfetto/DataSourceInstance;
+HSPLcom/android/internal/protolog/ProtoLogDataSource;->createInstance(Landroid/util/proto/ProtoInputStream;I)Lcom/android/internal/protolog/ProtoLogDataSource$Instance;
+HSPLcom/android/internal/protolog/ProtoLogDataSource;->executeOnStartCallbacks(ILcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;)V
+HSPLcom/android/internal/protolog/ProtoLogDataSource;->logLevelFromInt(I)Lcom/android/internal/protolog/common/LogLevel;
+HSPLcom/android/internal/protolog/ProtoLogDataSource;->readProtoLogConfig(Landroid/util/proto/ProtoInputStream;)Lcom/android/internal/protolog/ProtoLogDataSource$ProtoLogConfig;
+HSPLcom/android/internal/protolog/ProtoLogDataSource;->registerOnFlushCallback(Ljava/lang/Runnable;)V
+HSPLcom/android/internal/protolog/ProtoLogDataSource;->registerOnStartCallback(Lcom/android/internal/protolog/ProtoLogDataSource$Instance$TracingInstanceStartCallback;)V
+HSPLcom/android/internal/protolog/ProtoLogDataSource;->registerOnStopCallback(Lcom/android/internal/protolog/ProtoLogDataSource$Instance$TracingInstanceStopCallback;)V
+HSPLcom/android/internal/protolog/ProtoLogGroup;-><init>(Ljava/lang/String;Ljava/lang/String;Z)V
+HSPLcom/android/internal/protolog/ProtoLogGroup;->getId()I
 HSPLcom/android/internal/protolog/ProtoLogGroup;->name()Ljava/lang/String;
-SPLcom/android/internal/protolog/UnprocessedPerfettoProtoLogImpl$$ExternalSyntheticLambda0;-><init>()V
-SPLcom/android/internal/protolog/UnprocessedPerfettoProtoLogImpl$$ExternalSyntheticLambda0;->update(Lcom/android/internal/protolog/common/IProtoLog;)V
-SPLcom/android/internal/protolog/UnprocessedPerfettoProtoLogImpl;-><init>(Lcom/android/internal/protolog/ProtoLogDataSource;[Lcom/android/internal/protolog/common/IProtoLogGroup;)V
-SPLcom/android/internal/protolog/UnprocessedPerfettoProtoLogImpl;->lambda$new$0(Lcom/android/internal/protolog/common/IProtoLog;)V
-SPLcom/android/internal/protolog/common/LogLevel;->$values()[Lcom/android/internal/protolog/common/LogLevel;
-SPLcom/android/internal/protolog/common/LogLevel;-><clinit>()V
-SPLcom/android/internal/protolog/common/LogLevel;-><init>(Ljava/lang/String;ILjava/lang/String;I)V
+HSPLcom/android/internal/protolog/UnprocessedPerfettoProtoLogImpl$$ExternalSyntheticLambda0;-><init>()V
+HSPLcom/android/internal/protolog/UnprocessedPerfettoProtoLogImpl$$ExternalSyntheticLambda0;->update(Lcom/android/internal/protolog/common/IProtoLog;)V
+HSPLcom/android/internal/protolog/UnprocessedPerfettoProtoLogImpl;-><init>(Lcom/android/internal/protolog/ProtoLogDataSource;[Lcom/android/internal/protolog/common/IProtoLogGroup;)V
+HSPLcom/android/internal/protolog/UnprocessedPerfettoProtoLogImpl;->lambda$new$0(Lcom/android/internal/protolog/common/IProtoLog;)V
+HSPLcom/android/internal/protolog/common/LogLevel;->$values()[Lcom/android/internal/protolog/common/LogLevel;
+HSPLcom/android/internal/protolog/common/LogLevel;-><clinit>()V
+HSPLcom/android/internal/protolog/common/LogLevel;-><init>(Ljava/lang/String;ILjava/lang/String;I)V
 HSPLcom/android/internal/protolog/common/LogLevel;->values()[Lcom/android/internal/protolog/common/LogLevel;
-SPLcom/android/internal/ravenwood/RavenwoodEnvironment;->getInstance()Lcom/android/internal/ravenwood/RavenwoodEnvironment;
-SPLcom/android/internal/ravenwood/RavenwoodEnvironment;->isRunningOnRavenwood()Z
+HSPLcom/android/internal/ravenwood/RavenwoodEnvironment;->getInstance()Lcom/android/internal/ravenwood/RavenwoodEnvironment;
+HSPLcom/android/internal/ravenwood/RavenwoodEnvironment;->isRunningOnRavenwood()Z
 HSPLcom/android/internal/statusbar/IStatusBarService$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/statusbar/IStatusBarService;
 HSPLcom/android/internal/statusbar/NotificationVisibility;->recycle()V
 HSPLcom/android/internal/telecom/ClientTransactionalServiceRepository;-><clinit>()V
@@ -22873,6 +22897,7 @@
 HSPLcom/android/internal/util/FrameworkStatsLog;->write(IIII)V
 HSPLcom/android/internal/util/FrameworkStatsLog;->write(IIILjava/lang/String;I)V
 HSPLcom/android/internal/util/FrameworkStatsLog;->write(IIJII)V
+HSPLcom/android/internal/util/FrameworkStatsLog;->write(IILjava/lang/String;IIIIII[Ljava/lang/String;[J[J[J[J)V
 HSPLcom/android/internal/util/FrameworkStatsLog;->write(IILjava/lang/String;IZ)V
 HSPLcom/android/internal/util/FrameworkStatsLog;->write(ILjava/lang/String;I)V
 HSPLcom/android/internal/util/FrameworkStatsLog;->write(ILjava/lang/String;IIF)V
@@ -22953,7 +22978,7 @@
 HSPLcom/android/internal/util/ProcFileReader;->finishLine()V
 HSPLcom/android/internal/util/RateLimitingCache;->get(Lcom/android/internal/util/RateLimitingCache$ValueFetcher;)Ljava/lang/Object;+]Lcom/android/internal/util/RateLimitingCache$ValueFetcher;Landroid/app/ActivityManager$$ExternalSyntheticLambda0;,Landroid/app/ActivityManager$$ExternalSyntheticLambda1;,Landroid/app/ActivityManager$$ExternalSyntheticLambda2;,Landroid/app/ActivityManager$$ExternalSyntheticLambda3;]Lcom/android/internal/util/RateLimitingCache;Lcom/android/internal/util/RateLimitingCache;
 HSPLcom/android/internal/util/RateLimitingCache;->getTime()J
-HSPLcom/android/internal/util/RingBuffer;-><init>(Ljava/util/function/Supplier;Ljava/util/function/IntFunction;I)V+]Ljava/util/function/IntFunction;Landroid/database/sqlite/SQLiteConnection$OperationLog$$ExternalSyntheticLambda1;,Lcom/android/internal/util/RingBuffer$$ExternalSyntheticLambda1;
+HSPLcom/android/internal/util/RingBuffer;-><init>(Ljava/util/function/Supplier;Ljava/util/function/IntFunction;I)V+]Ljava/util/function/IntFunction;Landroid/database/sqlite/SQLiteConnection$OperationLog$$ExternalSyntheticLambda1;
 HSPLcom/android/internal/util/ScreenshotHelper;-><init>(Landroid/content/Context;)V
 HSPLcom/android/internal/util/StatLogger;->getTime()J
 HSPLcom/android/internal/util/StatLogger;->logDurationStat(IJ)J
@@ -23044,7 +23069,7 @@
 HSPLcom/android/internal/util/XmlUtils;->writeSetXml(Ljava/util/Set;Ljava/lang/String;Lcom/android/modules/utils/TypedXmlSerializer;)V
 HSPLcom/android/internal/util/XmlUtils;->writeValueXml(Ljava/lang/Object;Ljava/lang/String;Lcom/android/modules/utils/TypedXmlSerializer;)V
 HSPLcom/android/internal/util/XmlUtils;->writeValueXml(Ljava/lang/Object;Ljava/lang/String;Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/XmlUtils$WriteMapCallback;)V
-SPLcom/android/internal/util/function/pooled/OmniFunction;-><init>()V
+HSPLcom/android/internal/util/function/pooled/OmniFunction;-><init>()V
 HSPLcom/android/internal/util/function/pooled/OmniFunction;->run()V
 HSPLcom/android/internal/util/function/pooled/PooledLambda;->obtainMessage(Lcom/android/internal/util/function/HexConsumer;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Landroid/os/Message;
 HSPLcom/android/internal/util/function/pooled/PooledLambda;->obtainMessage(Lcom/android/internal/util/function/QuadConsumer;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Landroid/os/Message;
@@ -23057,10 +23082,10 @@
 HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl$LambdaType;->decodeArgCount(I)I
 HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl$LambdaType;->decodeReturnType(I)I
 HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl$LambdaType;->encode(II)I
-SPLcom/android/internal/util/function/pooled/PooledLambdaImpl$Pool;-><init>(Ljava/lang/Object;)V
+HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl$Pool;-><init>(Ljava/lang/Object;)V
 HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->-$$Nest$smmask(II)I
 HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->-$$Nest$smunmask(II)I
-SPLcom/android/internal/util/function/pooled/PooledLambdaImpl;-><clinit>()V
+HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;-><clinit>()V
 HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;-><init>()V
 HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->acquire(Lcom/android/internal/util/function/pooled/PooledLambdaImpl$Pool;)Lcom/android/internal/util/function/pooled/PooledLambdaImpl;
 HSPLcom/android/internal/util/function/pooled/PooledLambdaImpl;->acquire(Lcom/android/internal/util/function/pooled/PooledLambdaImpl$Pool;Ljava/lang/Object;IIILjava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/android/internal/util/function/pooled/PooledLambda;
@@ -23162,10 +23187,12 @@
 HSPLcom/android/internal/widget/LockPatternUtils;->isOwnerInfoEnabled(I)Z
 HSPLcom/android/internal/widget/LockPatternUtils;->isSecure(I)Z
 HSPLcom/android/internal/widget/LockPatternUtils;->isSeparateProfileChallengeEnabled(I)Z
-SPLcom/android/libcore/readonly/FeatureFlagsImpl;-><init>()V
+HSPLcom/android/libcore/readonly/FeatureFlagsImpl;-><init>()V
 HSPLcom/android/libcore/readonly/FeatureFlagsImpl;->nativeMetrics()Z
-SPLcom/android/libcore/readonly/Flags;-><clinit>()V
+SPLcom/android/libcore/readonly/FeatureFlagsImpl;->postCleanupApis()Z
+HSPLcom/android/libcore/readonly/Flags;-><clinit>()V
 HSPLcom/android/libcore/readonly/Flags;->nativeMetrics()Z+]Lcom/android/libcore/readonly/FeatureFlags;Lcom/android/libcore/readonly/FeatureFlagsImpl;
+SPLcom/android/libcore/readonly/Flags;->postCleanupApis()Z
 HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeBoolean(Ljava/lang/String;Ljava/lang/String;)Z+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser;
 HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeFloat(Ljava/lang/String;Ljava/lang/String;)F
 HSPLcom/android/modules/utils/TypedXmlPullParser;->getAttributeIndex(Ljava/lang/String;Ljava/lang/String;)I+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser;
@@ -23183,10 +23210,10 @@
 HSPLcom/android/net/module/util/NetworkCapabilitiesUtils;-><clinit>()V
 HSPLcom/android/os/coregraphics/HwuiStatsLog;->write(IIJI)V
 HSPLcom/android/server/LocalServices;->getService(Ljava/lang/Class;)Ljava/lang/Object;
-SPLcom/android/server/display/feature/flags/FeatureFlagsImpl;-><init>()V
-SPLcom/android/server/display/feature/flags/FeatureFlagsImpl;->displayListenerPerformanceImprovements()Z
-SPLcom/android/server/display/feature/flags/FeatureFlagsImpl;->subscribeGranularDisplayEvents()Z
-SPLcom/android/server/display/feature/flags/Flags;-><clinit>()V
+HSPLcom/android/server/display/feature/flags/FeatureFlagsImpl;-><init>()V
+HSPLcom/android/server/display/feature/flags/FeatureFlagsImpl;->displayListenerPerformanceImprovements()Z
+HSPLcom/android/server/display/feature/flags/FeatureFlagsImpl;->subscribeGranularDisplayEvents()Z
+HSPLcom/android/server/display/feature/flags/Flags;-><clinit>()V
 HSPLcom/android/server/display/feature/flags/Flags;->displayListenerPerformanceImprovements()Z+]Lcom/android/server/display/feature/flags/FeatureFlags;Lcom/android/server/display/feature/flags/FeatureFlagsImpl;
 HSPLcom/android/server/display/feature/flags/Flags;->subscribeGranularDisplayEvents()Z
 HSPLcom/android/telephony/Rlog;->d(Ljava/lang/String;Ljava/lang/String;)I
@@ -23334,6 +23361,7 @@
 Landroid/accounts/AccountManager$AmsTask$Response;
 Landroid/accounts/AccountManager$AmsTask;
 Landroid/accounts/AccountManager$BaseFutureTask$1;
+Landroid/accounts/AccountManager$BaseFutureTask$Response;
 Landroid/accounts/AccountManager$BaseFutureTask;
 Landroid/accounts/AccountManager$Future2Task$1;
 Landroid/accounts/AccountManager$Future2Task;
@@ -23348,6 +23376,7 @@
 Landroid/accounts/AuthenticatorDescription-IA;
 Landroid/accounts/AuthenticatorDescription;
 Landroid/accounts/AuthenticatorException;
+Landroid/accounts/IAccountAuthenticator$Stub$Proxy;
 Landroid/accounts/IAccountAuthenticator$Stub;
 Landroid/accounts/IAccountAuthenticator;
 Landroid/accounts/IAccountAuthenticatorResponse$Stub$Proxy;
@@ -23356,6 +23385,7 @@
 Landroid/accounts/IAccountManager$Stub$Proxy;
 Landroid/accounts/IAccountManager$Stub;
 Landroid/accounts/IAccountManager;
+Landroid/accounts/IAccountManagerResponse$Stub$Proxy;
 Landroid/accounts/IAccountManagerResponse$Stub;
 Landroid/accounts/IAccountManagerResponse;
 Landroid/accounts/NetworkErrorException;
@@ -23497,6 +23527,7 @@
 Landroid/app/ActivityManager$$ExternalSyntheticLambda1;
 Landroid/app/ActivityManager$$ExternalSyntheticLambda2;
 Landroid/app/ActivityManager$1;
+Landroid/app/ActivityManager$2;
 Landroid/app/ActivityManager$3;
 Landroid/app/ActivityManager$4;
 Landroid/app/ActivityManager$AppTask;
@@ -23547,8 +23578,10 @@
 Landroid/app/ActivityThread$3;
 Landroid/app/ActivityThread$4;
 Landroid/app/ActivityThread$5;
+Landroid/app/ActivityThread$6;
 Landroid/app/ActivityThread$ActivityClientRecord$1;
 Landroid/app/ActivityThread$ActivityClientRecord;
+Landroid/app/ActivityThread$AndroidOs;
 Landroid/app/ActivityThread$AppBindData;
 Landroid/app/ActivityThread$ApplicationThread$$ExternalSyntheticLambda2;
 Landroid/app/ActivityThread$ApplicationThread$1;
@@ -23582,6 +23615,7 @@
 Landroid/app/ActivityTransitionState;
 Landroid/app/AlarmManager$AlarmClockInfo$1;
 Landroid/app/AlarmManager$AlarmClockInfo;
+Landroid/app/AlarmManager$ListenerWrapper;
 Landroid/app/AlarmManager$OnAlarmListener;
 Landroid/app/AlarmManager;
 Landroid/app/AlertDialog$Builder;
@@ -23602,6 +23636,7 @@
 Landroid/app/AppOpsManager$$ExternalSyntheticLambda8;
 Landroid/app/AppOpsManager$1;
 Landroid/app/AppOpsManager$2;
+Landroid/app/AppOpsManager$3;
 Landroid/app/AppOpsManager$4;
 Landroid/app/AppOpsManager$AppOpsCollector;
 Landroid/app/AppOpsManager$AttributedHistoricalOps$1;
@@ -23671,6 +23706,7 @@
 Landroid/app/ApplicationPackageManager$MoveCallbackDelegate;
 Landroid/app/ApplicationPackageManager$ResourceName;
 Landroid/app/ApplicationPackageManager-IA;
+Landroid/app/ApplicationPackageManager;
 Landroid/app/AsyncNotedAppOp$1;
 Landroid/app/AsyncNotedAppOp;
 Landroid/app/AutomaticZenRule$1;
@@ -23699,6 +23735,7 @@
 Landroid/app/ContentProviderHolder;
 Landroid/app/ContextImpl$1;
 Landroid/app/ContextImpl$ApplicationContentResolver;
+Landroid/app/ContextImpl;
 Landroid/app/DexLoadReporter;
 Landroid/app/Dialog$$ExternalSyntheticLambda0;
 Landroid/app/Dialog$$ExternalSyntheticLambda1;
@@ -23784,6 +23821,7 @@
 Landroid/app/IApplicationStartInfoCompleteListener$Stub$Proxy;
 Landroid/app/IApplicationStartInfoCompleteListener$Stub;
 Landroid/app/IApplicationStartInfoCompleteListener;
+Landroid/app/IApplicationThread$Stub$Proxy;
 Landroid/app/IApplicationThread$Stub;
 Landroid/app/IApplicationThread;
 Landroid/app/IAssistDataReceiver$Stub$Proxy;
@@ -23827,11 +23865,13 @@
 Landroid/app/ISearchManager$Stub$Proxy;
 Landroid/app/ISearchManager$Stub;
 Landroid/app/ISearchManager;
+Landroid/app/IServiceConnection$Stub$Proxy;
 Landroid/app/IServiceConnection$Stub;
 Landroid/app/IServiceConnection;
 Landroid/app/IStopUserCallback$Stub$Proxy;
 Landroid/app/IStopUserCallback$Stub;
 Landroid/app/IStopUserCallback;
+Landroid/app/ITaskStackListener$Stub$Proxy;
 Landroid/app/ITaskStackListener$Stub;
 Landroid/app/ITaskStackListener;
 Landroid/app/ITransientNotification$Stub$Proxy;
@@ -23851,6 +23891,7 @@
 Landroid/app/IUidFrozenStateChangedCallback$Stub$Proxy;
 Landroid/app/IUidFrozenStateChangedCallback$Stub;
 Landroid/app/IUidFrozenStateChangedCallback;
+Landroid/app/IUidObserver$Stub$Proxy;
 Landroid/app/IUidObserver$Stub;
 Landroid/app/IUidObserver;
 Landroid/app/IUnsafeIntentStrictModeCallback$Stub;
@@ -23879,6 +23920,7 @@
 Landroid/app/IntentReceiverLeaked;
 Landroid/app/IntentService$ServiceHandler;
 Landroid/app/IntentService;
+Landroid/app/JobSchedulerImpl;
 Landroid/app/KeyguardManager$1;
 Landroid/app/KeyguardManager$2;
 Landroid/app/KeyguardManager$KeyguardDismissCallback;
@@ -23886,9 +23928,11 @@
 Landroid/app/ListActivity;
 Landroid/app/LoadedApk$ReceiverDispatcher$Args$$ExternalSyntheticLambda0;
 Landroid/app/LoadedApk$ReceiverDispatcher$Args;
+Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;
 Landroid/app/LoadedApk$ReceiverDispatcher;
 Landroid/app/LoadedApk$ServiceDispatcher$ConnectionInfo;
 Landroid/app/LoadedApk$ServiceDispatcher$DeathMonitor;
+Landroid/app/LoadedApk$ServiceDispatcher$InnerConnection;
 Landroid/app/LoadedApk$ServiceDispatcher$RunConnection;
 Landroid/app/LoadedApk$ServiceDispatcher;
 Landroid/app/LoadedApk$SplitDependencyLoaderImpl;
@@ -23945,6 +23989,7 @@
 Landroid/app/NotificationManager$NotificationKey;
 Landroid/app/NotificationManager$Policy$1;
 Landroid/app/NotificationManager$Policy;
+Landroid/app/NotificationManager$RateLimiter;
 Landroid/app/NotificationManager;
 Landroid/app/OnActivityPausedListener;
 Landroid/app/PackageInstallObserver$1;
@@ -23955,6 +24000,7 @@
 Landroid/app/PendingIntent$1;
 Landroid/app/PendingIntent$CancelListener;
 Landroid/app/PendingIntent$CanceledException;
+Landroid/app/PendingIntent$FinishedDispatcher;
 Landroid/app/PendingIntent$OnFinished;
 Landroid/app/PendingIntent$OnMarshaledListener;
 Landroid/app/PendingIntent;
@@ -24041,6 +24087,7 @@
 Landroid/app/SharedPreferencesImpl$MemoryCommitResult;
 Landroid/app/SharedPreferencesImpl$SharedPreferencesThreadFactory;
 Landroid/app/SharedPreferencesImpl-IA;
+Landroid/app/SharedPreferencesImpl;
 Landroid/app/StackTrace;
 Landroid/app/StatusBarManager;
 Landroid/app/SyncNotedAppOp$1;
@@ -24444,6 +24491,7 @@
 Landroid/app/job/JobService$1;
 Landroid/app/job/JobService;
 Landroid/app/job/JobServiceEngine$JobHandler;
+Landroid/app/job/JobServiceEngine$JobInterface;
 Landroid/app/job/JobServiceEngine;
 Landroid/app/job/JobWorkItem$1;
 Landroid/app/job/JobWorkItem;
@@ -24751,6 +24799,7 @@
 Landroid/content/ComponentName$WithComponentName;
 Landroid/content/ComponentName;
 Landroid/content/ContentCaptureOptions$1;
+Landroid/content/ContentCaptureOptions$ContentProtectionOptions$$ExternalSyntheticLambda0;
 Landroid/content/ContentCaptureOptions$ContentProtectionOptions$$ExternalSyntheticLambda1;
 Landroid/content/ContentCaptureOptions$ContentProtectionOptions$$ExternalSyntheticLambda2;
 Landroid/content/ContentCaptureOptions$ContentProtectionOptions;
@@ -24772,10 +24821,12 @@
 Landroid/content/ContentProviderOperation$Builder;
 Landroid/content/ContentProviderOperation-IA;
 Landroid/content/ContentProviderOperation;
+Landroid/content/ContentProviderProxy;
 Landroid/content/ContentProviderResult$1;
 Landroid/content/ContentProviderResult;
 Landroid/content/ContentResolver$1;
 Landroid/content/ContentResolver$2;
+Landroid/content/ContentResolver$CursorWrapperInner;
 Landroid/content/ContentResolver$OpenResourceIdResult;
 Landroid/content/ContentResolver$ParcelFileDescriptorInner;
 Landroid/content/ContentResolver$ResultListener;
@@ -24806,6 +24857,7 @@
 Landroid/content/IContentService$Stub$Proxy;
 Landroid/content/IContentService$Stub;
 Landroid/content/IContentService;
+Landroid/content/IIntentReceiver$Stub$Proxy;
 Landroid/content/IIntentReceiver$Stub;
 Landroid/content/IIntentReceiver;
 Landroid/content/IIntentSender$Stub$Proxy;
@@ -24979,6 +25031,7 @@
 Landroid/content/pm/ILauncherApps$Stub$Proxy;
 Landroid/content/pm/ILauncherApps$Stub;
 Landroid/content/pm/ILauncherApps;
+Landroid/content/pm/IOnAppsChangedListener$Stub$Proxy;
 Landroid/content/pm/IOnAppsChangedListener$Stub;
 Landroid/content/pm/IOnAppsChangedListener;
 Landroid/content/pm/IOnChecksumsReadyListener$Stub$Proxy;
@@ -25324,6 +25377,7 @@
 Landroid/content/res/ThemedResourceCache;
 Landroid/content/res/TypedArray;
 Landroid/content/res/Validator;
+Landroid/content/res/XmlBlock$Parser;
 Landroid/content/res/XmlBlock;
 Landroid/content/res/XmlResourceParser;
 Landroid/content/res/loader/AssetsProvider;
@@ -25357,6 +25411,7 @@
 Landroid/database/ContentObservable;
 Landroid/database/ContentObserver$$ExternalSyntheticLambda0;
 Landroid/database/ContentObserver$$ExternalSyntheticLambda1;
+Landroid/database/ContentObserver$Transport;
 Landroid/database/ContentObserver;
 Landroid/database/CrossProcessCursor;
 Landroid/database/CrossProcessCursorWrapper;
@@ -25375,6 +25430,7 @@
 Landroid/database/DatabaseUtils;
 Landroid/database/DefaultDatabaseErrorHandler;
 Landroid/database/IBulkCursor;
+Landroid/database/IContentObserver$Stub$Proxy;
 Landroid/database/IContentObserver$Stub;
 Landroid/database/IContentObserver;
 Landroid/database/MatrixCursor$RowBuilder;
@@ -25411,6 +25467,7 @@
 Landroid/database/sqlite/SQLiteConnectionPool-IA;
 Landroid/database/sqlite/SQLiteConnectionPool;
 Landroid/database/sqlite/SQLiteConstraintException;
+Landroid/database/sqlite/SQLiteCursor;
 Landroid/database/sqlite/SQLiteCursorDriver;
 Landroid/database/sqlite/SQLiteCustomFunction;
 Landroid/database/sqlite/SQLiteDatabase$$ExternalSyntheticLambda0;
@@ -25438,6 +25495,7 @@
 Landroid/database/sqlite/SQLiteFullException;
 Landroid/database/sqlite/SQLiteGlobal;
 Landroid/database/sqlite/SQLiteMisuseException;
+Landroid/database/sqlite/SQLiteOpenHelper$$ExternalSyntheticLambda0;
 Landroid/database/sqlite/SQLiteOpenHelper;
 Landroid/database/sqlite/SQLiteOutOfMemoryException;
 Landroid/database/sqlite/SQLiteProgram;
@@ -25510,6 +25568,7 @@
 Landroid/graphics/ColorSpace$Lab;
 Landroid/graphics/ColorSpace$Model;
 Landroid/graphics/ColorSpace$Named;
+Landroid/graphics/ColorSpace$OkLab;
 Landroid/graphics/ColorSpace$RenderIntent;
 Landroid/graphics/ColorSpace$Rgb$$ExternalSyntheticLambda0;
 Landroid/graphics/ColorSpace$Rgb$$ExternalSyntheticLambda1;
@@ -25916,6 +25975,7 @@
 Landroid/hardware/SystemSensorManager$InjectEventQueue;
 Landroid/hardware/SystemSensorManager$SensorEventQueue;
 Landroid/hardware/SystemSensorManager$TriggerEventQueue;
+Landroid/hardware/SystemSensorManager;
 Landroid/hardware/TriggerEvent;
 Landroid/hardware/TriggerEventListener;
 Landroid/hardware/biometrics/BiometricAuthenticator$AuthenticationCallback;
@@ -26193,6 +26253,7 @@
 Landroid/hardware/display/DisplayManager$$ExternalSyntheticLambda0;
 Landroid/hardware/display/DisplayManager$$ExternalSyntheticLambda1;
 Landroid/hardware/display/DisplayManager$$ExternalSyntheticLambda2;
+Landroid/hardware/display/DisplayManager$$ExternalSyntheticLambda3;
 Landroid/hardware/display/DisplayManager$DisplayListener;
 Landroid/hardware/display/DisplayManager$WeakDisplayCache;
 Landroid/hardware/display/DisplayManager-IA;
@@ -28250,8 +28311,13 @@
 Landroid/internal/aconfig/storage/AconfigStorageException;
 Landroid/internal/aconfig/storage/ByteBufferReader;
 Landroid/internal/aconfig/storage/FileType;
+Landroid/internal/aconfig/storage/FlagTable$Header;
+Landroid/internal/aconfig/storage/FlagTable;
+Landroid/internal/aconfig/storage/FlagValueList$Header;
+Landroid/internal/aconfig/storage/FlagValueList;
 Landroid/internal/aconfig/storage/PackageTable$Header;
 Landroid/internal/aconfig/storage/PackageTable;
+Landroid/internal/aconfig/storage/TableUtils$StorageFilesBundle;
 Landroid/internal/framework/protobuf/nano/InvalidProtocolBufferNanoException;
 Landroid/internal/framework/protobuf/nano/MessageNano;
 Landroid/internal/hidl/base/V1_0/DebugInfo;
@@ -28278,6 +28344,7 @@
 Landroid/internal/telephony/sysprop/TelephonyProperties$$ExternalSyntheticLambda8;
 Landroid/internal/telephony/sysprop/TelephonyProperties$$ExternalSyntheticLambda9;
 Landroid/internal/telephony/sysprop/TelephonyProperties;
+Landroid/location/CountryDetector;
 Landroid/location/Geofence$1;
 Landroid/location/Geofence;
 Landroid/location/IFusedGeofenceHardware$Stub$Proxy;
@@ -28286,11 +28353,16 @@
 Landroid/location/IGpsGeofenceHardware$Stub$Proxy;
 Landroid/location/IGpsGeofenceHardware$Stub;
 Landroid/location/IGpsGeofenceHardware;
+Landroid/location/ILocationManager$Stub$Proxy;
+Landroid/location/ILocationManager$Stub;
+Landroid/location/ILocationManager;
 Landroid/location/Location$$ExternalSyntheticLambda0;
 Landroid/location/Location$1;
 Landroid/location/Location$BearingDistanceCache;
 Landroid/location/Location-IA;
 Landroid/location/Location;
+Landroid/location/LocationManager$LocationEnabledCache;
+Landroid/location/LocationManager;
 Landroid/location/LocationTime$1;
 Landroid/location/LocationTime;
 Landroid/location/flags/FeatureFlags;
@@ -28322,8 +28394,10 @@
 Landroid/media/AudioGainConfig;
 Landroid/media/AudioHandle;
 Landroid/media/AudioManager$1;
+Landroid/media/AudioManager$2;
 Landroid/media/AudioManager$3;
 Landroid/media/AudioManager$4;
+Landroid/media/AudioManager$5;
 Landroid/media/AudioManager$AudioPlaybackCallback;
 Landroid/media/AudioManager$AudioPlaybackCallbackInfo;
 Landroid/media/AudioManager$AudioRecordingCallback;
@@ -28342,6 +28416,7 @@
 Landroid/media/AudioManager$SafeWaitObject;
 Landroid/media/AudioManager$ServiceEventHandlerDelegate$1;
 Landroid/media/AudioManager$ServiceEventHandlerDelegate;
+Landroid/media/AudioManager$VolumeCacheQuery;
 Landroid/media/AudioManager-IA;
 Landroid/media/AudioManager;
 Landroid/media/AudioManagerInternal$RingerModeDelegate;
@@ -28455,6 +28530,7 @@
 Landroid/media/IMediaRouter2;
 Landroid/media/IMediaRouter2Manager$Stub;
 Landroid/media/IMediaRouter2Manager;
+Landroid/media/IMediaRouterClient$Stub$Proxy;
 Landroid/media/IMediaRouterClient$Stub;
 Landroid/media/IMediaRouterClient;
 Landroid/media/IMediaRouterService$Stub$Proxy;
@@ -28507,7 +28583,9 @@
 Landroid/media/MediaCodec$CryptoInfo$Pattern;
 Landroid/media/MediaCodec$CryptoInfo;
 Landroid/media/MediaCodec$EventHandler;
+Landroid/media/MediaCodec$GlobalResourceInfo;
 Landroid/media/MediaCodec$IncompatibleWithBlockModelException;
+Landroid/media/MediaCodec$InstanceResourceInfo;
 Landroid/media/MediaCodec$InvalidBufferFlagsException;
 Landroid/media/MediaCodec$LinearBlock;
 Landroid/media/MediaCodec$OnFrameRenderedListener;
@@ -28857,6 +28935,7 @@
 Landroid/media/session/ISessionController$Stub$Proxy;
 Landroid/media/session/ISessionController$Stub;
 Landroid/media/session/ISessionController;
+Landroid/media/session/ISessionControllerCallback$Stub$Proxy;
 Landroid/media/session/ISessionControllerCallback$Stub;
 Landroid/media/session/ISessionControllerCallback;
 Landroid/media/session/ISessionManager$Stub$Proxy;
@@ -28985,6 +29064,8 @@
 Landroid/net/LocalSocket;
 Landroid/net/LocalSocketAddress$Namespace;
 Landroid/net/LocalSocketAddress;
+Landroid/net/LocalSocketImpl$SocketInputStream;
+Landroid/net/LocalSocketImpl$SocketOutputStream;
 Landroid/net/LocalSocketImpl;
 Landroid/net/MatchAllNetworkSpecifier$1;
 Landroid/net/MatchAllNetworkSpecifier;
@@ -29033,11 +29114,15 @@
 Landroid/net/Uri$AbstractHierarchicalUri;
 Landroid/net/Uri$AbstractPart;
 Landroid/net/Uri$Builder;
+Landroid/net/Uri$HierarchicalUri;
 Landroid/net/Uri$NotCachedHolder;
+Landroid/net/Uri$OpaqueUri;
 Landroid/net/Uri$Part$EmptyPart;
 Landroid/net/Uri$Part;
 Landroid/net/Uri$PathPart;
+Landroid/net/Uri$PathSegments;
 Landroid/net/Uri$PathSegmentsBuilder;
+Landroid/net/Uri$StringUri;
 Landroid/net/Uri-IA;
 Landroid/net/Uri;
 Landroid/net/UriCodec;
@@ -29287,7 +29372,6 @@
 Landroid/nfc/NfcOemExtension$$ExternalSyntheticLambda9;
 Landroid/nfc/NfcOemExtension$Callback;
 Landroid/nfc/NfcOemExtension$NfcOemExtensionCallback;
-Landroid/nfc/NfcOemExtension-IA;
 Landroid/nfc/NfcOemExtension;
 Landroid/nfc/NfcRoutingTableEntry;
 Landroid/nfc/NfcServiceManager$ServiceRegisterer;
@@ -29440,6 +29524,7 @@
 Landroid/os/BinderProxy$BinderProxyMapSizeException;
 Landroid/os/BinderProxy$NoImagePreloadHolder;
 Landroid/os/BinderProxy$ProxyMap;
+Landroid/os/BinderProxy;
 Landroid/os/BluetoothServiceManager$ServiceRegisterer;
 Landroid/os/BluetoothServiceManager;
 Landroid/os/BugreportManager;
@@ -29676,6 +29761,7 @@
 Landroid/os/LimitExceededException;
 Landroid/os/LocaleList$1;
 Landroid/os/LocaleList;
+Landroid/os/Looper$NoImagePreloadHolder;
 Landroid/os/Looper$Observer;
 Landroid/os/Looper;
 Landroid/os/MemoryFile;
@@ -29715,7 +29801,7 @@
 Landroid/os/PackageTagsList$1;
 Landroid/os/PackageTagsList;
 Landroid/os/Parcel$1;
-Landroid/os/Parcel$ClassLoaderProvider;
+Landroid/os/Parcel$2;
 Landroid/os/Parcel$LazyValue;
 Landroid/os/Parcel$ReadWriteHelper;
 Landroid/os/Parcel$SquashReadHelper;
@@ -29844,6 +29930,7 @@
 Landroid/os/StrictMode$2;
 Landroid/os/StrictMode$3;
 Landroid/os/StrictMode$4;
+Landroid/os/StrictMode$5;
 Landroid/os/StrictMode$6;
 Landroid/os/StrictMode$7;
 Landroid/os/StrictMode$8;
@@ -30646,6 +30733,7 @@
 Landroid/service/notification/NotificationListenerFilter$1;
 Landroid/service/notification/NotificationListenerFilter;
 Landroid/service/notification/NotificationListenerService$MyHandler;
+Landroid/service/notification/NotificationListenerService$NotificationListenerWrapper;
 Landroid/service/notification/NotificationListenerService$Ranking;
 Landroid/service/notification/NotificationListenerService$RankingMap$1;
 Landroid/service/notification/NotificationListenerService$RankingMap;
@@ -30660,6 +30748,7 @@
 Landroid/service/notification/ScheduleCalendar;
 Landroid/service/notification/SnoozeCriterion$1;
 Landroid/service/notification/SnoozeCriterion;
+Landroid/service/notification/StatusBarNotification$$ExternalSyntheticLambda0;
 Landroid/service/notification/StatusBarNotification$1;
 Landroid/service/notification/StatusBarNotification;
 Landroid/service/notification/ZenDeviceEffects$1;
@@ -30839,6 +30928,7 @@
 Landroid/system/keystore2/KeyParameters;
 Landroid/system/keystore2/OperationChallenge$1;
 Landroid/system/keystore2/OperationChallenge;
+Landroid/system/suspend/internal/ISuspendControlServiceInternal$Stub$Proxy;
 Landroid/system/suspend/internal/ISuspendControlServiceInternal$Stub;
 Landroid/system/suspend/internal/ISuspendControlServiceInternal;
 Landroid/system/suspend/internal/WakeLockInfo$1;
@@ -31126,6 +31216,7 @@
 Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda62;
 Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda6;
 Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda9;
+Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub;
 Landroid/telephony/PhoneStateListener;
 Landroid/telephony/PhysicalChannelConfig$1;
 Landroid/telephony/PhysicalChannelConfig$Builder;
@@ -31232,6 +31323,7 @@
 Landroid/telephony/TelephonyCallback$IPhoneStateListenerStub$$ExternalSyntheticLambda52;
 Landroid/telephony/TelephonyCallback$IPhoneStateListenerStub$$ExternalSyntheticLambda63;
 Landroid/telephony/TelephonyCallback$IPhoneStateListenerStub$$ExternalSyntheticLambda65;
+Landroid/telephony/TelephonyCallback$IPhoneStateListenerStub;
 Landroid/telephony/TelephonyCallback$ImsCallDisconnectCauseListener;
 Landroid/telephony/TelephonyCallback$LinkCapacityEstimateChangedListener;
 Landroid/telephony/TelephonyCallback$MediaQualityStatusChangedListener;
@@ -31293,6 +31385,7 @@
 Landroid/telephony/TelephonyRegistryManager$$ExternalSyntheticLambda1;
 Landroid/telephony/TelephonyRegistryManager$$ExternalSyntheticLambda2;
 Landroid/telephony/TelephonyRegistryManager$1$$ExternalSyntheticLambda0;
+Landroid/telephony/TelephonyRegistryManager$1;
 Landroid/telephony/TelephonyRegistryManager$2;
 Landroid/telephony/TelephonyRegistryManager$3;
 Landroid/telephony/TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda0;
@@ -31674,6 +31767,7 @@
 Landroid/text/SpanWatcher;
 Landroid/text/Spannable$Factory;
 Landroid/text/Spannable;
+Landroid/text/SpannableString;
 Landroid/text/SpannableStringBuilder;
 Landroid/text/SpannableStringInternal;
 Landroid/text/Spanned;
@@ -31924,6 +32018,7 @@
 Landroid/util/AndroidException;
 Landroid/util/AndroidRuntimeException;
 Landroid/util/ArrayMap$1;
+Landroid/util/ArrayMap;
 Landroid/util/ArraySet$1;
 Landroid/util/ArraySet;
 Landroid/util/AtomicFile;
@@ -31961,6 +32056,7 @@
 Landroid/util/FloatProperty;
 Landroid/util/Half;
 Landroid/util/IconDrawableFactory;
+Landroid/util/IndentingPrintWriter;
 Landroid/util/IntArray;
 Landroid/util/IntProperty;
 Landroid/util/JsonReader$1;
@@ -31992,6 +32088,11 @@
 Landroid/util/LongSparseLongArray;
 Landroid/util/LruCache;
 Landroid/util/MalformedJsonException;
+Landroid/util/MapCollections$ArrayIterator;
+Landroid/util/MapCollections$EntrySet;
+Landroid/util/MapCollections$KeySet;
+Landroid/util/MapCollections$MapIterator;
+Landroid/util/MapCollections$ValuesCollection;
 Landroid/util/MapCollections;
 Landroid/util/MathUtils;
 Landroid/util/MemoryIntArray$1;
@@ -32021,6 +32122,7 @@
 Landroid/util/Rational;
 Landroid/util/RecurrenceRule$1;
 Landroid/util/RecurrenceRule$NonrecurringIterator;
+Landroid/util/RecurrenceRule$RecurringIterator;
 Landroid/util/RecurrenceRule;
 Landroid/util/ReflectiveProperty;
 Landroid/util/RotationUtils;
@@ -32038,6 +32140,7 @@
 Landroid/util/SparseLongArray;
 Landroid/util/SparseSetArray;
 Landroid/util/Spline$LinearSpline;
+Landroid/util/Spline$MonotoneCubicSpline;
 Landroid/util/Spline;
 Landroid/util/StateSet;
 Landroid/util/StringBuilderPrinter;
@@ -32220,6 +32323,7 @@
 Landroid/view/IDisplayFoldListener$Stub$Proxy;
 Landroid/view/IDisplayFoldListener$Stub;
 Landroid/view/IDisplayFoldListener;
+Landroid/view/IDisplayWindowInsetsController$Stub$Proxy;
 Landroid/view/IDisplayWindowInsetsController$Stub;
 Landroid/view/IDisplayWindowInsetsController;
 Landroid/view/IDisplayWindowListener$Stub$Proxy;
@@ -32265,6 +32369,7 @@
 Landroid/view/ISurfaceControlViewHostParent;
 Landroid/view/ISystemGestureExclusionListener$Stub;
 Landroid/view/ISystemGestureExclusionListener;
+Landroid/view/IWallpaperVisibilityListener$Stub$Proxy;
 Landroid/view/IWallpaperVisibilityListener$Stub;
 Landroid/view/IWallpaperVisibilityListener;
 Landroid/view/IWindow$Stub;
@@ -32658,7 +32763,6 @@
 Landroid/view/ViewRootImpl$$ExternalSyntheticLambda8;
 Landroid/view/ViewRootImpl$$ExternalSyntheticLambda9;
 Landroid/view/ViewRootImpl$10;
-Landroid/view/ViewRootImpl$11$$ExternalSyntheticLambda3;
 Landroid/view/ViewRootImpl$11;
 Landroid/view/ViewRootImpl$1;
 Landroid/view/ViewRootImpl$2;
@@ -32704,6 +32808,7 @@
 Landroid/view/ViewRootImpl$ViewPostImeInputStage;
 Landroid/view/ViewRootImpl$ViewPreImeInputStage;
 Landroid/view/ViewRootImpl$ViewRootHandler;
+Landroid/view/ViewRootImpl$W;
 Landroid/view/ViewRootImpl$WindowInputEventReceiver;
 Landroid/view/ViewRootImpl-IA;
 Landroid/view/ViewRootImpl;
@@ -32772,6 +32877,7 @@
 Landroid/view/WindowManagerGlobal$TrustedPresentationListener;
 Landroid/view/WindowManagerGlobal-IA;
 Landroid/view/WindowManagerGlobal;
+Landroid/view/WindowManagerImpl;
 Landroid/view/WindowManagerPolicyConstants$PointerEventListener;
 Landroid/view/WindowManagerPolicyConstants;
 Landroid/view/WindowMetrics;
@@ -32789,6 +32895,7 @@
 Landroid/view/accessibility/AccessibilityManager$$ExternalSyntheticLambda1;
 Landroid/view/accessibility/AccessibilityManager$$ExternalSyntheticLambda3;
 Landroid/view/accessibility/AccessibilityManager$1$$ExternalSyntheticLambda0;
+Landroid/view/accessibility/AccessibilityManager$1;
 Landroid/view/accessibility/AccessibilityManager$AccessibilityPolicy;
 Landroid/view/accessibility/AccessibilityManager$AccessibilityServicesStateChangeListener;
 Landroid/view/accessibility/AccessibilityManager$AccessibilityStateChangeListener;
@@ -32832,6 +32939,7 @@
 Landroid/view/accessibility/IAccessibilityManager$Stub$Proxy;
 Landroid/view/accessibility/IAccessibilityManager$Stub;
 Landroid/view/accessibility/IAccessibilityManager;
+Landroid/view/accessibility/IAccessibilityManagerClient$Stub$Proxy;
 Landroid/view/accessibility/IAccessibilityManagerClient$Stub;
 Landroid/view/accessibility/IAccessibilityManagerClient;
 Landroid/view/accessibility/WeakSparseArray$WeakReferenceWithId;
@@ -33013,6 +33121,7 @@
 Landroid/view/inputmethod/IInputMethodSessionInvoker$$ExternalSyntheticLambda8;
 Landroid/view/inputmethod/IInputMethodSessionInvoker;
 Landroid/view/inputmethod/ImeTracker$1$$ExternalSyntheticLambda0;
+Landroid/view/inputmethod/ImeTracker$1;
 Landroid/view/inputmethod/ImeTracker$Debug$$ExternalSyntheticLambda0;
 Landroid/view/inputmethod/ImeTracker$Debug$$ExternalSyntheticLambda1;
 Landroid/view/inputmethod/ImeTracker$Debug$$ExternalSyntheticLambda2;
@@ -33559,10 +33668,12 @@
 Landroid/widget/RemoteViews$$ExternalSyntheticLambda5;
 Landroid/widget/RemoteViews$$ExternalSyntheticLambda6;
 Landroid/widget/RemoteViews$$ExternalSyntheticLambda7;
+Landroid/widget/RemoteViews$$ExternalSyntheticLambda8;
 Landroid/widget/RemoteViews$1;
 Landroid/widget/RemoteViews$2;
 Landroid/widget/RemoteViews$Action;
 Landroid/widget/RemoteViews$ActionException;
+Landroid/widget/RemoteViews$ApplicationInfoCache$$ExternalSyntheticLambda0;
 Landroid/widget/RemoteViews$ApplicationInfoCache;
 Landroid/widget/RemoteViews$AsyncApplyTask;
 Landroid/widget/RemoteViews$AttributeReflectionAction;
@@ -33783,6 +33894,12 @@
 Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda30;
 Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda31;
 Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda32;
+Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda33;
+Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda34;
+Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda35;
+Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda36;
+Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda37;
+Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda38;
 Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda3;
 Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda4;
 Landroid/window/DesktopModeFlags$$ExternalSyntheticLambda5;
@@ -33817,6 +33934,7 @@
 Landroid/window/ISurfaceSyncGroup;
 Landroid/window/ISurfaceSyncGroupCompletedListener$Stub;
 Landroid/window/ISurfaceSyncGroupCompletedListener;
+Landroid/window/ITaskFragmentOrganizer$Stub$Proxy;
 Landroid/window/ITaskFragmentOrganizer$Stub;
 Landroid/window/ITaskFragmentOrganizer;
 Landroid/window/ITaskFragmentOrganizerController$Stub;
@@ -33925,6 +34043,7 @@
 Landroid/window/WindowContainerTransaction;
 Landroid/window/WindowContext;
 Landroid/window/WindowContextController;
+Landroid/window/WindowContextInfo$1;
 Landroid/window/WindowContextInfo;
 Landroid/window/WindowInfosListener$DisplayInfo;
 Landroid/window/WindowInfosListener;
@@ -34155,6 +34274,7 @@
 Lcom/android/icu/charset/CharsetDecoderICU;
 Lcom/android/icu/charset/CharsetEncoderICU;
 Lcom/android/icu/charset/CharsetFactory;
+Lcom/android/icu/charset/CharsetICU;
 Lcom/android/icu/charset/NativeConverter;
 Lcom/android/icu/text/CompatibleDecimalFormatFactory;
 Lcom/android/icu/text/DateSorterBridge;
@@ -34667,6 +34787,7 @@
 Lcom/android/internal/appwidget/IAppWidgetService$Stub$Proxy;
 Lcom/android/internal/appwidget/IAppWidgetService$Stub;
 Lcom/android/internal/appwidget/IAppWidgetService;
+Lcom/android/internal/backup/IBackupTransport$Stub$Proxy;
 Lcom/android/internal/backup/IBackupTransport$Stub;
 Lcom/android/internal/backup/IBackupTransport;
 Lcom/android/internal/colorextraction/ColorExtractor$GradientColors;
@@ -34797,6 +34918,7 @@
 Lcom/android/internal/hidden_from_bootclasspath/android/service/notification/FeatureFlags;
 Lcom/android/internal/hidden_from_bootclasspath/android/service/notification/FeatureFlagsImpl;
 Lcom/android/internal/hidden_from_bootclasspath/android/service/notification/Flags;
+Lcom/android/internal/hidden_from_bootclasspath/android/view/contentcapture/flags/Flags;
 Lcom/android/internal/hidden_from_bootclasspath/com/android/libcore/FeatureFlags;
 Lcom/android/internal/hidden_from_bootclasspath/com/android/libcore/FeatureFlagsImpl;
 Lcom/android/internal/hidden_from_bootclasspath/com/android/libcore/Flags;
@@ -34851,6 +34973,7 @@
 Lcom/android/internal/inputmethod/IInputMethodPrivilegedOperations$Stub$Proxy;
 Lcom/android/internal/inputmethod/IInputMethodPrivilegedOperations$Stub;
 Lcom/android/internal/inputmethod/IInputMethodPrivilegedOperations;
+Lcom/android/internal/inputmethod/IInputMethodSession$Stub$Proxy;
 Lcom/android/internal/inputmethod/IInputMethodSession$Stub;
 Lcom/android/internal/inputmethod/IInputMethodSession;
 Lcom/android/internal/inputmethod/IRemoteAccessibilityInputConnection$Stub;
@@ -34862,6 +34985,7 @@
 Lcom/android/internal/inputmethod/ImeTracingClientImpl;
 Lcom/android/internal/inputmethod/ImeTracingPerfettoImpl$$ExternalSyntheticLambda3;
 Lcom/android/internal/inputmethod/ImeTracingPerfettoImpl$$ExternalSyntheticLambda4;
+Lcom/android/internal/inputmethod/ImeTracingPerfettoImpl;
 Lcom/android/internal/inputmethod/ImeTracingServerImpl;
 Lcom/android/internal/inputmethod/InputBindResult$1;
 Lcom/android/internal/inputmethod/InputBindResult-IA;
@@ -34991,6 +35115,7 @@
 Lcom/android/internal/os/CachedDeviceState$TimeInStateStopwatch;
 Lcom/android/internal/os/CachedDeviceState;
 Lcom/android/internal/os/ClassLoaderFactory;
+Lcom/android/internal/os/Clock$1;
 Lcom/android/internal/os/Clock;
 Lcom/android/internal/os/DebugStore$DebugStoreNative;
 Lcom/android/internal/os/DebugStore$DebugStoreNativeImpl;
@@ -35066,6 +35191,8 @@
 Lcom/android/internal/os/ProcessCpuTracker$FilterStats;
 Lcom/android/internal/os/ProcessCpuTracker$Stats;
 Lcom/android/internal/os/ProcessCpuTracker;
+Lcom/android/internal/os/ProcfsMemoryUtil$MemorySnapshot;
+Lcom/android/internal/os/ProcfsMemoryUtil;
 Lcom/android/internal/os/RailStats;
 Lcom/android/internal/os/RoSystemProperties;
 Lcom/android/internal/os/RpmStats$PowerStateElement;
@@ -35328,6 +35455,7 @@
 Lcom/android/internal/telephony/CellNetworkScanResult$1;
 Lcom/android/internal/telephony/CellNetworkScanResult;
 Lcom/android/internal/telephony/CellularNetworkService$CellularNetworkServiceProvider$1;
+Lcom/android/internal/telephony/CellularNetworkService$CellularNetworkServiceProvider;
 Lcom/android/internal/telephony/CellularNetworkService;
 Lcom/android/internal/telephony/ClientWakelockAccountant;
 Lcom/android/internal/telephony/ClientWakelockTracker;
@@ -35415,6 +35543,7 @@
 Lcom/android/internal/telephony/INumberVerificationCallback$Stub$Proxy;
 Lcom/android/internal/telephony/INumberVerificationCallback$Stub;
 Lcom/android/internal/telephony/INumberVerificationCallback;
+Lcom/android/internal/telephony/IOnSubscriptionsChangedListener$Stub$Proxy;
 Lcom/android/internal/telephony/IOnSubscriptionsChangedListener$Stub;
 Lcom/android/internal/telephony/IOnSubscriptionsChangedListener;
 Lcom/android/internal/telephony/IOns$Stub$Proxy;
@@ -35520,6 +35649,7 @@
 Lcom/android/internal/telephony/NetworkFactoryLegacyImpl$NetworkRequestInfo;
 Lcom/android/internal/telephony/NetworkFactoryLegacyImpl;
 Lcom/android/internal/telephony/NetworkFactoryShim;
+Lcom/android/internal/telephony/NetworkRegistrationManager$NetworkRegStateCallback;
 Lcom/android/internal/telephony/NetworkRegistrationManager$NetworkServiceConnection;
 Lcom/android/internal/telephony/NetworkRegistrationManager$RegManagerDeathRecipient;
 Lcom/android/internal/telephony/NetworkRegistrationManager;
@@ -35605,6 +35735,7 @@
 Lcom/android/internal/telephony/PhoneSubInfoController$$ExternalSyntheticLambda9;
 Lcom/android/internal/telephony/PhoneSubInfoController$CallPhoneMethodHelper;
 Lcom/android/internal/telephony/PhoneSubInfoController$PermissionCheckHelper;
+Lcom/android/internal/telephony/PhoneSubInfoController;
 Lcom/android/internal/telephony/ProxyController$1;
 Lcom/android/internal/telephony/ProxyController;
 Lcom/android/internal/telephony/RIL$RadioProxyDeathRecipient;
@@ -36177,6 +36308,7 @@
 Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$MmTelFeatureListener;
 Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$PhoneStateListener;
 Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$SharedPreferenceProxy;
+Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker$VtDataUsageProvider;
 Lcom/android/internal/telephony/imsphone/ImsPhoneCallTracker;
 Lcom/android/internal/telephony/imsphone/ImsPhoneCommandInterface;
 Lcom/android/internal/telephony/imsphone/ImsPhoneConnection$$ExternalSyntheticLambda0;
@@ -36713,6 +36845,7 @@
 Lcom/android/internal/util/FastMath;
 Lcom/android/internal/util/FastPrintWriter$DummyWriter;
 Lcom/android/internal/util/FastPrintWriter-IA;
+Lcom/android/internal/util/FastPrintWriter;
 Lcom/android/internal/util/FastXmlSerializer;
 Lcom/android/internal/util/FileRotator$FileInfo;
 Lcom/android/internal/util/FileRotator$Reader;
@@ -36733,6 +36866,7 @@
 Lcom/android/internal/util/HexDump;
 Lcom/android/internal/util/IState;
 Lcom/android/internal/util/ImageUtils;
+Lcom/android/internal/util/IndentingPrintWriter;
 Lcom/android/internal/util/IntPair;
 Lcom/android/internal/util/JournaledFile;
 Lcom/android/internal/util/LatencyTracker$$ExternalSyntheticLambda0;
@@ -36804,6 +36938,7 @@
 Lcom/android/internal/util/XmlPullParserWrapper;
 Lcom/android/internal/util/XmlSerializerWrapper;
 Lcom/android/internal/util/XmlUtils$ForcedTypedXmlPullParser;
+Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;
 Lcom/android/internal/util/XmlUtils$ReadMapCallback;
 Lcom/android/internal/util/XmlUtils$WriteMapCallback;
 Lcom/android/internal/util/XmlUtils;
@@ -36849,6 +36984,7 @@
 Lcom/android/internal/util/function/pooled/PooledLambdaImpl$LambdaType$ReturnType;
 Lcom/android/internal/util/function/pooled/PooledLambdaImpl$LambdaType;
 Lcom/android/internal/util/function/pooled/PooledLambdaImpl$Pool;
+Lcom/android/internal/util/function/pooled/PooledLambdaImpl;
 Lcom/android/internal/util/function/pooled/PooledPredicate;
 Lcom/android/internal/util/function/pooled/PooledRunnable;
 Lcom/android/internal/util/function/pooled/PooledSupplier$OfDouble;
@@ -37014,6 +37150,10 @@
 Lcom/android/nfc/x/android/nfc/FeatureFlags;
 Lcom/android/nfc/x/android/nfc/FeatureFlagsImpl;
 Lcom/android/nfc/x/android/nfc/Flags;
+Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/dsa/BCDSAPublicKey;
+Lcom/android/org/conscrypt/OpenSSLRSAPublicKey;
+Lcom/android/org/conscrypt/OpenSSLX509Certificate;
+Lcom/android/org/kxml2/io/KXmlParser;
 Lcom/android/os/coregraphics/HwuiStatsLog;
 Lcom/android/phone/ecc/nano/CodedInputByteBufferNano;
 Lcom/android/phone/ecc/nano/CodedOutputByteBufferNano$OutOfSpaceException;
@@ -37592,6 +37732,80 @@
 Lgov/nist/javax/sip/stack/UDPMessageChannel$PingBackTimerTask;
 Lgov/nist/javax/sip/stack/UDPMessageChannel;
 Lgov/nist/javax/sip/stack/UDPMessageProcessor;
+Ljava/io/ObjectOutputStream$PutFieldImpl;
+Ljava/lang/ThreadLocal$SuppliedThreadLocal;
+Ljava/nio/ByteBufferAsFloatBuffer;
+Ljava/nio/ByteBufferAsIntBuffer;
+Ljava/nio/ByteBufferAsLongBuffer;
+Ljava/nio/DirectByteBuffer;
+Ljava/nio/HeapByteBuffer;
+Ljava/security/MessageDigest$Delegate;
+Ljava/time/Clock$SystemClock;
+Ljava/util/ArrayDeque$DeqIterator;
+Ljava/util/ArrayList$Itr;
+Ljava/util/Arrays$ArrayItr;
+Ljava/util/Arrays$ArrayList;
+Ljava/util/Collections$3;
+Ljava/util/Collections$EmptyIterator;
+Ljava/util/Collections$EmptyList;
+Ljava/util/Collections$EmptySet;
+Ljava/util/Collections$SingletonMap;
+Ljava/util/Collections$UnmodifiableCollection$1;
+Ljava/util/Collections$UnmodifiableCollection;
+Ljava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$1;
+Ljava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$UnmodifiableEntry;
+Ljava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet;
+Ljava/util/Collections$UnmodifiableMap;
+Ljava/util/Collections$UnmodifiableRandomAccessList;
+Ljava/util/Collections$UnmodifiableSet;
+Ljava/util/Collections$UnmodifiableSortedSet;
+Ljava/util/HashMap$EntryIterator;
+Ljava/util/HashMap$EntrySet;
+Ljava/util/HashMap$KeyIterator;
+Ljava/util/HashMap$KeySet;
+Ljava/util/HashMap$Node;
+Ljava/util/HashMap$TreeNode;
+Ljava/util/HashMap$ValueIterator;
+Ljava/util/HashMap$Values;
+Ljava/util/ImmutableCollections$List12;
+Ljava/util/ImmutableCollections$ListItr;
+Ljava/util/ImmutableCollections$ListN;
+Ljava/util/ImmutableCollections$MapN;
+Ljava/util/ImmutableCollections$Set12;
+Ljava/util/ImmutableCollections$SetN;
+Ljava/util/LinkedHashMap$Entry;
+Ljava/util/LinkedHashMap$LinkedEntryIterator;
+Ljava/util/LinkedHashMap$LinkedEntrySet;
+Ljava/util/LinkedHashMap$LinkedKeyIterator;
+Ljava/util/LinkedHashMap$LinkedKeySet;
+Ljava/util/LinkedHashMap$LinkedValueIterator;
+Ljava/util/LinkedHashMap$LinkedValues;
+Ljava/util/LinkedList$ListItr;
+Ljava/util/TreeMap$EntryIterator;
+Ljava/util/TreeMap$EntrySet;
+Ljava/util/TreeMap$KeyIterator;
+Ljava/util/TreeMap$TreeMapEntry;
+Ljava/util/concurrent/ConcurrentHashMap$EntryIterator;
+Ljava/util/concurrent/ConcurrentHashMap$EntrySetView;
+Ljava/util/concurrent/ConcurrentHashMap$MapEntry;
+Ljava/util/concurrent/ConcurrentHashMap$ValueIterator;
+Ljava/util/concurrent/ConcurrentHashMap$ValuesView;
+Ljava/util/concurrent/ConcurrentLinkedQueue$Itr;
+Ljava/util/concurrent/CopyOnWriteArrayList$COWIterator;
+Ljava/util/concurrent/Executors$AutoShutdownDelegatedExecutorService;
+Ljava/util/concurrent/Executors$DelegatedScheduledExecutorService;
+Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
+Ljava/util/function/DoubleUnaryOperator$$ExternalSyntheticLambda2;
+Ljava/util/stream/DistinctOps$1;
+Ljava/util/stream/IntPipeline$10;
+Ljava/util/stream/IntPipeline$1;
+Ljava/util/stream/IntPipeline$4;
+Ljava/util/stream/IntPipeline$Head;
+Ljava/util/stream/ReferencePipeline$2;
+Ljava/util/stream/ReferencePipeline$3;
+Ljava/util/stream/ReferencePipeline$4;
+Ljava/util/stream/ReferencePipeline$Head;
+Ljava/util/stream/SortedOps$OfRef;
 Ljavax/microedition/khronos/egl/EGL10;
 Ljavax/microedition/khronos/egl/EGL11;
 Ljavax/microedition/khronos/egl/EGL;
@@ -37706,6 +37920,8 @@
 Ljavax/sip/message/MessageFactory;
 Ljavax/sip/message/Request;
 Ljavax/sip/message/Response;
+Llibcore/util/NativeAllocationRegistry$CleanerRunner;
+Llibcore/util/ZoneInfo;
 Lorg/apache/http/conn/ConnectTimeoutException;
 Lorg/apache/http/conn/scheme/HostNameResolver;
 Lorg/apache/http/conn/scheme/LayeredSocketFactory;
@@ -37721,6 +37937,7 @@
 Lorg/apache/http/params/CoreConnectionPNames;
 Lorg/apache/http/params/HttpConnectionParams;
 Lorg/apache/http/params/HttpParams;
+Lorg/ccil/cowan/tagsoup/AttributesImpl;
 Lorg/ccil/cowan/tagsoup/AutoDetector;
 Lorg/ccil/cowan/tagsoup/CommandLine;
 Lorg/ccil/cowan/tagsoup/Element;
@@ -37742,6 +37959,7 @@
 Lorg/ccil/cowan/tagsoup/jaxp/SAX1ParserAdapter;
 Lorg/ccil/cowan/tagsoup/jaxp/SAXFactoryImpl;
 Lorg/ccil/cowan/tagsoup/jaxp/SAXParserImpl;
+Lsun/nio/ch/FileChannelImpl;
 [Landroid/accounts/Account;
 [Landroid/accounts/AuthenticatorDescription;
 [Landroid/animation/Animator;
diff --git a/boot/preloaded-classes b/boot/preloaded-classes
index 47abe6b..f87828e 100644
--- a/boot/preloaded-classes
+++ b/boot/preloaded-classes
@@ -59,6 +59,7 @@
 android.accounts.AccountManager$AmsTask$Response
 android.accounts.AccountManager$AmsTask
 android.accounts.AccountManager$BaseFutureTask$1
+android.accounts.AccountManager$BaseFutureTask$Response
 android.accounts.AccountManager$BaseFutureTask
 android.accounts.AccountManager$Future2Task$1
 android.accounts.AccountManager$Future2Task
@@ -73,6 +74,7 @@
 android.accounts.AuthenticatorDescription-IA
 android.accounts.AuthenticatorDescription
 android.accounts.AuthenticatorException
+android.accounts.IAccountAuthenticator$Stub$Proxy
 android.accounts.IAccountAuthenticator$Stub
 android.accounts.IAccountAuthenticator
 android.accounts.IAccountAuthenticatorResponse$Stub$Proxy
@@ -81,6 +83,7 @@
 android.accounts.IAccountManager$Stub$Proxy
 android.accounts.IAccountManager$Stub
 android.accounts.IAccountManager
+android.accounts.IAccountManagerResponse$Stub$Proxy
 android.accounts.IAccountManagerResponse$Stub
 android.accounts.IAccountManagerResponse
 android.accounts.NetworkErrorException
@@ -93,6 +96,8 @@
 android.aconfig.nano.Aconfig$parsed_flag
 android.aconfig.nano.Aconfig$parsed_flags
 android.aconfig.nano.Aconfig$tracepoint
+android.adpf.FeatureFlags
+android.adpf.FeatureFlagsImpl
 android.adpf.Flags
 android.animation.AnimationHandler$$ExternalSyntheticLambda0
 android.animation.AnimationHandler$1
@@ -220,6 +225,7 @@
 android.app.ActivityManager$$ExternalSyntheticLambda1
 android.app.ActivityManager$$ExternalSyntheticLambda2
 android.app.ActivityManager$1
+android.app.ActivityManager$2
 android.app.ActivityManager$3
 android.app.ActivityManager$4
 android.app.ActivityManager$AppTask
@@ -270,11 +276,14 @@
 android.app.ActivityThread$3
 android.app.ActivityThread$4
 android.app.ActivityThread$5
+android.app.ActivityThread$6
 android.app.ActivityThread$ActivityClientRecord$1
 android.app.ActivityThread$ActivityClientRecord
+android.app.ActivityThread$AndroidOs
 android.app.ActivityThread$AppBindData
 android.app.ActivityThread$ApplicationThread$$ExternalSyntheticLambda2
 android.app.ActivityThread$ApplicationThread$1
+android.app.ActivityThread$ApplicationThread
 android.app.ActivityThread$BindServiceData
 android.app.ActivityThread$ContextCleanupInfo
 android.app.ActivityThread$CreateBackupAgentData
@@ -304,6 +313,7 @@
 android.app.ActivityTransitionState
 android.app.AlarmManager$AlarmClockInfo$1
 android.app.AlarmManager$AlarmClockInfo
+android.app.AlarmManager$ListenerWrapper
 android.app.AlarmManager$OnAlarmListener
 android.app.AlarmManager
 android.app.AlertDialog$Builder
@@ -324,6 +334,7 @@
 android.app.AppOpsManager$$ExternalSyntheticLambda8
 android.app.AppOpsManager$1
 android.app.AppOpsManager$2
+android.app.AppOpsManager$3
 android.app.AppOpsManager$4
 android.app.AppOpsManager$AppOpsCollector
 android.app.AppOpsManager$AttributedHistoricalOps$1
@@ -367,6 +378,7 @@
 android.app.AppOpsManagerInternal
 android.app.Application$ActivityLifecycleCallbacks
 android.app.Application$OnProvideAssistDataListener
+android.app.Application
 android.app.ApplicationErrorReport$1
 android.app.ApplicationErrorReport$AnrInfo
 android.app.ApplicationErrorReport$BatteryInfo
@@ -392,6 +404,7 @@
 android.app.ApplicationPackageManager$MoveCallbackDelegate
 android.app.ApplicationPackageManager$ResourceName
 android.app.ApplicationPackageManager-IA
+android.app.ApplicationPackageManager
 android.app.AsyncNotedAppOp$1
 android.app.AsyncNotedAppOp
 android.app.AutomaticZenRule$1
@@ -420,6 +433,7 @@
 android.app.ContentProviderHolder
 android.app.ContextImpl$1
 android.app.ContextImpl$ApplicationContentResolver
+android.app.ContextImpl
 android.app.DexLoadReporter
 android.app.Dialog$$ExternalSyntheticLambda0
 android.app.Dialog$$ExternalSyntheticLambda1
@@ -505,6 +519,7 @@
 android.app.IApplicationStartInfoCompleteListener$Stub$Proxy
 android.app.IApplicationStartInfoCompleteListener$Stub
 android.app.IApplicationStartInfoCompleteListener
+android.app.IApplicationThread$Stub$Proxy
 android.app.IApplicationThread$Stub
 android.app.IApplicationThread
 android.app.IAssistDataReceiver$Stub$Proxy
@@ -519,6 +534,7 @@
 android.app.IGameManagerService$Stub$Proxy
 android.app.IGameManagerService$Stub
 android.app.IGameManagerService
+android.app.IInstantAppResolver$Stub$Proxy
 android.app.IInstantAppResolver$Stub
 android.app.IInstantAppResolver
 android.app.IInstrumentationWatcher$Stub$Proxy
@@ -547,11 +563,13 @@
 android.app.ISearchManager$Stub$Proxy
 android.app.ISearchManager$Stub
 android.app.ISearchManager
+android.app.IServiceConnection$Stub$Proxy
 android.app.IServiceConnection$Stub
 android.app.IServiceConnection
 android.app.IStopUserCallback$Stub$Proxy
 android.app.IStopUserCallback$Stub
 android.app.IStopUserCallback
+android.app.ITaskStackListener$Stub$Proxy
 android.app.ITaskStackListener$Stub
 android.app.ITaskStackListener
 android.app.ITransientNotification$Stub$Proxy
@@ -571,6 +589,7 @@
 android.app.IUidFrozenStateChangedCallback$Stub$Proxy
 android.app.IUidFrozenStateChangedCallback$Stub
 android.app.IUidFrozenStateChangedCallback
+android.app.IUidObserver$Stub$Proxy
 android.app.IUidObserver$Stub
 android.app.IUidObserver
 android.app.IUnsafeIntentStrictModeCallback$Stub
@@ -599,6 +618,7 @@
 android.app.IntentReceiverLeaked
 android.app.IntentService$ServiceHandler
 android.app.IntentService
+android.app.JobSchedulerImpl
 android.app.KeyguardManager$1
 android.app.KeyguardManager$2
 android.app.KeyguardManager$KeyguardDismissCallback
@@ -606,9 +626,11 @@
 android.app.ListActivity
 android.app.LoadedApk$ReceiverDispatcher$Args$$ExternalSyntheticLambda0
 android.app.LoadedApk$ReceiverDispatcher$Args
+android.app.LoadedApk$ReceiverDispatcher$InnerReceiver
 android.app.LoadedApk$ReceiverDispatcher
 android.app.LoadedApk$ServiceDispatcher$ConnectionInfo
 android.app.LoadedApk$ServiceDispatcher$DeathMonitor
+android.app.LoadedApk$ServiceDispatcher$InnerConnection
 android.app.LoadedApk$ServiceDispatcher$RunConnection
 android.app.LoadedApk$ServiceDispatcher
 android.app.LoadedApk$SplitDependencyLoaderImpl
@@ -665,6 +687,7 @@
 android.app.NotificationManager$NotificationKey
 android.app.NotificationManager$Policy$1
 android.app.NotificationManager$Policy
+android.app.NotificationManager$RateLimiter
 android.app.NotificationManager
 android.app.OnActivityPausedListener
 android.app.PackageInstallObserver$1
@@ -675,6 +698,7 @@
 android.app.PendingIntent$1
 android.app.PendingIntent$CancelListener
 android.app.PendingIntent$CanceledException
+android.app.PendingIntent$FinishedDispatcher
 android.app.PendingIntent$OnFinished
 android.app.PendingIntent$OnMarshaledListener
 android.app.PendingIntent
@@ -760,6 +784,7 @@
 android.app.SharedPreferencesImpl$MemoryCommitResult
 android.app.SharedPreferencesImpl$SharedPreferencesThreadFactory
 android.app.SharedPreferencesImpl-IA
+android.app.SharedPreferencesImpl
 android.app.StackTrace
 android.app.StatusBarManager
 android.app.SyncNotedAppOp$1
@@ -1161,6 +1186,7 @@
 android.app.job.JobService$1
 android.app.job.JobService
 android.app.job.JobServiceEngine$JobHandler
+android.app.job.JobServiceEngine$JobInterface
 android.app.job.JobServiceEngine
 android.app.job.JobWorkItem$1
 android.app.job.JobWorkItem
@@ -1241,7 +1267,10 @@
 android.app.servertransaction.TopResumedActivityChangeItem
 android.app.servertransaction.TransactionExecutor
 android.app.servertransaction.TransactionExecutorHelper
+android.app.servertransaction.WindowStateInsetsControlChangeItem$1
+android.app.servertransaction.WindowStateInsetsControlChangeItem
 android.app.servertransaction.WindowStateTransactionItem$TransactionListener
+android.app.servertransaction.WindowStateTransactionItem
 android.app.slice.ISliceManager$Stub$Proxy
 android.app.slice.ISliceManager$Stub
 android.app.slice.ISliceManager
@@ -1463,6 +1492,7 @@
 android.content.ComponentName$WithComponentName
 android.content.ComponentName
 android.content.ContentCaptureOptions$1
+android.content.ContentCaptureOptions$ContentProtectionOptions$$ExternalSyntheticLambda0
 android.content.ContentCaptureOptions$ContentProtectionOptions$$ExternalSyntheticLambda1
 android.content.ContentCaptureOptions$ContentProtectionOptions$$ExternalSyntheticLambda2
 android.content.ContentCaptureOptions$ContentProtectionOptions
@@ -1484,10 +1514,12 @@
 android.content.ContentProviderOperation$Builder
 android.content.ContentProviderOperation-IA
 android.content.ContentProviderOperation
+android.content.ContentProviderProxy
 android.content.ContentProviderResult$1
 android.content.ContentProviderResult
 android.content.ContentResolver$1
 android.content.ContentResolver$2
+android.content.ContentResolver$CursorWrapperInner
 android.content.ContentResolver$OpenResourceIdResult
 android.content.ContentResolver$ParcelFileDescriptorInner
 android.content.ContentResolver$ResultListener
@@ -1518,6 +1550,7 @@
 android.content.IContentService$Stub$Proxy
 android.content.IContentService$Stub
 android.content.IContentService
+android.content.IIntentReceiver$Stub$Proxy
 android.content.IIntentReceiver$Stub
 android.content.IIntentReceiver
 android.content.IIntentSender$Stub$Proxy
@@ -1691,6 +1724,7 @@
 android.content.pm.ILauncherApps$Stub$Proxy
 android.content.pm.ILauncherApps$Stub
 android.content.pm.ILauncherApps
+android.content.pm.IOnAppsChangedListener$Stub$Proxy
 android.content.pm.IOnAppsChangedListener$Stub
 android.content.pm.IOnAppsChangedListener
 android.content.pm.IOnChecksumsReadyListener$Stub$Proxy
@@ -2036,6 +2070,7 @@
 android.content.res.ThemedResourceCache
 android.content.res.TypedArray
 android.content.res.Validator
+android.content.res.XmlBlock$Parser
 android.content.res.XmlBlock
 android.content.res.XmlResourceParser
 android.content.res.loader.AssetsProvider
@@ -2069,6 +2104,7 @@
 android.database.ContentObservable
 android.database.ContentObserver$$ExternalSyntheticLambda0
 android.database.ContentObserver$$ExternalSyntheticLambda1
+android.database.ContentObserver$Transport
 android.database.ContentObserver
 android.database.CrossProcessCursor
 android.database.CrossProcessCursorWrapper
@@ -2087,6 +2123,7 @@
 android.database.DatabaseUtils
 android.database.DefaultDatabaseErrorHandler
 android.database.IBulkCursor
+android.database.IContentObserver$Stub$Proxy
 android.database.IContentObserver$Stub
 android.database.IContentObserver
 android.database.MatrixCursor$RowBuilder
@@ -2123,6 +2160,7 @@
 android.database.sqlite.SQLiteConnectionPool-IA
 android.database.sqlite.SQLiteConnectionPool
 android.database.sqlite.SQLiteConstraintException
+android.database.sqlite.SQLiteCursor
 android.database.sqlite.SQLiteCursorDriver
 android.database.sqlite.SQLiteCustomFunction
 android.database.sqlite.SQLiteDatabase$$ExternalSyntheticLambda0
@@ -2149,6 +2187,7 @@
 android.database.sqlite.SQLiteFullException
 android.database.sqlite.SQLiteGlobal
 android.database.sqlite.SQLiteMisuseException
+android.database.sqlite.SQLiteOpenHelper$$ExternalSyntheticLambda0
 android.database.sqlite.SQLiteOpenHelper
 android.database.sqlite.SQLiteOutOfMemoryException
 android.database.sqlite.SQLiteProgram
@@ -2221,12 +2260,16 @@
 android.graphics.ColorSpace$Lab
 android.graphics.ColorSpace$Model
 android.graphics.ColorSpace$Named
+android.graphics.ColorSpace$OkLab
 android.graphics.ColorSpace$RenderIntent
 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda0
 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda1
 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda2
 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda3
+android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda4
 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda5
+android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda6
+android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda9
 android.graphics.ColorSpace$Rgb$Native
 android.graphics.ColorSpace$Rgb$NoImagePreloadHolder
 android.graphics.ColorSpace$Rgb$TransferParameters
@@ -2532,6 +2575,7 @@
 android.graphics.fonts.Font
 android.graphics.fonts.FontCustomizationParser$Result
 android.graphics.fonts.FontCustomizationParser
+android.graphics.fonts.FontFamily$Builder$NoImagePreloadHolder
 android.graphics.fonts.FontFamily$Builder
 android.graphics.fonts.FontFamily
 android.graphics.fonts.FontFileUtil
@@ -2622,6 +2666,7 @@
 android.hardware.SystemSensorManager$InjectEventQueue
 android.hardware.SystemSensorManager$SensorEventQueue
 android.hardware.SystemSensorManager$TriggerEventQueue
+android.hardware.SystemSensorManager
 android.hardware.TriggerEvent
 android.hardware.TriggerEventListener
 android.hardware.biometrics.BiometricAuthenticator$AuthenticationCallback
@@ -2906,6 +2951,7 @@
 android.hardware.display.DisplayManagerGlobal$1
 android.hardware.display.DisplayManagerGlobal$DisplayListenerDelegate$$ExternalSyntheticLambda0
 android.hardware.display.DisplayManagerGlobal$DisplayListenerDelegate
+android.hardware.display.DisplayManagerGlobal$DisplayManagerCallback
 android.hardware.display.DisplayManagerGlobal
 android.hardware.display.DisplayManagerInternal$DisplayPowerCallbacks
 android.hardware.display.DisplayManagerInternal$DisplayPowerRequest
@@ -2922,6 +2968,7 @@
 android.hardware.display.IDisplayManager$Stub$Proxy
 android.hardware.display.IDisplayManager$Stub
 android.hardware.display.IDisplayManager
+android.hardware.display.IDisplayManagerCallback$Stub$Proxy
 android.hardware.display.IDisplayManagerCallback$Stub
 android.hardware.display.IDisplayManagerCallback
 android.hardware.display.IVirtualDisplayCallback$Stub$Proxy
@@ -2996,6 +3043,7 @@
 android.hardware.hdmi.HdmiRecordSources$RecordSource
 android.hardware.input.HostUsiVersion$1
 android.hardware.input.HostUsiVersion
+android.hardware.input.IInputDevicesChangedListener$Stub$Proxy
 android.hardware.input.IInputDevicesChangedListener$Stub
 android.hardware.input.IInputDevicesChangedListener
 android.hardware.input.IInputManager$Stub$Proxy
@@ -3011,6 +3059,7 @@
 android.hardware.input.InputManager$InputDeviceListener
 android.hardware.input.InputManager
 android.hardware.input.InputManagerGlobal$InputDeviceListenerDelegate
+android.hardware.input.InputManagerGlobal$InputDevicesChangedListener
 android.hardware.input.InputManagerGlobal$OnTabletModeChangedListenerDelegate
 android.hardware.input.InputManagerGlobal-IA
 android.hardware.input.InputManagerGlobal
@@ -4604,6 +4653,7 @@
 android.icu.text.ReplaceableString
 android.icu.text.RuleBasedBreakIterator$BreakCache
 android.icu.text.RuleBasedBreakIterator$DictionaryCache
+android.icu.text.RuleBasedBreakIterator
 android.icu.text.RuleBasedCollator$CollationBuffer
 android.icu.text.RuleBasedCollator$CollationKeyByteSink
 android.icu.text.RuleBasedCollator$FCDUTF16NFDIterator
@@ -4951,8 +5001,13 @@
 android.internal.aconfig.storage.AconfigStorageException
 android.internal.aconfig.storage.ByteBufferReader
 android.internal.aconfig.storage.FileType
+android.internal.aconfig.storage.FlagTable$Header
+android.internal.aconfig.storage.FlagTable
+android.internal.aconfig.storage.FlagValueList$Header
+android.internal.aconfig.storage.FlagValueList
 android.internal.aconfig.storage.PackageTable$Header
 android.internal.aconfig.storage.PackageTable
+android.internal.aconfig.storage.TableUtils$StorageFilesBundle
 android.internal.framework.protobuf.nano.InvalidProtocolBufferNanoException
 android.internal.framework.protobuf.nano.MessageNano
 android.internal.hidl.base.V1_0.DebugInfo
@@ -4979,6 +5034,7 @@
 android.internal.telephony.sysprop.TelephonyProperties$$ExternalSyntheticLambda8
 android.internal.telephony.sysprop.TelephonyProperties$$ExternalSyntheticLambda9
 android.internal.telephony.sysprop.TelephonyProperties
+android.location.CountryDetector
 android.location.Geofence$1
 android.location.Geofence
 android.location.IFusedGeofenceHardware$Stub$Proxy
@@ -4987,11 +5043,14 @@
 android.location.IGpsGeofenceHardware$Stub$Proxy
 android.location.IGpsGeofenceHardware$Stub
 android.location.IGpsGeofenceHardware
+android.location.ILocationManager$Stub
+android.location.ILocationManager
 android.location.Location$$ExternalSyntheticLambda0
 android.location.Location$1
 android.location.Location$BearingDistanceCache
 android.location.Location-IA
 android.location.Location
+android.location.LocationManager
 android.location.LocationTime$1
 android.location.LocationTime
 android.location.flags.FeatureFlags
@@ -5023,6 +5082,7 @@
 android.media.AudioGainConfig
 android.media.AudioHandle
 android.media.AudioManager$1
+android.media.AudioManager$2
 android.media.AudioManager$3
 android.media.AudioManager$4
 android.media.AudioManager$AudioPlaybackCallback
@@ -5156,6 +5216,7 @@
 android.media.IMediaRouter2
 android.media.IMediaRouter2Manager$Stub
 android.media.IMediaRouter2Manager
+android.media.IMediaRouterClient$Stub$Proxy
 android.media.IMediaRouterClient$Stub
 android.media.IMediaRouterClient
 android.media.IMediaRouterService$Stub$Proxy
@@ -5318,6 +5379,7 @@
 android.media.MediaRouter$Static$Client$$ExternalSyntheticLambda0
 android.media.MediaRouter$Static$Client$$ExternalSyntheticLambda1
 android.media.MediaRouter$Static$Client$1
+android.media.MediaRouter$Static$Client
 android.media.MediaRouter$Static
 android.media.MediaRouter$UserRouteInfo$SessionVolumeProvider
 android.media.MediaRouter$UserRouteInfo
@@ -5526,6 +5588,7 @@
 android.media.quality.MediaQualityManager
 android.media.quality.PictureProfileHandle$1
 android.media.quality.PictureProfileHandle
+android.media.session.IActiveSessionsListener$Stub$Proxy
 android.media.session.IActiveSessionsListener$Stub
 android.media.session.IActiveSessionsListener
 android.media.session.IOnMediaKeyEventDispatchedListener$Stub$Proxy
@@ -5552,6 +5615,7 @@
 android.media.session.ISessionController$Stub$Proxy
 android.media.session.ISessionController$Stub
 android.media.session.ISessionController
+android.media.session.ISessionControllerCallback$Stub$Proxy
 android.media.session.ISessionControllerCallback$Stub
 android.media.session.ISessionControllerCallback
 android.media.session.ISessionManager$Stub$Proxy
@@ -5588,6 +5652,7 @@
 android.media.session.MediaSessionManager$RemoteUserInfo
 android.media.session.MediaSessionManager$Session2TokensChangedWrapper
 android.media.session.MediaSessionManager$SessionsChangedWrapper$1$$ExternalSyntheticLambda0
+android.media.session.MediaSessionManager$SessionsChangedWrapper$1
 android.media.session.MediaSessionManager$SessionsChangedWrapper
 android.media.session.MediaSessionManager-IA
 android.media.session.MediaSessionManager
@@ -5679,6 +5744,8 @@
 android.net.LocalSocket
 android.net.LocalSocketAddress$Namespace
 android.net.LocalSocketAddress
+android.net.LocalSocketImpl$SocketInputStream
+android.net.LocalSocketImpl$SocketOutputStream
 android.net.LocalSocketImpl
 android.net.MatchAllNetworkSpecifier$1
 android.net.MatchAllNetworkSpecifier
@@ -5727,11 +5794,15 @@
 android.net.Uri$AbstractHierarchicalUri
 android.net.Uri$AbstractPart
 android.net.Uri$Builder
+android.net.Uri$HierarchicalUri
 android.net.Uri$NotCachedHolder
+android.net.Uri$OpaqueUri
 android.net.Uri$Part$EmptyPart
 android.net.Uri$Part
 android.net.Uri$PathPart
+android.net.Uri$PathSegments
 android.net.Uri$PathSegmentsBuilder
+android.net.Uri$StringUri
 android.net.Uri-IA
 android.net.Uri
 android.net.UriCodec
@@ -5981,7 +6052,6 @@
 android.nfc.NfcOemExtension$$ExternalSyntheticLambda9
 android.nfc.NfcOemExtension$Callback
 android.nfc.NfcOemExtension$NfcOemExtensionCallback
-android.nfc.NfcOemExtension-IA
 android.nfc.NfcOemExtension
 android.nfc.NfcRoutingTableEntry
 android.nfc.NfcServiceManager$ServiceRegisterer
@@ -6134,6 +6204,7 @@
 android.os.BinderProxy$BinderProxyMapSizeException
 android.os.BinderProxy$NoImagePreloadHolder
 android.os.BinderProxy$ProxyMap
+android.os.BinderProxy
 android.os.BluetoothServiceManager$ServiceRegisterer
 android.os.BluetoothServiceManager
 android.os.BugreportManager
@@ -6208,6 +6279,7 @@
 android.os.Handler$MessengerImpl
 android.os.Handler-IA
 android.os.Handler
+android.os.HandlerExecutor
 android.os.HandlerThread
 android.os.HardwarePropertiesManager
 android.os.HidlMemory
@@ -6292,6 +6364,7 @@
 android.os.IRecoverySystemProgressListener$Stub$Proxy
 android.os.IRecoverySystemProgressListener$Stub
 android.os.IRecoverySystemProgressListener
+android.os.IRemoteCallback$Stub$Proxy
 android.os.IRemoteCallback$Stub
 android.os.IRemoteCallback
 android.os.ISchedulingPolicyService$Stub
@@ -6365,6 +6438,7 @@
 android.os.LimitExceededException
 android.os.LocaleList$1
 android.os.LocaleList
+android.os.Looper$NoImagePreloadHolder
 android.os.Looper$Observer
 android.os.Looper
 android.os.MemoryFile
@@ -6403,7 +6477,7 @@
 android.os.PackageTagsList$1
 android.os.PackageTagsList
 android.os.Parcel$1
-android.os.Parcel$ClassLoaderProvider
+android.os.Parcel$2
 android.os.Parcel$LazyValue
 android.os.Parcel$ReadWriteHelper
 android.os.Parcel$SquashReadHelper
@@ -6412,6 +6486,7 @@
 android.os.ParcelDuration
 android.os.ParcelFileDescriptor$1
 android.os.ParcelFileDescriptor$2
+android.os.ParcelFileDescriptor$AutoCloseInputStream
 android.os.ParcelFileDescriptor$AutoCloseOutputStream
 android.os.ParcelFileDescriptor$OnCloseListener
 android.os.ParcelFileDescriptor$Status
@@ -6531,12 +6606,14 @@
 android.os.StrictMode$2
 android.os.StrictMode$3
 android.os.StrictMode$4
+android.os.StrictMode$5
 android.os.StrictMode$6
 android.os.StrictMode$7
 android.os.StrictMode$8
 android.os.StrictMode$9
 android.os.StrictMode$AndroidBlockGuardPolicy$$ExternalSyntheticLambda0
 android.os.StrictMode$AndroidBlockGuardPolicy$$ExternalSyntheticLambda1
+android.os.StrictMode$AndroidBlockGuardPolicy
 android.os.StrictMode$AndroidCloseGuardReporter
 android.os.StrictMode$InstanceTracker
 android.os.StrictMode$OnThreadViolationListener
@@ -7009,6 +7086,7 @@
 android.security.KeyStoreSecurityLevel
 android.security.NetworkSecurityPolicy
 android.security.Scrypt
+android.security.advancedprotection.AdvancedProtectionManager
 android.security.attestationverification.AttestationVerificationManager
 android.security.authenticationpolicy.AuthenticationPolicyManager
 android.security.intrusiondetection.IntrusionDetectionManager
@@ -7312,6 +7390,7 @@
 android.service.notification.Condition$1
 android.service.notification.Condition
 android.service.notification.ConditionProviderService$H
+android.service.notification.ConditionProviderService$Provider
 android.service.notification.ConditionProviderService-IA
 android.service.notification.ConditionProviderService
 android.service.notification.IConditionProvider$Stub
@@ -7327,6 +7406,7 @@
 android.service.notification.NotificationListenerFilter$1
 android.service.notification.NotificationListenerFilter
 android.service.notification.NotificationListenerService$MyHandler
+android.service.notification.NotificationListenerService$NotificationListenerWrapper
 android.service.notification.NotificationListenerService$Ranking
 android.service.notification.NotificationListenerService$RankingMap$1
 android.service.notification.NotificationListenerService$RankingMap
@@ -7341,6 +7421,7 @@
 android.service.notification.ScheduleCalendar
 android.service.notification.SnoozeCriterion$1
 android.service.notification.SnoozeCriterion
+android.service.notification.StatusBarNotification$$ExternalSyntheticLambda0
 android.service.notification.StatusBarNotification$1
 android.service.notification.StatusBarNotification
 android.service.notification.ZenDeviceEffects$1
@@ -7382,6 +7463,7 @@
 android.service.storage.IExternalStorageService$Stub$Proxy
 android.service.storage.IExternalStorageService$Stub
 android.service.storage.IExternalStorageService
+android.service.textclassifier.ITextClassifierCallback$Stub$Proxy
 android.service.textclassifier.ITextClassifierCallback$Stub
 android.service.textclassifier.ITextClassifierCallback
 android.service.textclassifier.ITextClassifierService$Stub$Proxy
@@ -7516,6 +7598,7 @@
 android.system.keystore2.KeyParameters
 android.system.keystore2.OperationChallenge$1
 android.system.keystore2.OperationChallenge
+android.system.suspend.internal.ISuspendControlServiceInternal$Stub$Proxy
 android.system.suspend.internal.ISuspendControlServiceInternal$Stub
 android.system.suspend.internal.ISuspendControlServiceInternal
 android.system.suspend.internal.WakeLockInfo$1
@@ -7658,6 +7741,7 @@
 android.telephony.CellIdentityGsm$1
 android.telephony.CellIdentityGsm
 android.telephony.CellIdentityLte$1
+android.telephony.CellIdentityLte
 android.telephony.CellIdentityNr$1
 android.telephony.CellIdentityNr
 android.telephony.CellIdentityTdscdma$1
@@ -7685,6 +7769,7 @@
 android.telephony.CellSignalStrengthCdma
 android.telephony.CellSignalStrengthGsm$1
 android.telephony.CellSignalStrengthGsm-IA
+android.telephony.CellSignalStrengthGsm
 android.telephony.CellSignalStrengthLte$1
 android.telephony.CellSignalStrengthLte-IA
 android.telephony.CellSignalStrengthLte
@@ -7696,6 +7781,7 @@
 android.telephony.CellSignalStrengthTdscdma
 android.telephony.CellSignalStrengthWcdma$1
 android.telephony.CellSignalStrengthWcdma-IA
+android.telephony.CellSignalStrengthWcdma
 android.telephony.CellularIdentifierDisclosure
 android.telephony.ClientRequestStats$1
 android.telephony.ClientRequestStats
@@ -7800,6 +7886,7 @@
 android.telephony.PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda62
 android.telephony.PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda6
 android.telephony.PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda9
+android.telephony.PhoneStateListener$IPhoneStateListenerStub
 android.telephony.PhoneStateListener
 android.telephony.PhysicalChannelConfig$1
 android.telephony.PhysicalChannelConfig$Builder
@@ -7906,6 +7993,7 @@
 android.telephony.TelephonyCallback$IPhoneStateListenerStub$$ExternalSyntheticLambda52
 android.telephony.TelephonyCallback$IPhoneStateListenerStub$$ExternalSyntheticLambda63
 android.telephony.TelephonyCallback$IPhoneStateListenerStub$$ExternalSyntheticLambda65
+android.telephony.TelephonyCallback$IPhoneStateListenerStub
 android.telephony.TelephonyCallback$ImsCallDisconnectCauseListener
 android.telephony.TelephonyCallback$LinkCapacityEstimateChangedListener
 android.telephony.TelephonyCallback$MediaQualityStatusChangedListener
@@ -7967,7 +8055,9 @@
 android.telephony.TelephonyRegistryManager$$ExternalSyntheticLambda1
 android.telephony.TelephonyRegistryManager$$ExternalSyntheticLambda2
 android.telephony.TelephonyRegistryManager$1$$ExternalSyntheticLambda0
+android.telephony.TelephonyRegistryManager$1
 android.telephony.TelephonyRegistryManager$2
+android.telephony.TelephonyRegistryManager$3
 android.telephony.TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda0
 android.telephony.TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda1
 android.telephony.TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda2
@@ -8347,6 +8437,7 @@
 android.text.SpanWatcher
 android.text.Spannable$Factory
 android.text.Spannable
+android.text.SpannableString
 android.text.SpannableStringBuilder
 android.text.SpannableStringInternal
 android.text.Spanned
@@ -8508,9 +8599,11 @@
 android.tracing.FeatureFlags
 android.tracing.FeatureFlagsImpl
 android.tracing.Flags
+android.tracing.inputmethod.InputMethodDataSource
 android.tracing.perfetto.CreateIncrementalStateArgs
 android.tracing.perfetto.CreateTlsStateArgs
 android.tracing.perfetto.DataSource
+android.tracing.perfetto.DataSourceInstance
 android.tracing.perfetto.DataSourceParams$Builder
 android.tracing.perfetto.DataSourceParams
 android.tracing.perfetto.FlushCallbackArguments
@@ -8595,6 +8688,7 @@
 android.util.AndroidException
 android.util.AndroidRuntimeException
 android.util.ArrayMap$1
+android.util.ArrayMap
 android.util.ArraySet$1
 android.util.ArraySet
 android.util.AtomicFile
@@ -8632,6 +8726,7 @@
 android.util.FloatProperty
 android.util.Half
 android.util.IconDrawableFactory
+android.util.IndentingPrintWriter
 android.util.IntArray
 android.util.IntProperty
 android.util.JsonReader$1
@@ -8663,6 +8758,11 @@
 android.util.LongSparseLongArray
 android.util.LruCache
 android.util.MalformedJsonException
+android.util.MapCollections$ArrayIterator
+android.util.MapCollections$EntrySet
+android.util.MapCollections$KeySet
+android.util.MapCollections$MapIterator
+android.util.MapCollections$ValuesCollection
 android.util.MapCollections
 android.util.MathUtils
 android.util.MemoryIntArray$1
@@ -8692,6 +8792,7 @@
 android.util.Rational
 android.util.RecurrenceRule$1
 android.util.RecurrenceRule$NonrecurringIterator
+android.util.RecurrenceRule$RecurringIterator
 android.util.RecurrenceRule
 android.util.ReflectiveProperty
 android.util.RotationUtils
@@ -8709,6 +8810,7 @@
 android.util.SparseLongArray
 android.util.SparseSetArray
 android.util.Spline$LinearSpline
+android.util.Spline$MonotoneCubicSpline
 android.util.Spline
 android.util.StateSet
 android.util.StringBuilderPrinter
@@ -8890,8 +8992,10 @@
 android.view.IDisplayFoldListener$Stub$Proxy
 android.view.IDisplayFoldListener$Stub
 android.view.IDisplayFoldListener
+android.view.IDisplayWindowInsetsController$Stub$Proxy
 android.view.IDisplayWindowInsetsController$Stub
 android.view.IDisplayWindowInsetsController
+android.view.IDisplayWindowListener$Stub$Proxy
 android.view.IDisplayWindowListener$Stub
 android.view.IDisplayWindowListener
 android.view.IDockedStackListener$Stub$Proxy
@@ -8934,6 +9038,7 @@
 android.view.ISurfaceControlViewHostParent
 android.view.ISystemGestureExclusionListener$Stub
 android.view.ISystemGestureExclusionListener
+android.view.IWallpaperVisibilityListener$Stub$Proxy
 android.view.IWallpaperVisibilityListener$Stub
 android.view.IWallpaperVisibilityListener
 android.view.IWindow$Stub
@@ -9132,7 +9237,9 @@
 android.view.SurfaceControl$RefreshRateRange
 android.view.SurfaceControl$RefreshRateRanges
 android.view.SurfaceControl$StaticDisplayInfo
+android.view.SurfaceControl$Transaction$$ExternalSyntheticLambda0
 android.view.SurfaceControl$Transaction$$ExternalSyntheticLambda1
+android.view.SurfaceControl$Transaction$$ExternalSyntheticLambda3
 android.view.SurfaceControl$Transaction$1
 android.view.SurfaceControl$Transaction$2
 android.view.SurfaceControl$Transaction
@@ -9250,6 +9357,7 @@
 android.view.View$ScrollabilityCache
 android.view.View$SendAccessibilityEventThrottle
 android.view.View$SendViewScrolledAccessibilityEvent
+android.view.View$SensitiveAutofillHintsHelper
 android.view.View$TintInfo
 android.view.View$TooltipInfo
 android.view.View$TransformationInfo
@@ -9314,6 +9422,7 @@
 android.view.ViewRootImpl$$ExternalSyntheticLambda20
 android.view.ViewRootImpl$$ExternalSyntheticLambda21
 android.view.ViewRootImpl$$ExternalSyntheticLambda22
+android.view.ViewRootImpl$$ExternalSyntheticLambda23
 android.view.ViewRootImpl$$ExternalSyntheticLambda2
 android.view.ViewRootImpl$$ExternalSyntheticLambda3
 android.view.ViewRootImpl$$ExternalSyntheticLambda4
@@ -9368,6 +9477,7 @@
 android.view.ViewRootImpl$ViewPostImeInputStage
 android.view.ViewRootImpl$ViewPreImeInputStage
 android.view.ViewRootImpl$ViewRootHandler
+android.view.ViewRootImpl$W
 android.view.ViewRootImpl$WindowInputEventReceiver
 android.view.ViewRootImpl-IA
 android.view.ViewRootImpl
@@ -9436,6 +9546,7 @@
 android.view.WindowManagerGlobal$TrustedPresentationListener
 android.view.WindowManagerGlobal-IA
 android.view.WindowManagerGlobal
+android.view.WindowManagerImpl
 android.view.WindowManagerPolicyConstants$PointerEventListener
 android.view.WindowManagerPolicyConstants
 android.view.WindowMetrics
@@ -9453,6 +9564,7 @@
 android.view.accessibility.AccessibilityManager$$ExternalSyntheticLambda1
 android.view.accessibility.AccessibilityManager$$ExternalSyntheticLambda3
 android.view.accessibility.AccessibilityManager$1$$ExternalSyntheticLambda0
+android.view.accessibility.AccessibilityManager$1
 android.view.accessibility.AccessibilityManager$AccessibilityPolicy
 android.view.accessibility.AccessibilityManager$AccessibilityServicesStateChangeListener
 android.view.accessibility.AccessibilityManager$AccessibilityStateChangeListener
@@ -9496,6 +9608,7 @@
 android.view.accessibility.IAccessibilityManager$Stub$Proxy
 android.view.accessibility.IAccessibilityManager$Stub
 android.view.accessibility.IAccessibilityManager
+android.view.accessibility.IAccessibilityManagerClient$Stub$Proxy
 android.view.accessibility.IAccessibilityManagerClient$Stub
 android.view.accessibility.IAccessibilityManagerClient
 android.view.accessibility.WeakSparseArray$WeakReferenceWithId
@@ -9677,6 +9790,7 @@
 android.view.inputmethod.IInputMethodSessionInvoker$$ExternalSyntheticLambda8
 android.view.inputmethod.IInputMethodSessionInvoker
 android.view.inputmethod.ImeTracker$1$$ExternalSyntheticLambda0
+android.view.inputmethod.ImeTracker$1
 android.view.inputmethod.ImeTracker$Debug$$ExternalSyntheticLambda0
 android.view.inputmethod.ImeTracker$Debug$$ExternalSyntheticLambda1
 android.view.inputmethod.ImeTracker$Debug$$ExternalSyntheticLambda2
@@ -10226,6 +10340,7 @@
 android.widget.RemoteViews$2
 android.widget.RemoteViews$Action
 android.widget.RemoteViews$ActionException
+android.widget.RemoteViews$ApplicationInfoCache$$ExternalSyntheticLambda0
 android.widget.RemoteViews$ApplicationInfoCache
 android.widget.RemoteViews$AsyncApplyTask
 android.widget.RemoteViews$AttributeReflectionAction
@@ -10413,6 +10528,7 @@
 android.window.BackProgressAnimator$1
 android.window.BackProgressAnimator$ProgressCallback
 android.window.BackProgressAnimator
+android.window.BackTouchTracker$TouchTrackerState
 android.window.BackTouchTracker
 android.window.ClientWindowFrames$1
 android.window.ClientWindowFrames-IA
@@ -10479,6 +10595,7 @@
 android.window.ISurfaceSyncGroup
 android.window.ISurfaceSyncGroupCompletedListener$Stub
 android.window.ISurfaceSyncGroupCompletedListener
+android.window.ITaskFragmentOrganizer$Stub$Proxy
 android.window.ITaskFragmentOrganizer$Stub
 android.window.ITaskFragmentOrganizer
 android.window.ITaskFragmentOrganizerController$Stub
@@ -10816,6 +10933,7 @@
 com.android.icu.charset.CharsetDecoderICU
 com.android.icu.charset.CharsetEncoderICU
 com.android.icu.charset.CharsetFactory
+com.android.icu.charset.CharsetICU
 com.android.icu.charset.NativeConverter
 com.android.icu.text.CompatibleDecimalFormatFactory
 com.android.icu.text.DateSorterBridge
@@ -11241,6 +11359,7 @@
 com.android.internal.app.AlertController$RecycleListView
 com.android.internal.app.AlertController
 com.android.internal.app.AssistUtils
+com.android.internal.app.IAppOpsActiveCallback$Stub$Proxy
 com.android.internal.app.IAppOpsActiveCallback$Stub
 com.android.internal.app.IAppOpsActiveCallback
 com.android.internal.app.IAppOpsAsyncNotedCallback$Stub
@@ -11327,6 +11446,7 @@
 com.android.internal.appwidget.IAppWidgetService$Stub$Proxy
 com.android.internal.appwidget.IAppWidgetService$Stub
 com.android.internal.appwidget.IAppWidgetService
+com.android.internal.backup.IBackupTransport$Stub$Proxy
 com.android.internal.backup.IBackupTransport$Stub
 com.android.internal.backup.IBackupTransport
 com.android.internal.colorextraction.ColorExtractor$GradientColors
@@ -11511,6 +11631,7 @@
 com.android.internal.inputmethod.IInputMethodPrivilegedOperations$Stub$Proxy
 com.android.internal.inputmethod.IInputMethodPrivilegedOperations$Stub
 com.android.internal.inputmethod.IInputMethodPrivilegedOperations
+com.android.internal.inputmethod.IInputMethodSession$Stub$Proxy
 com.android.internal.inputmethod.IInputMethodSession$Stub
 com.android.internal.inputmethod.IInputMethodSession
 com.android.internal.inputmethod.IRemoteAccessibilityInputConnection$Stub
@@ -11520,6 +11641,9 @@
 com.android.internal.inputmethod.IRemoteInputConnection
 com.android.internal.inputmethod.ImeTracing
 com.android.internal.inputmethod.ImeTracingClientImpl
+com.android.internal.inputmethod.ImeTracingPerfettoImpl$$ExternalSyntheticLambda3
+com.android.internal.inputmethod.ImeTracingPerfettoImpl$$ExternalSyntheticLambda4
+com.android.internal.inputmethod.ImeTracingPerfettoImpl
 com.android.internal.inputmethod.ImeTracingServerImpl
 com.android.internal.inputmethod.InputBindResult$1
 com.android.internal.inputmethod.InputBindResult-IA
@@ -11647,6 +11771,7 @@
 com.android.internal.os.CachedDeviceState$TimeInStateStopwatch
 com.android.internal.os.CachedDeviceState
 com.android.internal.os.ClassLoaderFactory
+com.android.internal.os.Clock$1
 com.android.internal.os.Clock
 com.android.internal.os.DebugStore$DebugStoreNative
 com.android.internal.os.DebugStore$DebugStoreNativeImpl
@@ -11722,6 +11847,8 @@
 com.android.internal.os.ProcessCpuTracker$FilterStats
 com.android.internal.os.ProcessCpuTracker$Stats
 com.android.internal.os.ProcessCpuTracker
+com.android.internal.os.ProcfsMemoryUtil$MemorySnapshot
+com.android.internal.os.ProcfsMemoryUtil
 com.android.internal.os.RailStats
 com.android.internal.os.RoSystemProperties
 com.android.internal.os.RpmStats$PowerStateElement
@@ -11834,8 +11961,14 @@
 com.android.internal.protolog.PerfettoProtoLogImpl
 com.android.internal.protolog.ProtoLog
 com.android.internal.protolog.ProtoLogCacheUpdater
+com.android.internal.protolog.ProtoLogDataSource$$ExternalSyntheticLambda0
+com.android.internal.protolog.ProtoLogDataSource$$ExternalSyntheticLambda1
+com.android.internal.protolog.ProtoLogDataSource$$ExternalSyntheticLambda2
+com.android.internal.protolog.ProtoLogDataSource$GroupConfig
 com.android.internal.protolog.ProtoLogDataSource$Instance$TracingInstanceStartCallback
 com.android.internal.protolog.ProtoLogDataSource$Instance$TracingInstanceStopCallback
+com.android.internal.protolog.ProtoLogDataSource$Instance
+com.android.internal.protolog.ProtoLogDataSource$ProtoLogConfig
 com.android.internal.protolog.ProtoLogDataSource
 com.android.internal.protolog.ProtoLogGroup
 com.android.internal.protolog.ProtoLogImpl
@@ -11978,6 +12111,7 @@
 com.android.internal.telephony.CellNetworkScanResult$1
 com.android.internal.telephony.CellNetworkScanResult
 com.android.internal.telephony.CellularNetworkService$CellularNetworkServiceProvider$1
+com.android.internal.telephony.CellularNetworkService$CellularNetworkServiceProvider
 com.android.internal.telephony.CellularNetworkService
 com.android.internal.telephony.ClientWakelockAccountant
 com.android.internal.telephony.ClientWakelockTracker
@@ -12065,6 +12199,7 @@
 com.android.internal.telephony.INumberVerificationCallback$Stub$Proxy
 com.android.internal.telephony.INumberVerificationCallback$Stub
 com.android.internal.telephony.INumberVerificationCallback
+com.android.internal.telephony.IOnSubscriptionsChangedListener$Stub$Proxy
 com.android.internal.telephony.IOnSubscriptionsChangedListener$Stub
 com.android.internal.telephony.IOnSubscriptionsChangedListener
 com.android.internal.telephony.IOns$Stub$Proxy
@@ -12170,6 +12305,7 @@
 com.android.internal.telephony.NetworkFactoryLegacyImpl$NetworkRequestInfo
 com.android.internal.telephony.NetworkFactoryLegacyImpl
 com.android.internal.telephony.NetworkFactoryShim
+com.android.internal.telephony.NetworkRegistrationManager$NetworkRegStateCallback
 com.android.internal.telephony.NetworkRegistrationManager$NetworkServiceConnection
 com.android.internal.telephony.NetworkRegistrationManager$RegManagerDeathRecipient
 com.android.internal.telephony.NetworkRegistrationManager
@@ -12255,6 +12391,7 @@
 com.android.internal.telephony.PhoneSubInfoController$$ExternalSyntheticLambda9
 com.android.internal.telephony.PhoneSubInfoController$CallPhoneMethodHelper
 com.android.internal.telephony.PhoneSubInfoController$PermissionCheckHelper
+com.android.internal.telephony.PhoneSubInfoController
 com.android.internal.telephony.ProxyController$1
 com.android.internal.telephony.ProxyController
 com.android.internal.telephony.RIL$RadioProxyDeathRecipient
@@ -12827,6 +12964,7 @@
 com.android.internal.telephony.imsphone.ImsPhoneCallTracker$MmTelFeatureListener
 com.android.internal.telephony.imsphone.ImsPhoneCallTracker$PhoneStateListener
 com.android.internal.telephony.imsphone.ImsPhoneCallTracker$SharedPreferenceProxy
+com.android.internal.telephony.imsphone.ImsPhoneCallTracker$VtDataUsageProvider
 com.android.internal.telephony.imsphone.ImsPhoneCallTracker
 com.android.internal.telephony.imsphone.ImsPhoneCommandInterface
 com.android.internal.telephony.imsphone.ImsPhoneConnection$$ExternalSyntheticLambda0
@@ -13363,6 +13501,7 @@
 com.android.internal.util.FastMath
 com.android.internal.util.FastPrintWriter$DummyWriter
 com.android.internal.util.FastPrintWriter-IA
+com.android.internal.util.FastPrintWriter
 com.android.internal.util.FastXmlSerializer
 com.android.internal.util.FileRotator$FileInfo
 com.android.internal.util.FileRotator$Reader
@@ -13383,6 +13522,7 @@
 com.android.internal.util.HexDump
 com.android.internal.util.IState
 com.android.internal.util.ImageUtils
+com.android.internal.util.IndentingPrintWriter
 com.android.internal.util.IntPair
 com.android.internal.util.JournaledFile
 com.android.internal.util.LatencyTracker$$ExternalSyntheticLambda0
@@ -13452,6 +13592,7 @@
 com.android.internal.util.XmlPullParserWrapper
 com.android.internal.util.XmlSerializerWrapper
 com.android.internal.util.XmlUtils$ForcedTypedXmlPullParser
+com.android.internal.util.XmlUtils$ForcedTypedXmlSerializer
 com.android.internal.util.XmlUtils$ReadMapCallback
 com.android.internal.util.XmlUtils$WriteMapCallback
 com.android.internal.util.XmlUtils
@@ -13497,6 +13638,7 @@
 com.android.internal.util.function.pooled.PooledLambdaImpl$LambdaType$ReturnType
 com.android.internal.util.function.pooled.PooledLambdaImpl$LambdaType
 com.android.internal.util.function.pooled.PooledLambdaImpl$Pool
+com.android.internal.util.function.pooled.PooledLambdaImpl
 com.android.internal.util.function.pooled.PooledPredicate
 com.android.internal.util.function.pooled.PooledRunnable
 com.android.internal.util.function.pooled.PooledSupplier$OfDouble
@@ -13662,6 +13804,11 @@
 com.android.nfc.x.android.nfc.FeatureFlags
 com.android.nfc.x.android.nfc.FeatureFlagsImpl
 com.android.nfc.x.android.nfc.Flags
+com.android.org.bouncycastle.jcajce.provider.asymmetric.dsa.BCDSAPublicKey
+com.android.org.conscrypt.OpenSSLRSAPublicKey
+com.android.org.conscrypt.OpenSSLX509Certificate
+com.android.org.kxml2.io.KXmlParser
+com.android.os.coregraphics.HwuiStatsLog
 com.android.phone.ecc.nano.CodedInputByteBufferNano
 com.android.phone.ecc.nano.CodedOutputByteBufferNano$OutOfSpaceException
 com.android.phone.ecc.nano.CodedOutputByteBufferNano
@@ -14238,6 +14385,75 @@
 gov.nist.javax.sip.stack.UDPMessageChannel$PingBackTimerTask
 gov.nist.javax.sip.stack.UDPMessageChannel
 gov.nist.javax.sip.stack.UDPMessageProcessor
+java.lang.ThreadLocal$SuppliedThreadLocal
+java.nio.ByteBufferAsFloatBuffer
+java.nio.ByteBufferAsIntBuffer
+java.nio.ByteBufferAsLongBuffer
+java.nio.DirectByteBuffer
+java.nio.HeapByteBuffer
+java.security.MessageDigest$Delegate
+java.time.Clock$SystemClock
+java.util.ArrayDeque$DeqIterator
+java.util.ArrayList$Itr
+java.util.Arrays$ArrayItr
+java.util.Arrays$ArrayList
+java.util.Collections$3
+java.util.Collections$EmptyIterator
+java.util.Collections$EmptyList
+java.util.Collections$EmptySet
+java.util.Collections$SingletonMap
+java.util.Collections$UnmodifiableCollection$1
+java.util.Collections$UnmodifiableCollection
+java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet$1
+java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet$UnmodifiableEntry
+java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet
+java.util.Collections$UnmodifiableMap
+java.util.Collections$UnmodifiableRandomAccessList
+java.util.Collections$UnmodifiableSet
+java.util.Collections$UnmodifiableSortedSet
+java.util.HashMap$EntryIterator
+java.util.HashMap$EntrySet
+java.util.HashMap$KeyIterator
+java.util.HashMap$KeySet
+java.util.HashMap$Node
+java.util.HashMap$TreeNode
+java.util.HashMap$ValueIterator
+java.util.HashMap$Values
+java.util.ImmutableCollections$List12
+java.util.ImmutableCollections$ListItr
+java.util.ImmutableCollections$ListN
+java.util.ImmutableCollections$MapN
+java.util.ImmutableCollections$Set12
+java.util.ImmutableCollections$SetN
+java.util.LinkedHashMap$LinkedKeyIterator
+java.util.LinkedHashMap$LinkedKeySet
+java.util.LinkedHashMap$LinkedValueIterator
+java.util.LinkedHashMap$LinkedValues
+java.util.LinkedList$ListItr
+java.util.TreeMap$EntryIterator
+java.util.TreeMap$EntrySet
+java.util.TreeMap$KeyIterator
+java.util.TreeMap$TreeMapEntry
+java.util.concurrent.ConcurrentHashMap$EntryIterator
+java.util.concurrent.ConcurrentHashMap$EntrySetView
+java.util.concurrent.ConcurrentHashMap$MapEntry
+java.util.concurrent.ConcurrentHashMap$ValueIterator
+java.util.concurrent.ConcurrentHashMap$ValuesView
+java.util.concurrent.ConcurrentLinkedQueue$Itr
+java.util.concurrent.CopyOnWriteArrayList$COWIterator
+java.util.concurrent.Executors$AutoShutdownDelegatedExecutorService
+java.util.concurrent.Executors$DelegatedScheduledExecutorService
+java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock
+java.util.function.DoubleUnaryOperator$$ExternalSyntheticLambda2
+java.util.stream.IntPipeline$10
+java.util.stream.IntPipeline$1
+java.util.stream.IntPipeline$4
+java.util.stream.IntPipeline$Head
+java.util.stream.ReferencePipeline$2
+java.util.stream.ReferencePipeline$3
+java.util.stream.ReferencePipeline$4
+java.util.stream.ReferencePipeline$Head
+java.util.stream.SortedOps$OfRef
 javax.microedition.khronos.egl.EGL10
 javax.microedition.khronos.egl.EGL11
 javax.microedition.khronos.egl.EGL
@@ -14352,6 +14568,7 @@
 javax.sip.message.MessageFactory
 javax.sip.message.Request
 javax.sip.message.Response
+libcore.util.ZoneInfo
 org.apache.http.conn.ConnectTimeoutException
 org.apache.http.conn.scheme.HostNameResolver
 org.apache.http.conn.scheme.LayeredSocketFactory
@@ -14366,6 +14583,7 @@
 org.apache.http.params.CoreConnectionPNames
 org.apache.http.params.HttpConnectionParams
 org.apache.http.params.HttpParams
+org.ccil.cowan.tagsoup.AttributesImpl
 org.ccil.cowan.tagsoup.AutoDetector
 org.ccil.cowan.tagsoup.CommandLine
 org.ccil.cowan.tagsoup.Element
@@ -14387,6 +14605,7 @@
 org.ccil.cowan.tagsoup.jaxp.SAX1ParserAdapter
 org.ccil.cowan.tagsoup.jaxp.SAXFactoryImpl
 org.ccil.cowan.tagsoup.jaxp.SAXParserImpl
+sun.nio.ch.FileChannelImpl
 [Landroid.accounts.Account;
 [Landroid.accounts.AuthenticatorDescription;
 [Landroid.animation.Animator;
@@ -14812,6 +15031,7 @@
 [Landroid.widget.SpellChecker$SpellParser;
 [Landroid.widget.TextView$BufferType;
 [Landroid.widget.TextView$ChangeWatcher;
+[Landroid.window.BackTouchTracker$TouchTrackerState;
 [Landroid.window.DesktopModeFlags$ToggleOverride;
 [Landroid.window.DesktopModeFlags;
 [Landroid.window.TransitionFilter$Requirement;
diff --git a/cmds/idmap2/OWNERS b/cmds/idmap2/OWNERS
index 062ffd4..def9f40 100644
--- a/cmds/idmap2/OWNERS
+++ b/cmds/idmap2/OWNERS
@@ -1,4 +1,3 @@
 set noparent
-toddke@google.com
 patb@google.com
 zyy@google.com
diff --git a/cmds/incidentd/OWNERS b/cmds/incidentd/OWNERS
index bcdcfc3..db8fa9f 100644
--- a/cmds/incidentd/OWNERS
+++ b/cmds/incidentd/OWNERS
@@ -1,4 +1,3 @@
 joeo@google.com
 yaochen@google.com
 yanmin@google.com
-zhouwenjie@google.com
diff --git a/config/preloaded-classes b/config/preloaded-classes
index 70a94a0..4147fd7 100644
--- a/config/preloaded-classes
+++ b/config/preloaded-classes
@@ -59,6 +59,7 @@
 android.accounts.AccountManager$AmsTask$Response
 android.accounts.AccountManager$AmsTask
 android.accounts.AccountManager$BaseFutureTask$1
+android.accounts.AccountManager$BaseFutureTask$Response
 android.accounts.AccountManager$BaseFutureTask
 android.accounts.AccountManager$Future2Task$1
 android.accounts.AccountManager$Future2Task
@@ -73,6 +74,7 @@
 android.accounts.AuthenticatorDescription-IA
 android.accounts.AuthenticatorDescription
 android.accounts.AuthenticatorException
+android.accounts.IAccountAuthenticator$Stub$Proxy
 android.accounts.IAccountAuthenticator$Stub
 android.accounts.IAccountAuthenticator
 android.accounts.IAccountAuthenticatorResponse$Stub$Proxy
@@ -81,6 +83,7 @@
 android.accounts.IAccountManager$Stub$Proxy
 android.accounts.IAccountManager$Stub
 android.accounts.IAccountManager
+android.accounts.IAccountManagerResponse$Stub$Proxy
 android.accounts.IAccountManagerResponse$Stub
 android.accounts.IAccountManagerResponse
 android.accounts.NetworkErrorException
@@ -93,6 +96,8 @@
 android.aconfig.nano.Aconfig$parsed_flag
 android.aconfig.nano.Aconfig$parsed_flags
 android.aconfig.nano.Aconfig$tracepoint
+android.adpf.FeatureFlags
+android.adpf.FeatureFlagsImpl
 android.adpf.Flags
 android.animation.AnimationHandler$$ExternalSyntheticLambda0
 android.animation.AnimationHandler$1
@@ -220,6 +225,7 @@
 android.app.ActivityManager$$ExternalSyntheticLambda1
 android.app.ActivityManager$$ExternalSyntheticLambda2
 android.app.ActivityManager$1
+android.app.ActivityManager$2
 android.app.ActivityManager$3
 android.app.ActivityManager$4
 android.app.ActivityManager$AppTask
@@ -270,11 +276,14 @@
 android.app.ActivityThread$3
 android.app.ActivityThread$4
 android.app.ActivityThread$5
+android.app.ActivityThread$6
 android.app.ActivityThread$ActivityClientRecord$1
 android.app.ActivityThread$ActivityClientRecord
+android.app.ActivityThread$AndroidOs
 android.app.ActivityThread$AppBindData
 android.app.ActivityThread$ApplicationThread$$ExternalSyntheticLambda2
 android.app.ActivityThread$ApplicationThread$1
+android.app.ActivityThread$ApplicationThread
 android.app.ActivityThread$BindServiceData
 android.app.ActivityThread$ContextCleanupInfo
 android.app.ActivityThread$CreateBackupAgentData
@@ -304,6 +313,7 @@
 android.app.ActivityTransitionState
 android.app.AlarmManager$AlarmClockInfo$1
 android.app.AlarmManager$AlarmClockInfo
+android.app.AlarmManager$ListenerWrapper
 android.app.AlarmManager$OnAlarmListener
 android.app.AlarmManager
 android.app.AlertDialog$Builder
@@ -324,6 +334,7 @@
 android.app.AppOpsManager$$ExternalSyntheticLambda8
 android.app.AppOpsManager$1
 android.app.AppOpsManager$2
+android.app.AppOpsManager$3
 android.app.AppOpsManager$4
 android.app.AppOpsManager$AppOpsCollector
 android.app.AppOpsManager$AttributedHistoricalOps$1
@@ -367,6 +378,7 @@
 android.app.AppOpsManagerInternal
 android.app.Application$ActivityLifecycleCallbacks
 android.app.Application$OnProvideAssistDataListener
+android.app.Application
 android.app.ApplicationErrorReport$1
 android.app.ApplicationErrorReport$AnrInfo
 android.app.ApplicationErrorReport$BatteryInfo
@@ -392,6 +404,7 @@
 android.app.ApplicationPackageManager$MoveCallbackDelegate
 android.app.ApplicationPackageManager$ResourceName
 android.app.ApplicationPackageManager-IA
+android.app.ApplicationPackageManager
 android.app.AsyncNotedAppOp$1
 android.app.AsyncNotedAppOp
 android.app.AutomaticZenRule$1
@@ -420,6 +433,7 @@
 android.app.ContentProviderHolder
 android.app.ContextImpl$1
 android.app.ContextImpl$ApplicationContentResolver
+android.app.ContextImpl
 android.app.DexLoadReporter
 android.app.Dialog$$ExternalSyntheticLambda0
 android.app.Dialog$$ExternalSyntheticLambda1
@@ -505,6 +519,7 @@
 android.app.IApplicationStartInfoCompleteListener$Stub$Proxy
 android.app.IApplicationStartInfoCompleteListener$Stub
 android.app.IApplicationStartInfoCompleteListener
+android.app.IApplicationThread$Stub$Proxy
 android.app.IApplicationThread$Stub
 android.app.IApplicationThread
 android.app.IAssistDataReceiver$Stub$Proxy
@@ -519,6 +534,7 @@
 android.app.IGameManagerService$Stub$Proxy
 android.app.IGameManagerService$Stub
 android.app.IGameManagerService
+android.app.IInstantAppResolver$Stub$Proxy
 android.app.IInstantAppResolver$Stub
 android.app.IInstantAppResolver
 android.app.IInstrumentationWatcher$Stub$Proxy
@@ -547,11 +563,13 @@
 android.app.ISearchManager$Stub$Proxy
 android.app.ISearchManager$Stub
 android.app.ISearchManager
+android.app.IServiceConnection$Stub$Proxy
 android.app.IServiceConnection$Stub
 android.app.IServiceConnection
 android.app.IStopUserCallback$Stub$Proxy
 android.app.IStopUserCallback$Stub
 android.app.IStopUserCallback
+android.app.ITaskStackListener$Stub$Proxy
 android.app.ITaskStackListener$Stub
 android.app.ITaskStackListener
 android.app.ITransientNotification$Stub$Proxy
@@ -571,6 +589,7 @@
 android.app.IUidFrozenStateChangedCallback$Stub$Proxy
 android.app.IUidFrozenStateChangedCallback$Stub
 android.app.IUidFrozenStateChangedCallback
+android.app.IUidObserver$Stub$Proxy
 android.app.IUidObserver$Stub
 android.app.IUidObserver
 android.app.IUnsafeIntentStrictModeCallback$Stub
@@ -599,6 +618,7 @@
 android.app.IntentReceiverLeaked
 android.app.IntentService$ServiceHandler
 android.app.IntentService
+android.app.JobSchedulerImpl
 android.app.KeyguardManager$1
 android.app.KeyguardManager$2
 android.app.KeyguardManager$KeyguardDismissCallback
@@ -606,9 +626,11 @@
 android.app.ListActivity
 android.app.LoadedApk$ReceiverDispatcher$Args$$ExternalSyntheticLambda0
 android.app.LoadedApk$ReceiverDispatcher$Args
+android.app.LoadedApk$ReceiverDispatcher$InnerReceiver
 android.app.LoadedApk$ReceiverDispatcher
 android.app.LoadedApk$ServiceDispatcher$ConnectionInfo
 android.app.LoadedApk$ServiceDispatcher$DeathMonitor
+android.app.LoadedApk$ServiceDispatcher$InnerConnection
 android.app.LoadedApk$ServiceDispatcher$RunConnection
 android.app.LoadedApk$ServiceDispatcher
 android.app.LoadedApk$SplitDependencyLoaderImpl
@@ -665,6 +687,7 @@
 android.app.NotificationManager$NotificationKey
 android.app.NotificationManager$Policy$1
 android.app.NotificationManager$Policy
+android.app.NotificationManager$RateLimiter
 android.app.NotificationManager
 android.app.OnActivityPausedListener
 android.app.PackageInstallObserver$1
@@ -675,6 +698,7 @@
 android.app.PendingIntent$1
 android.app.PendingIntent$CancelListener
 android.app.PendingIntent$CanceledException
+android.app.PendingIntent$FinishedDispatcher
 android.app.PendingIntent$OnFinished
 android.app.PendingIntent$OnMarshaledListener
 android.app.PendingIntent
@@ -760,6 +784,7 @@
 android.app.SharedPreferencesImpl$MemoryCommitResult
 android.app.SharedPreferencesImpl$SharedPreferencesThreadFactory
 android.app.SharedPreferencesImpl-IA
+android.app.SharedPreferencesImpl
 android.app.StackTrace
 android.app.StatusBarManager
 android.app.SyncNotedAppOp$1
@@ -1161,6 +1186,7 @@
 android.app.job.JobService$1
 android.app.job.JobService
 android.app.job.JobServiceEngine$JobHandler
+android.app.job.JobServiceEngine$JobInterface
 android.app.job.JobServiceEngine
 android.app.job.JobWorkItem$1
 android.app.job.JobWorkItem
@@ -1241,7 +1267,10 @@
 android.app.servertransaction.TopResumedActivityChangeItem
 android.app.servertransaction.TransactionExecutor
 android.app.servertransaction.TransactionExecutorHelper
+android.app.servertransaction.WindowStateInsetsControlChangeItem$1
+android.app.servertransaction.WindowStateInsetsControlChangeItem
 android.app.servertransaction.WindowStateTransactionItem$TransactionListener
+android.app.servertransaction.WindowStateTransactionItem
 android.app.slice.ISliceManager$Stub$Proxy
 android.app.slice.ISliceManager$Stub
 android.app.slice.ISliceManager
@@ -1467,6 +1496,7 @@
 android.content.ComponentName$WithComponentName
 android.content.ComponentName
 android.content.ContentCaptureOptions$1
+android.content.ContentCaptureOptions$ContentProtectionOptions$$ExternalSyntheticLambda0
 android.content.ContentCaptureOptions$ContentProtectionOptions$$ExternalSyntheticLambda1
 android.content.ContentCaptureOptions$ContentProtectionOptions$$ExternalSyntheticLambda2
 android.content.ContentCaptureOptions$ContentProtectionOptions
@@ -1488,10 +1518,12 @@
 android.content.ContentProviderOperation$Builder
 android.content.ContentProviderOperation-IA
 android.content.ContentProviderOperation
+android.content.ContentProviderProxy
 android.content.ContentProviderResult$1
 android.content.ContentProviderResult
 android.content.ContentResolver$1
 android.content.ContentResolver$2
+android.content.ContentResolver$CursorWrapperInner
 android.content.ContentResolver$OpenResourceIdResult
 android.content.ContentResolver$ParcelFileDescriptorInner
 android.content.ContentResolver$ResultListener
@@ -1522,6 +1554,7 @@
 android.content.IContentService$Stub$Proxy
 android.content.IContentService$Stub
 android.content.IContentService
+android.content.IIntentReceiver$Stub$Proxy
 android.content.IIntentReceiver$Stub
 android.content.IIntentReceiver
 android.content.IIntentSender$Stub$Proxy
@@ -1695,6 +1728,7 @@
 android.content.pm.ILauncherApps$Stub$Proxy
 android.content.pm.ILauncherApps$Stub
 android.content.pm.ILauncherApps
+android.content.pm.IOnAppsChangedListener$Stub$Proxy
 android.content.pm.IOnAppsChangedListener$Stub
 android.content.pm.IOnAppsChangedListener
 android.content.pm.IOnChecksumsReadyListener$Stub$Proxy
@@ -2040,6 +2074,7 @@
 android.content.res.ThemedResourceCache
 android.content.res.TypedArray
 android.content.res.Validator
+android.content.res.XmlBlock$Parser
 android.content.res.XmlBlock
 android.content.res.XmlResourceParser
 android.content.res.loader.AssetsProvider
@@ -2074,6 +2109,7 @@
 android.database.ContentObservable
 android.database.ContentObserver$$ExternalSyntheticLambda0
 android.database.ContentObserver$$ExternalSyntheticLambda1
+android.database.ContentObserver$Transport
 android.database.ContentObserver
 android.database.CrossProcessCursor
 android.database.CrossProcessCursorWrapper
@@ -2092,6 +2128,7 @@
 android.database.DatabaseUtils
 android.database.DefaultDatabaseErrorHandler
 android.database.IBulkCursor
+android.database.IContentObserver$Stub$Proxy
 android.database.IContentObserver$Stub
 android.database.IContentObserver
 android.database.MatrixCursor$RowBuilder
@@ -2128,6 +2165,7 @@
 android.database.sqlite.SQLiteConnectionPool-IA
 android.database.sqlite.SQLiteConnectionPool
 android.database.sqlite.SQLiteConstraintException
+android.database.sqlite.SQLiteCursor
 android.database.sqlite.SQLiteCursorDriver
 android.database.sqlite.SQLiteCustomFunction
 android.database.sqlite.SQLiteDatabase$$ExternalSyntheticLambda0
@@ -2154,6 +2192,7 @@
 android.database.sqlite.SQLiteFullException
 android.database.sqlite.SQLiteGlobal
 android.database.sqlite.SQLiteMisuseException
+android.database.sqlite.SQLiteOpenHelper$$ExternalSyntheticLambda0
 android.database.sqlite.SQLiteOpenHelper
 android.database.sqlite.SQLiteOutOfMemoryException
 android.database.sqlite.SQLiteProgram
@@ -2226,12 +2265,16 @@
 android.graphics.ColorSpace$Lab
 android.graphics.ColorSpace$Model
 android.graphics.ColorSpace$Named
+android.graphics.ColorSpace$OkLab
 android.graphics.ColorSpace$RenderIntent
 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda0
 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda1
 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda2
 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda3
+android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda4
 android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda5
+android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda6
+android.graphics.ColorSpace$Rgb$$ExternalSyntheticLambda9
 android.graphics.ColorSpace$Rgb$Native
 android.graphics.ColorSpace$Rgb$NoImagePreloadHolder
 android.graphics.ColorSpace$Rgb$TransferParameters
@@ -2537,6 +2580,7 @@
 android.graphics.fonts.Font
 android.graphics.fonts.FontCustomizationParser$Result
 android.graphics.fonts.FontCustomizationParser
+android.graphics.fonts.FontFamily$Builder$NoImagePreloadHolder
 android.graphics.fonts.FontFamily$Builder
 android.graphics.fonts.FontFamily
 android.graphics.fonts.FontFileUtil
@@ -2627,6 +2671,7 @@
 android.hardware.SystemSensorManager$InjectEventQueue
 android.hardware.SystemSensorManager$SensorEventQueue
 android.hardware.SystemSensorManager$TriggerEventQueue
+android.hardware.SystemSensorManager
 android.hardware.TriggerEvent
 android.hardware.TriggerEventListener
 android.hardware.biometrics.BiometricAuthenticator$AuthenticationCallback
@@ -2911,6 +2956,7 @@
 android.hardware.display.DisplayManagerGlobal$1
 android.hardware.display.DisplayManagerGlobal$DisplayListenerDelegate$$ExternalSyntheticLambda0
 android.hardware.display.DisplayManagerGlobal$DisplayListenerDelegate
+android.hardware.display.DisplayManagerGlobal$DisplayManagerCallback
 android.hardware.display.DisplayManagerGlobal
 android.hardware.display.DisplayManagerInternal$DisplayPowerCallbacks
 android.hardware.display.DisplayManagerInternal$DisplayPowerRequest
@@ -2927,6 +2973,7 @@
 android.hardware.display.IDisplayManager$Stub$Proxy
 android.hardware.display.IDisplayManager$Stub
 android.hardware.display.IDisplayManager
+android.hardware.display.IDisplayManagerCallback$Stub$Proxy
 android.hardware.display.IDisplayManagerCallback$Stub
 android.hardware.display.IDisplayManagerCallback
 android.hardware.display.IVirtualDisplayCallback$Stub$Proxy
@@ -3001,6 +3048,7 @@
 android.hardware.hdmi.HdmiRecordSources$RecordSource
 android.hardware.input.HostUsiVersion$1
 android.hardware.input.HostUsiVersion
+android.hardware.input.IInputDevicesChangedListener$Stub$Proxy
 android.hardware.input.IInputDevicesChangedListener$Stub
 android.hardware.input.IInputDevicesChangedListener
 android.hardware.input.IInputManager$Stub$Proxy
@@ -3016,6 +3064,7 @@
 android.hardware.input.InputManager$InputDeviceListener
 android.hardware.input.InputManager
 android.hardware.input.InputManagerGlobal$InputDeviceListenerDelegate
+android.hardware.input.InputManagerGlobal$InputDevicesChangedListener
 android.hardware.input.InputManagerGlobal$OnTabletModeChangedListenerDelegate
 android.hardware.input.InputManagerGlobal-IA
 android.hardware.input.InputManagerGlobal
@@ -4609,6 +4658,7 @@
 android.icu.text.ReplaceableString
 android.icu.text.RuleBasedBreakIterator$BreakCache
 android.icu.text.RuleBasedBreakIterator$DictionaryCache
+android.icu.text.RuleBasedBreakIterator
 android.icu.text.RuleBasedCollator$CollationBuffer
 android.icu.text.RuleBasedCollator$CollationKeyByteSink
 android.icu.text.RuleBasedCollator$FCDUTF16NFDIterator
@@ -4956,8 +5006,13 @@
 android.internal.aconfig.storage.AconfigStorageException
 android.internal.aconfig.storage.ByteBufferReader
 android.internal.aconfig.storage.FileType
+android.internal.aconfig.storage.FlagTable$Header
+android.internal.aconfig.storage.FlagTable
+android.internal.aconfig.storage.FlagValueList$Header
+android.internal.aconfig.storage.FlagValueList
 android.internal.aconfig.storage.PackageTable$Header
 android.internal.aconfig.storage.PackageTable
+android.internal.aconfig.storage.TableUtils$StorageFilesBundle
 android.internal.framework.protobuf.nano.InvalidProtocolBufferNanoException
 android.internal.framework.protobuf.nano.MessageNano
 android.internal.hidl.base.V1_0.DebugInfo
@@ -4984,6 +5039,7 @@
 android.internal.telephony.sysprop.TelephonyProperties$$ExternalSyntheticLambda8
 android.internal.telephony.sysprop.TelephonyProperties$$ExternalSyntheticLambda9
 android.internal.telephony.sysprop.TelephonyProperties
+android.location.CountryDetector
 android.location.Geofence$1
 android.location.Geofence
 android.location.IFusedGeofenceHardware$Stub$Proxy
@@ -4992,11 +5048,14 @@
 android.location.IGpsGeofenceHardware$Stub$Proxy
 android.location.IGpsGeofenceHardware$Stub
 android.location.IGpsGeofenceHardware
+android.location.ILocationManager$Stub
+android.location.ILocationManager
 android.location.Location$$ExternalSyntheticLambda0
 android.location.Location$1
 android.location.Location$BearingDistanceCache
 android.location.Location-IA
 android.location.Location
+android.location.LocationManager
 android.location.LocationTime$1
 android.location.LocationTime
 android.location.flags.FeatureFlags
@@ -5028,6 +5087,7 @@
 android.media.AudioGainConfig
 android.media.AudioHandle
 android.media.AudioManager$1
+android.media.AudioManager$2
 android.media.AudioManager$3
 android.media.AudioManager$4
 android.media.AudioManager$AudioPlaybackCallback
@@ -5161,6 +5221,7 @@
 android.media.IMediaRouter2
 android.media.IMediaRouter2Manager$Stub
 android.media.IMediaRouter2Manager
+android.media.IMediaRouterClient$Stub$Proxy
 android.media.IMediaRouterClient$Stub
 android.media.IMediaRouterClient
 android.media.IMediaRouterService$Stub$Proxy
@@ -5323,6 +5384,7 @@
 android.media.MediaRouter$Static$Client$$ExternalSyntheticLambda0
 android.media.MediaRouter$Static$Client$$ExternalSyntheticLambda1
 android.media.MediaRouter$Static$Client$1
+android.media.MediaRouter$Static$Client
 android.media.MediaRouter$Static
 android.media.MediaRouter$UserRouteInfo$SessionVolumeProvider
 android.media.MediaRouter$UserRouteInfo
@@ -5531,6 +5593,7 @@
 android.media.quality.MediaQualityManager
 android.media.quality.PictureProfileHandle$1
 android.media.quality.PictureProfileHandle
+android.media.session.IActiveSessionsListener$Stub$Proxy
 android.media.session.IActiveSessionsListener$Stub
 android.media.session.IActiveSessionsListener
 android.media.session.IOnMediaKeyEventDispatchedListener$Stub$Proxy
@@ -5557,6 +5620,7 @@
 android.media.session.ISessionController$Stub$Proxy
 android.media.session.ISessionController$Stub
 android.media.session.ISessionController
+android.media.session.ISessionControllerCallback$Stub$Proxy
 android.media.session.ISessionControllerCallback$Stub
 android.media.session.ISessionControllerCallback
 android.media.session.ISessionManager$Stub$Proxy
@@ -5593,6 +5657,7 @@
 android.media.session.MediaSessionManager$RemoteUserInfo
 android.media.session.MediaSessionManager$Session2TokensChangedWrapper
 android.media.session.MediaSessionManager$SessionsChangedWrapper$1$$ExternalSyntheticLambda0
+android.media.session.MediaSessionManager$SessionsChangedWrapper$1
 android.media.session.MediaSessionManager$SessionsChangedWrapper
 android.media.session.MediaSessionManager-IA
 android.media.session.MediaSessionManager
@@ -5684,6 +5749,8 @@
 android.net.LocalSocket
 android.net.LocalSocketAddress$Namespace
 android.net.LocalSocketAddress
+android.net.LocalSocketImpl$SocketInputStream
+android.net.LocalSocketImpl$SocketOutputStream
 android.net.LocalSocketImpl
 android.net.MatchAllNetworkSpecifier$1
 android.net.MatchAllNetworkSpecifier
@@ -5732,11 +5799,15 @@
 android.net.Uri$AbstractHierarchicalUri
 android.net.Uri$AbstractPart
 android.net.Uri$Builder
+android.net.Uri$HierarchicalUri
 android.net.Uri$NotCachedHolder
+android.net.Uri$OpaqueUri
 android.net.Uri$Part$EmptyPart
 android.net.Uri$Part
 android.net.Uri$PathPart
+android.net.Uri$PathSegments
 android.net.Uri$PathSegmentsBuilder
+android.net.Uri$StringUri
 android.net.Uri-IA
 android.net.Uri
 android.net.UriCodec
@@ -5986,7 +6057,6 @@
 android.nfc.NfcOemExtension$$ExternalSyntheticLambda9
 android.nfc.NfcOemExtension$Callback
 android.nfc.NfcOemExtension$NfcOemExtensionCallback
-android.nfc.NfcOemExtension-IA
 android.nfc.NfcOemExtension
 android.nfc.NfcRoutingTableEntry
 android.nfc.NfcServiceManager$ServiceRegisterer
@@ -6139,6 +6209,7 @@
 android.os.BinderProxy$BinderProxyMapSizeException
 android.os.BinderProxy$NoImagePreloadHolder
 android.os.BinderProxy$ProxyMap
+android.os.BinderProxy
 android.os.BluetoothServiceManager$ServiceRegisterer
 android.os.BluetoothServiceManager
 android.os.BugreportManager
@@ -6213,6 +6284,7 @@
 android.os.Handler$MessengerImpl
 android.os.Handler-IA
 android.os.Handler
+android.os.HandlerExecutor
 android.os.HandlerThread
 android.os.HardwarePropertiesManager
 android.os.HidlMemory
@@ -6297,6 +6369,7 @@
 android.os.IRecoverySystemProgressListener$Stub$Proxy
 android.os.IRecoverySystemProgressListener$Stub
 android.os.IRecoverySystemProgressListener
+android.os.IRemoteCallback$Stub$Proxy
 android.os.IRemoteCallback$Stub
 android.os.IRemoteCallback
 android.os.ISchedulingPolicyService$Stub
@@ -6370,6 +6443,7 @@
 android.os.LimitExceededException
 android.os.LocaleList$1
 android.os.LocaleList
+android.os.Looper$NoImagePreloadHolder
 android.os.Looper$Observer
 android.os.Looper
 android.os.MemoryFile
@@ -6408,7 +6482,7 @@
 android.os.PackageTagsList$1
 android.os.PackageTagsList
 android.os.Parcel$1
-android.os.Parcel$ClassLoaderProvider
+android.os.Parcel$2
 android.os.Parcel$LazyValue
 android.os.Parcel$ReadWriteHelper
 android.os.Parcel$SquashReadHelper
@@ -6417,6 +6491,7 @@
 android.os.ParcelDuration
 android.os.ParcelFileDescriptor$1
 android.os.ParcelFileDescriptor$2
+android.os.ParcelFileDescriptor$AutoCloseInputStream
 android.os.ParcelFileDescriptor$AutoCloseOutputStream
 android.os.ParcelFileDescriptor$OnCloseListener
 android.os.ParcelFileDescriptor$Status
@@ -6536,12 +6611,14 @@
 android.os.StrictMode$2
 android.os.StrictMode$3
 android.os.StrictMode$4
+android.os.StrictMode$5
 android.os.StrictMode$6
 android.os.StrictMode$7
 android.os.StrictMode$8
 android.os.StrictMode$9
 android.os.StrictMode$AndroidBlockGuardPolicy$$ExternalSyntheticLambda0
 android.os.StrictMode$AndroidBlockGuardPolicy$$ExternalSyntheticLambda1
+android.os.StrictMode$AndroidBlockGuardPolicy
 android.os.StrictMode$AndroidCloseGuardReporter
 android.os.StrictMode$InstanceTracker
 android.os.StrictMode$OnThreadViolationListener
@@ -7014,6 +7091,7 @@
 android.security.KeyStoreSecurityLevel
 android.security.NetworkSecurityPolicy
 android.security.Scrypt
+android.security.advancedprotection.AdvancedProtectionManager
 android.security.attestationverification.AttestationVerificationManager
 android.security.authenticationpolicy.AuthenticationPolicyManager
 android.security.intrusiondetection.IntrusionDetectionManager
@@ -7317,6 +7395,7 @@
 android.service.notification.Condition$1
 android.service.notification.Condition
 android.service.notification.ConditionProviderService$H
+android.service.notification.ConditionProviderService$Provider
 android.service.notification.ConditionProviderService-IA
 android.service.notification.ConditionProviderService
 android.service.notification.IConditionProvider$Stub
@@ -7332,6 +7411,7 @@
 android.service.notification.NotificationListenerFilter$1
 android.service.notification.NotificationListenerFilter
 android.service.notification.NotificationListenerService$MyHandler
+android.service.notification.NotificationListenerService$NotificationListenerWrapper
 android.service.notification.NotificationListenerService$Ranking
 android.service.notification.NotificationListenerService$RankingMap$1
 android.service.notification.NotificationListenerService$RankingMap
@@ -7346,6 +7426,7 @@
 android.service.notification.ScheduleCalendar
 android.service.notification.SnoozeCriterion$1
 android.service.notification.SnoozeCriterion
+android.service.notification.StatusBarNotification$$ExternalSyntheticLambda0
 android.service.notification.StatusBarNotification$1
 android.service.notification.StatusBarNotification
 android.service.notification.ZenDeviceEffects$1
@@ -7387,6 +7468,7 @@
 android.service.storage.IExternalStorageService$Stub$Proxy
 android.service.storage.IExternalStorageService$Stub
 android.service.storage.IExternalStorageService
+android.service.textclassifier.ITextClassifierCallback$Stub$Proxy
 android.service.textclassifier.ITextClassifierCallback$Stub
 android.service.textclassifier.ITextClassifierCallback
 android.service.textclassifier.ITextClassifierService$Stub$Proxy
@@ -7549,6 +7631,7 @@
 android.system.keystore2.KeyParameters
 android.system.keystore2.OperationChallenge$1
 android.system.keystore2.OperationChallenge
+android.system.suspend.internal.ISuspendControlServiceInternal$Stub$Proxy
 android.system.suspend.internal.ISuspendControlServiceInternal$Stub
 android.system.suspend.internal.ISuspendControlServiceInternal
 android.system.suspend.internal.WakeLockInfo$1
@@ -7691,6 +7774,7 @@
 android.telephony.CellIdentityGsm$1
 android.telephony.CellIdentityGsm
 android.telephony.CellIdentityLte$1
+android.telephony.CellIdentityLte
 android.telephony.CellIdentityNr$1
 android.telephony.CellIdentityNr
 android.telephony.CellIdentityTdscdma$1
@@ -7718,6 +7802,7 @@
 android.telephony.CellSignalStrengthCdma
 android.telephony.CellSignalStrengthGsm$1
 android.telephony.CellSignalStrengthGsm-IA
+android.telephony.CellSignalStrengthGsm
 android.telephony.CellSignalStrengthLte$1
 android.telephony.CellSignalStrengthLte-IA
 android.telephony.CellSignalStrengthLte
@@ -7729,6 +7814,7 @@
 android.telephony.CellSignalStrengthTdscdma
 android.telephony.CellSignalStrengthWcdma$1
 android.telephony.CellSignalStrengthWcdma-IA
+android.telephony.CellSignalStrengthWcdma
 android.telephony.CellularIdentifierDisclosure
 android.telephony.ClientRequestStats$1
 android.telephony.ClientRequestStats
@@ -7833,6 +7919,7 @@
 android.telephony.PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda62
 android.telephony.PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda6
 android.telephony.PhoneStateListener$IPhoneStateListenerStub$$ExternalSyntheticLambda9
+android.telephony.PhoneStateListener$IPhoneStateListenerStub
 android.telephony.PhoneStateListener
 android.telephony.PhysicalChannelConfig$1
 android.telephony.PhysicalChannelConfig$Builder
@@ -7939,6 +8026,7 @@
 android.telephony.TelephonyCallback$IPhoneStateListenerStub$$ExternalSyntheticLambda52
 android.telephony.TelephonyCallback$IPhoneStateListenerStub$$ExternalSyntheticLambda63
 android.telephony.TelephonyCallback$IPhoneStateListenerStub$$ExternalSyntheticLambda65
+android.telephony.TelephonyCallback$IPhoneStateListenerStub
 android.telephony.TelephonyCallback$ImsCallDisconnectCauseListener
 android.telephony.TelephonyCallback$LinkCapacityEstimateChangedListener
 android.telephony.TelephonyCallback$MediaQualityStatusChangedListener
@@ -8000,7 +8088,9 @@
 android.telephony.TelephonyRegistryManager$$ExternalSyntheticLambda1
 android.telephony.TelephonyRegistryManager$$ExternalSyntheticLambda2
 android.telephony.TelephonyRegistryManager$1$$ExternalSyntheticLambda0
+android.telephony.TelephonyRegistryManager$1
 android.telephony.TelephonyRegistryManager$2
+android.telephony.TelephonyRegistryManager$3
 android.telephony.TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda0
 android.telephony.TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda1
 android.telephony.TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper$$ExternalSyntheticLambda2
@@ -8380,6 +8470,7 @@
 android.text.SpanWatcher
 android.text.Spannable$Factory
 android.text.Spannable
+android.text.SpannableString
 android.text.SpannableStringBuilder
 android.text.SpannableStringInternal
 android.text.Spanned
@@ -8541,9 +8632,11 @@
 android.tracing.FeatureFlags
 android.tracing.FeatureFlagsImpl
 android.tracing.Flags
+android.tracing.inputmethod.InputMethodDataSource
 android.tracing.perfetto.CreateIncrementalStateArgs
 android.tracing.perfetto.CreateTlsStateArgs
 android.tracing.perfetto.DataSource
+android.tracing.perfetto.DataSourceInstance
 android.tracing.perfetto.DataSourceParams$Builder
 android.tracing.perfetto.DataSourceParams
 android.tracing.perfetto.FlushCallbackArguments
@@ -8628,6 +8721,7 @@
 android.util.AndroidException
 android.util.AndroidRuntimeException
 android.util.ArrayMap$1
+android.util.ArrayMap
 android.util.ArraySet$1
 android.util.ArraySet
 android.util.AtomicFile
@@ -8665,6 +8759,7 @@
 android.util.FloatProperty
 android.util.Half
 android.util.IconDrawableFactory
+android.util.IndentingPrintWriter
 android.util.IntArray
 android.util.IntProperty
 android.util.JsonReader$1
@@ -8696,6 +8791,11 @@
 android.util.LongSparseLongArray
 android.util.LruCache
 android.util.MalformedJsonException
+android.util.MapCollections$ArrayIterator
+android.util.MapCollections$EntrySet
+android.util.MapCollections$KeySet
+android.util.MapCollections$MapIterator
+android.util.MapCollections$ValuesCollection
 android.util.MapCollections
 android.util.MathUtils
 android.util.MemoryIntArray$1
@@ -8725,6 +8825,7 @@
 android.util.Rational
 android.util.RecurrenceRule$1
 android.util.RecurrenceRule$NonrecurringIterator
+android.util.RecurrenceRule$RecurringIterator
 android.util.RecurrenceRule
 android.util.ReflectiveProperty
 android.util.RotationUtils
@@ -8742,6 +8843,7 @@
 android.util.SparseLongArray
 android.util.SparseSetArray
 android.util.Spline$LinearSpline
+android.util.Spline$MonotoneCubicSpline
 android.util.Spline
 android.util.StateSet
 android.util.StringBuilderPrinter
@@ -8923,8 +9025,10 @@
 android.view.IDisplayFoldListener$Stub$Proxy
 android.view.IDisplayFoldListener$Stub
 android.view.IDisplayFoldListener
+android.view.IDisplayWindowInsetsController$Stub$Proxy
 android.view.IDisplayWindowInsetsController$Stub
 android.view.IDisplayWindowInsetsController
+android.view.IDisplayWindowListener$Stub$Proxy
 android.view.IDisplayWindowListener$Stub
 android.view.IDisplayWindowListener
 android.view.IDockedStackListener$Stub$Proxy
@@ -8967,6 +9071,7 @@
 android.view.ISurfaceControlViewHostParent
 android.view.ISystemGestureExclusionListener$Stub
 android.view.ISystemGestureExclusionListener
+android.view.IWallpaperVisibilityListener$Stub$Proxy
 android.view.IWallpaperVisibilityListener$Stub
 android.view.IWallpaperVisibilityListener
 android.view.IWindow$Stub
@@ -9165,7 +9270,9 @@
 android.view.SurfaceControl$RefreshRateRange
 android.view.SurfaceControl$RefreshRateRanges
 android.view.SurfaceControl$StaticDisplayInfo
+android.view.SurfaceControl$Transaction$$ExternalSyntheticLambda0
 android.view.SurfaceControl$Transaction$$ExternalSyntheticLambda1
+android.view.SurfaceControl$Transaction$$ExternalSyntheticLambda3
 android.view.SurfaceControl$Transaction$1
 android.view.SurfaceControl$Transaction$2
 android.view.SurfaceControl$Transaction
@@ -9283,6 +9390,7 @@
 android.view.View$ScrollabilityCache
 android.view.View$SendAccessibilityEventThrottle
 android.view.View$SendViewScrolledAccessibilityEvent
+android.view.View$SensitiveAutofillHintsHelper
 android.view.View$TintInfo
 android.view.View$TooltipInfo
 android.view.View$TransformationInfo
@@ -9347,6 +9455,7 @@
 android.view.ViewRootImpl$$ExternalSyntheticLambda20
 android.view.ViewRootImpl$$ExternalSyntheticLambda21
 android.view.ViewRootImpl$$ExternalSyntheticLambda22
+android.view.ViewRootImpl$$ExternalSyntheticLambda23
 android.view.ViewRootImpl$$ExternalSyntheticLambda2
 android.view.ViewRootImpl$$ExternalSyntheticLambda3
 android.view.ViewRootImpl$$ExternalSyntheticLambda4
@@ -9401,6 +9510,7 @@
 android.view.ViewRootImpl$ViewPostImeInputStage
 android.view.ViewRootImpl$ViewPreImeInputStage
 android.view.ViewRootImpl$ViewRootHandler
+android.view.ViewRootImpl$W
 android.view.ViewRootImpl$WindowInputEventReceiver
 android.view.ViewRootImpl-IA
 android.view.ViewRootImpl
@@ -9469,6 +9579,7 @@
 android.view.WindowManagerGlobal$TrustedPresentationListener
 android.view.WindowManagerGlobal-IA
 android.view.WindowManagerGlobal
+android.view.WindowManagerImpl
 android.view.WindowManagerPolicyConstants$PointerEventListener
 android.view.WindowManagerPolicyConstants
 android.view.WindowMetrics
@@ -9486,6 +9597,7 @@
 android.view.accessibility.AccessibilityManager$$ExternalSyntheticLambda1
 android.view.accessibility.AccessibilityManager$$ExternalSyntheticLambda3
 android.view.accessibility.AccessibilityManager$1$$ExternalSyntheticLambda0
+android.view.accessibility.AccessibilityManager$1
 android.view.accessibility.AccessibilityManager$AccessibilityPolicy
 android.view.accessibility.AccessibilityManager$AccessibilityServicesStateChangeListener
 android.view.accessibility.AccessibilityManager$AccessibilityStateChangeListener
@@ -9529,6 +9641,7 @@
 android.view.accessibility.IAccessibilityManager$Stub$Proxy
 android.view.accessibility.IAccessibilityManager$Stub
 android.view.accessibility.IAccessibilityManager
+android.view.accessibility.IAccessibilityManagerClient$Stub$Proxy
 android.view.accessibility.IAccessibilityManagerClient$Stub
 android.view.accessibility.IAccessibilityManagerClient
 android.view.accessibility.WeakSparseArray$WeakReferenceWithId
@@ -9710,6 +9823,7 @@
 android.view.inputmethod.IInputMethodSessionInvoker$$ExternalSyntheticLambda8
 android.view.inputmethod.IInputMethodSessionInvoker
 android.view.inputmethod.ImeTracker$1$$ExternalSyntheticLambda0
+android.view.inputmethod.ImeTracker$1
 android.view.inputmethod.ImeTracker$Debug$$ExternalSyntheticLambda0
 android.view.inputmethod.ImeTracker$Debug$$ExternalSyntheticLambda1
 android.view.inputmethod.ImeTracker$Debug$$ExternalSyntheticLambda2
@@ -10259,6 +10373,7 @@
 android.widget.RemoteViews$2
 android.widget.RemoteViews$Action
 android.widget.RemoteViews$ActionException
+android.widget.RemoteViews$ApplicationInfoCache$$ExternalSyntheticLambda0
 android.widget.RemoteViews$ApplicationInfoCache
 android.widget.RemoteViews$AsyncApplyTask
 android.widget.RemoteViews$AttributeReflectionAction
@@ -10446,6 +10561,7 @@
 android.window.BackProgressAnimator$1
 android.window.BackProgressAnimator$ProgressCallback
 android.window.BackProgressAnimator
+android.window.BackTouchTracker$TouchTrackerState
 android.window.BackTouchTracker
 android.window.ClientWindowFrames$1
 android.window.ClientWindowFrames-IA
@@ -10512,6 +10628,7 @@
 android.window.ISurfaceSyncGroup
 android.window.ISurfaceSyncGroupCompletedListener$Stub
 android.window.ISurfaceSyncGroupCompletedListener
+android.window.ITaskFragmentOrganizer$Stub$Proxy
 android.window.ITaskFragmentOrganizer$Stub
 android.window.ITaskFragmentOrganizer
 android.window.ITaskFragmentOrganizerController$Stub
@@ -10852,6 +10969,7 @@
 com.android.icu.charset.CharsetDecoderICU
 com.android.icu.charset.CharsetEncoderICU
 com.android.icu.charset.CharsetFactory
+com.android.icu.charset.CharsetICU
 com.android.icu.charset.NativeConverter
 com.android.icu.text.CompatibleDecimalFormatFactory
 com.android.icu.text.DateSorterBridge
@@ -11277,6 +11395,7 @@
 com.android.internal.app.AlertController$RecycleListView
 com.android.internal.app.AlertController
 com.android.internal.app.AssistUtils
+com.android.internal.app.IAppOpsActiveCallback$Stub$Proxy
 com.android.internal.app.IAppOpsActiveCallback$Stub
 com.android.internal.app.IAppOpsActiveCallback
 com.android.internal.app.IAppOpsAsyncNotedCallback$Stub
@@ -11363,6 +11482,7 @@
 com.android.internal.appwidget.IAppWidgetService$Stub$Proxy
 com.android.internal.appwidget.IAppWidgetService$Stub
 com.android.internal.appwidget.IAppWidgetService
+com.android.internal.backup.IBackupTransport$Stub$Proxy
 com.android.internal.backup.IBackupTransport$Stub
 com.android.internal.backup.IBackupTransport
 com.android.internal.colorextraction.ColorExtractor$GradientColors
@@ -11547,6 +11667,7 @@
 com.android.internal.inputmethod.IInputMethodPrivilegedOperations$Stub$Proxy
 com.android.internal.inputmethod.IInputMethodPrivilegedOperations$Stub
 com.android.internal.inputmethod.IInputMethodPrivilegedOperations
+com.android.internal.inputmethod.IInputMethodSession$Stub$Proxy
 com.android.internal.inputmethod.IInputMethodSession$Stub
 com.android.internal.inputmethod.IInputMethodSession
 com.android.internal.inputmethod.IRemoteAccessibilityInputConnection$Stub
@@ -11556,6 +11677,9 @@
 com.android.internal.inputmethod.IRemoteInputConnection
 com.android.internal.inputmethod.ImeTracing
 com.android.internal.inputmethod.ImeTracingClientImpl
+com.android.internal.inputmethod.ImeTracingPerfettoImpl$$ExternalSyntheticLambda3
+com.android.internal.inputmethod.ImeTracingPerfettoImpl$$ExternalSyntheticLambda4
+com.android.internal.inputmethod.ImeTracingPerfettoImpl
 com.android.internal.inputmethod.ImeTracingServerImpl
 com.android.internal.inputmethod.InputBindResult$1
 com.android.internal.inputmethod.InputBindResult-IA
@@ -11683,6 +11807,7 @@
 com.android.internal.os.CachedDeviceState$TimeInStateStopwatch
 com.android.internal.os.CachedDeviceState
 com.android.internal.os.ClassLoaderFactory
+com.android.internal.os.Clock$1
 com.android.internal.os.Clock
 com.android.internal.os.DebugStore$DebugStoreNative
 com.android.internal.os.DebugStore$DebugStoreNativeImpl
@@ -11758,6 +11883,8 @@
 com.android.internal.os.ProcessCpuTracker$FilterStats
 com.android.internal.os.ProcessCpuTracker$Stats
 com.android.internal.os.ProcessCpuTracker
+com.android.internal.os.ProcfsMemoryUtil$MemorySnapshot
+com.android.internal.os.ProcfsMemoryUtil
 com.android.internal.os.RailStats
 com.android.internal.os.RoSystemProperties
 com.android.internal.os.RpmStats$PowerStateElement
@@ -11870,8 +11997,14 @@
 com.android.internal.protolog.PerfettoProtoLogImpl
 com.android.internal.protolog.ProtoLog
 com.android.internal.protolog.ProtoLogCacheUpdater
+com.android.internal.protolog.ProtoLogDataSource$$ExternalSyntheticLambda0
+com.android.internal.protolog.ProtoLogDataSource$$ExternalSyntheticLambda1
+com.android.internal.protolog.ProtoLogDataSource$$ExternalSyntheticLambda2
+com.android.internal.protolog.ProtoLogDataSource$GroupConfig
 com.android.internal.protolog.ProtoLogDataSource$Instance$TracingInstanceStartCallback
 com.android.internal.protolog.ProtoLogDataSource$Instance$TracingInstanceStopCallback
+com.android.internal.protolog.ProtoLogDataSource$Instance
+com.android.internal.protolog.ProtoLogDataSource$ProtoLogConfig
 com.android.internal.protolog.ProtoLogDataSource
 com.android.internal.protolog.ProtoLogGroup
 com.android.internal.protolog.ProtoLogImpl
@@ -12014,6 +12147,7 @@
 com.android.internal.telephony.CellNetworkScanResult$1
 com.android.internal.telephony.CellNetworkScanResult
 com.android.internal.telephony.CellularNetworkService$CellularNetworkServiceProvider$1
+com.android.internal.telephony.CellularNetworkService$CellularNetworkServiceProvider
 com.android.internal.telephony.CellularNetworkService
 com.android.internal.telephony.ClientWakelockAccountant
 com.android.internal.telephony.ClientWakelockTracker
@@ -12101,6 +12235,7 @@
 com.android.internal.telephony.INumberVerificationCallback$Stub$Proxy
 com.android.internal.telephony.INumberVerificationCallback$Stub
 com.android.internal.telephony.INumberVerificationCallback
+com.android.internal.telephony.IOnSubscriptionsChangedListener$Stub$Proxy
 com.android.internal.telephony.IOnSubscriptionsChangedListener$Stub
 com.android.internal.telephony.IOnSubscriptionsChangedListener
 com.android.internal.telephony.IOns$Stub$Proxy
@@ -12206,6 +12341,7 @@
 com.android.internal.telephony.NetworkFactoryLegacyImpl$NetworkRequestInfo
 com.android.internal.telephony.NetworkFactoryLegacyImpl
 com.android.internal.telephony.NetworkFactoryShim
+com.android.internal.telephony.NetworkRegistrationManager$NetworkRegStateCallback
 com.android.internal.telephony.NetworkRegistrationManager$NetworkServiceConnection
 com.android.internal.telephony.NetworkRegistrationManager$RegManagerDeathRecipient
 com.android.internal.telephony.NetworkRegistrationManager
@@ -12291,6 +12427,7 @@
 com.android.internal.telephony.PhoneSubInfoController$$ExternalSyntheticLambda9
 com.android.internal.telephony.PhoneSubInfoController$CallPhoneMethodHelper
 com.android.internal.telephony.PhoneSubInfoController$PermissionCheckHelper
+com.android.internal.telephony.PhoneSubInfoController
 com.android.internal.telephony.ProxyController$1
 com.android.internal.telephony.ProxyController
 com.android.internal.telephony.RIL$RadioProxyDeathRecipient
@@ -12863,6 +13000,7 @@
 com.android.internal.telephony.imsphone.ImsPhoneCallTracker$MmTelFeatureListener
 com.android.internal.telephony.imsphone.ImsPhoneCallTracker$PhoneStateListener
 com.android.internal.telephony.imsphone.ImsPhoneCallTracker$SharedPreferenceProxy
+com.android.internal.telephony.imsphone.ImsPhoneCallTracker$VtDataUsageProvider
 com.android.internal.telephony.imsphone.ImsPhoneCallTracker
 com.android.internal.telephony.imsphone.ImsPhoneCommandInterface
 com.android.internal.telephony.imsphone.ImsPhoneConnection$$ExternalSyntheticLambda0
@@ -13399,6 +13537,7 @@
 com.android.internal.util.FastMath
 com.android.internal.util.FastPrintWriter$DummyWriter
 com.android.internal.util.FastPrintWriter-IA
+com.android.internal.util.FastPrintWriter
 com.android.internal.util.FastXmlSerializer
 com.android.internal.util.FileRotator$FileInfo
 com.android.internal.util.FileRotator$Reader
@@ -13419,6 +13558,7 @@
 com.android.internal.util.HexDump
 com.android.internal.util.IState
 com.android.internal.util.ImageUtils
+com.android.internal.util.IndentingPrintWriter
 com.android.internal.util.IntPair
 com.android.internal.util.JournaledFile
 com.android.internal.util.LatencyTracker$$ExternalSyntheticLambda0
@@ -13488,6 +13628,7 @@
 com.android.internal.util.XmlPullParserWrapper
 com.android.internal.util.XmlSerializerWrapper
 com.android.internal.util.XmlUtils$ForcedTypedXmlPullParser
+com.android.internal.util.XmlUtils$ForcedTypedXmlSerializer
 com.android.internal.util.XmlUtils$ReadMapCallback
 com.android.internal.util.XmlUtils$WriteMapCallback
 com.android.internal.util.XmlUtils
@@ -13533,6 +13674,7 @@
 com.android.internal.util.function.pooled.PooledLambdaImpl$LambdaType$ReturnType
 com.android.internal.util.function.pooled.PooledLambdaImpl$LambdaType
 com.android.internal.util.function.pooled.PooledLambdaImpl$Pool
+com.android.internal.util.function.pooled.PooledLambdaImpl
 com.android.internal.util.function.pooled.PooledPredicate
 com.android.internal.util.function.pooled.PooledRunnable
 com.android.internal.util.function.pooled.PooledSupplier$OfDouble
@@ -14025,6 +14167,7 @@
 com.android.org.bouncycastle.jcajce.provider.asymmetric.RSA
 com.android.org.bouncycastle.jcajce.provider.asymmetric.X509$Mappings
 com.android.org.bouncycastle.jcajce.provider.asymmetric.dh.KeyFactorySpi
+com.android.org.bouncycastle.jcajce.provider.asymmetric.dsa.BCDSAPublicKey
 com.android.org.bouncycastle.jcajce.provider.asymmetric.dsa.DSAUtil
 com.android.org.bouncycastle.jcajce.provider.asymmetric.dsa.KeyFactorySpi
 com.android.org.bouncycastle.jcajce.provider.asymmetric.rsa.CipherSpi$NoPadding
@@ -14134,8 +14277,13 @@
 com.android.org.bouncycastle.util.encoders.Hex
 com.android.org.bouncycastle.util.encoders.HexEncoder
 com.android.org.bouncycastle.util.io.Streams
+com.android.org.conscrypt.OpenSSLRSAPublicKey
+com.android.org.conscrypt.OpenSSLX509Certificate
 com.android.org.kxml2.io.KXmlParser$ContentSource
 com.android.org.kxml2.io.KXmlParser$ValueContext
+com.android.org.kxml2.io.KXmlParser
+com.android.org.kxml2.io.KXmlSerializer
+com.android.os.coregraphics.HwuiStatsLog
 com.android.phone.ecc.nano.CodedInputByteBufferNano
 com.android.phone.ecc.nano.CodedOutputByteBufferNano$OutOfSpaceException
 com.android.phone.ecc.nano.CodedOutputByteBufferNano
@@ -14303,6 +14451,7 @@
 dalvik.system.AppSpecializationHooks
 dalvik.system.BaseDexClassLoader$Reporter
 dalvik.system.BaseDexClassLoader
+dalvik.system.BlockGuard$1
 dalvik.system.BlockGuard$2
 dalvik.system.BlockGuard$3
 dalvik.system.BlockGuard$BlockGuardPolicyException
@@ -14761,6 +14910,7 @@
 java.awt.font.TextAttribute
 java.io.Bits
 java.io.BufferedInputStream
+java.io.BufferedOutputStream
 java.io.BufferedReader
 java.io.BufferedWriter
 java.io.ByteArrayInputStream
@@ -14827,6 +14977,7 @@
 java.io.ObjectOutputStream$DebugTraceInfoStack
 java.io.ObjectOutputStream$HandleTable
 java.io.ObjectOutputStream$PutField
+java.io.ObjectOutputStream$PutFieldImpl
 java.io.ObjectOutputStream$ReplaceTable
 java.io.ObjectOutputStream
 java.io.ObjectStreamClass$$ExternalSyntheticLambda0
@@ -15039,6 +15190,7 @@
 java.lang.Thread
 java.lang.ThreadDeath
 java.lang.ThreadGroup
+java.lang.ThreadLocal$SuppliedThreadLocal
 java.lang.ThreadLocal$ThreadLocalMap$Entry
 java.lang.ThreadLocal$ThreadLocalMap
 java.lang.ThreadLocal-IA
@@ -15054,8 +15206,10 @@
 java.lang.UNIXProcess$2
 java.lang.UNIXProcess$3
 java.lang.UNIXProcess$ProcessPipeInputStream
+java.lang.UNIXProcess$ProcessPipeOutputStream
 java.lang.UNIXProcess$ProcessReaperThreadFactory$1
 java.lang.UNIXProcess$ProcessReaperThreadFactory
+java.lang.UNIXProcess
 java.lang.UnsatisfiedLinkError
 java.lang.UnsupportedClassVersionError
 java.lang.UnsupportedOperationException
@@ -15310,8 +15464,10 @@
 java.net.SocketException
 java.net.SocketImpl
 java.net.SocketImplFactory
+java.net.SocketInputStream
 java.net.SocketOption
 java.net.SocketOptions
+java.net.SocketOutputStream
 java.net.SocketPermission
 java.net.SocketTimeoutException
 java.net.SocksConsts
@@ -15338,12 +15494,18 @@
 java.nio.ByteBuffer
 java.nio.ByteBufferAsCharBuffer
 java.nio.ByteBufferAsDoubleBuffer
+java.nio.ByteBufferAsFloatBuffer
+java.nio.ByteBufferAsIntBuffer
+java.nio.ByteBufferAsLongBuffer
 java.nio.ByteBufferAsShortBuffer
 java.nio.ByteOrder
 java.nio.CharBuffer
 java.nio.DirectByteBuffer$MemoryRef
+java.nio.DirectByteBuffer
 java.nio.DoubleBuffer
 java.nio.FloatBuffer
+java.nio.HeapByteBuffer
+java.nio.HeapCharBuffer
 java.nio.HeapIntBuffer
 java.nio.IntBuffer
 java.nio.InvalidMarkException
@@ -15495,6 +15657,7 @@
 java.security.KeyStore
 java.security.KeyStoreException
 java.security.KeyStoreSpi
+java.security.MessageDigest$Delegate
 java.security.MessageDigest
 java.security.MessageDigestSpi
 java.security.NoSuchAlgorithmException
@@ -15656,6 +15819,7 @@
 java.text.RuleBasedCollator
 java.text.SimpleDateFormat
 java.text.StringCharacterIterator
+java.time.Clock$SystemClock
 java.time.Clock
 java.time.DateTimeException
 java.time.DayOfWeek
@@ -15674,6 +15838,7 @@
 java.time.Year
 java.time.ZoneId
 java.time.ZoneOffset
+java.time.ZoneRegion
 java.time.ZonedDateTime$$ExternalSyntheticLambda0
 java.time.ZonedDateTime$1
 java.time.ZonedDateTime
@@ -15764,6 +15929,7 @@
 java.time.zone.ZoneRulesException
 java.time.zone.ZoneRulesProvider
 java.util.AbstractCollection
+java.util.AbstractList$Itr
 java.util.AbstractList$ListItr
 java.util.AbstractList$RandomAccessSpliterator
 java.util.AbstractList$RandomAccessSubList
@@ -15773,6 +15939,7 @@
 java.util.AbstractList
 java.util.AbstractMap$1
 java.util.AbstractMap$2$1
+java.util.AbstractMap$2
 java.util.AbstractMap$SimpleEntry
 java.util.AbstractMap$SimpleImmutableEntry
 java.util.AbstractMap$ViewCollection
@@ -15781,10 +15948,15 @@
 java.util.AbstractSequentialList
 java.util.AbstractSet
 java.util.ArrayDeque$$ExternalSyntheticLambda1
+java.util.ArrayDeque$DeqIterator
+java.util.ArrayDeque$DescendingIterator
 java.util.ArrayDeque
 java.util.ArrayList$ArrayListSpliterator
+java.util.ArrayList$Itr
 java.util.ArrayList$ListItr
+java.util.ArrayList$SubList$1
 java.util.ArrayList$SubList$2
+java.util.ArrayList$SubList
 java.util.ArrayList
 java.util.ArrayPrefixHelpers$CumulateTask
 java.util.ArrayPrefixHelpers$DoubleCumulateTask
@@ -15794,6 +15966,8 @@
 java.util.Arrays$$ExternalSyntheticLambda1
 java.util.Arrays$$ExternalSyntheticLambda2
 java.util.Arrays$$ExternalSyntheticLambda3
+java.util.Arrays$ArrayItr
+java.util.Arrays$ArrayList
 java.util.Arrays$NaturalOrder
 java.util.Arrays
 java.util.ArraysParallelSortHelpers$FJObject$Sorter
@@ -15805,7 +15979,9 @@
 java.util.Calendar$Builder
 java.util.Calendar
 java.util.Collection
+java.util.Collections$1
 java.util.Collections$2
+java.util.Collections$3
 java.util.Collections$AsLIFOQueue
 java.util.Collections$CheckedCollection
 java.util.Collections$CheckedList
@@ -15819,29 +15995,50 @@
 java.util.Collections$CheckedSortedSet
 java.util.Collections$CopiesList
 java.util.Collections$EmptyEnumeration
+java.util.Collections$EmptyIterator
+java.util.Collections$EmptyList
 java.util.Collections$EmptyListIterator
+java.util.Collections$EmptyMap
+java.util.Collections$EmptySet
 java.util.Collections$ReverseComparator2
 java.util.Collections$ReverseComparator
 java.util.Collections$SequencedSetFromMap
 java.util.Collections$SetFromMap
+java.util.Collections$SingletonList
+java.util.Collections$SingletonMap
+java.util.Collections$SingletonSet
+java.util.Collections$SynchronizedCollection
 java.util.Collections$SynchronizedList
+java.util.Collections$SynchronizedMap
 java.util.Collections$SynchronizedNavigableMap
 java.util.Collections$SynchronizedNavigableSet
+java.util.Collections$SynchronizedRandomAccessList
+java.util.Collections$SynchronizedSet
 java.util.Collections$SynchronizedSortedMap
 java.util.Collections$SynchronizedSortedSet
+java.util.Collections$UnmodifiableCollection$1
+java.util.Collections$UnmodifiableCollection
 java.util.Collections$UnmodifiableList$1
 java.util.Collections$UnmodifiableList
+java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet$1
+java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet$UnmodifiableEntry
+java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet
+java.util.Collections$UnmodifiableMap
 java.util.Collections$UnmodifiableNavigableMap$EmptyNavigableMap
 java.util.Collections$UnmodifiableNavigableMap
 java.util.Collections$UnmodifiableNavigableSet$EmptyNavigableSet
 java.util.Collections$UnmodifiableNavigableSet
+java.util.Collections$UnmodifiableRandomAccessList
 java.util.Collections$UnmodifiableSequencedCollection
 java.util.Collections$UnmodifiableSequencedMap
 java.util.Collections$UnmodifiableSequencedSet
+java.util.Collections$UnmodifiableSet
 java.util.Collections$UnmodifiableSortedMap
+java.util.Collections$UnmodifiableSortedSet
 java.util.Collections-IA
 java.util.Collections
 java.util.ComparableTimSort
+java.util.Comparator$$ExternalSyntheticLambda0
 java.util.Comparator$$ExternalSyntheticLambda1
 java.util.Comparator$$ExternalSyntheticLambda2
 java.util.Comparator$$ExternalSyntheticLambda3
@@ -15888,15 +16085,25 @@
 java.util.Formatter$FormatString
 java.util.Formatter
 java.util.FormatterClosedException
+java.util.GregorianCalendar
+java.util.HashMap$EntryIterator
+java.util.HashMap$EntrySet
 java.util.HashMap$EntrySpliterator
 java.util.HashMap$HashIterator
 java.util.HashMap$HashMapSpliterator
+java.util.HashMap$KeyIterator
+java.util.HashMap$KeySet
 java.util.HashMap$KeySpliterator
+java.util.HashMap$Node
+java.util.HashMap$TreeNode
 java.util.HashMap$UnsafeHolder
+java.util.HashMap$ValueIterator
 java.util.HashMap$ValueSpliterator
+java.util.HashMap$Values
 java.util.HashMap
 java.util.HashSet
 java.util.Hashtable$EntrySet
+java.util.Hashtable$Enumerator
 java.util.Hashtable$HashtableEntry
 java.util.Hashtable$KeySet
 java.util.Hashtable$ValueCollection
@@ -15927,9 +16134,16 @@
 java.util.ImmutableCollections$AbstractImmutableSet
 java.util.ImmutableCollections$Access$1
 java.util.ImmutableCollections$Access
+java.util.ImmutableCollections$List12
+java.util.ImmutableCollections$ListItr
+java.util.ImmutableCollections$ListN
+java.util.ImmutableCollections$Map1
 java.util.ImmutableCollections$MapN$1
 java.util.ImmutableCollections$MapN$MapNIterator
+java.util.ImmutableCollections$MapN
+java.util.ImmutableCollections$Set12
 java.util.ImmutableCollections$SetN$SetNIterator
+java.util.ImmutableCollections$SetN
 java.util.ImmutableCollections$SubList
 java.util.ImmutableCollections-IA
 java.util.InputMismatchException
@@ -15937,10 +16151,19 @@
 java.util.JumboEnumSet$EnumSetIterator
 java.util.JumboEnumSet
 java.util.KeyValueHolder
+java.util.LinkedHashMap$Entry
+java.util.LinkedHashMap$LinkedEntryIterator
+java.util.LinkedHashMap$LinkedEntrySet
 java.util.LinkedHashMap$LinkedHashIterator
+java.util.LinkedHashMap$LinkedKeyIterator
+java.util.LinkedHashMap$LinkedKeySet
+java.util.LinkedHashMap$LinkedValueIterator
+java.util.LinkedHashMap$LinkedValues
 java.util.LinkedHashMap$ReversedLinkedHashMapView
 java.util.LinkedHashMap
 java.util.LinkedHashSet
+java.util.LinkedList$DescendingIterator
+java.util.LinkedList$ListItr
 java.util.LinkedList$Node
 java.util.LinkedList
 java.util.List
@@ -15977,6 +16200,7 @@
 java.util.PrimitiveIterator$OfInt$$ExternalSyntheticLambda0
 java.util.PrimitiveIterator$OfInt
 java.util.PrimitiveIterator
+java.util.PriorityQueue$Itr
 java.util.PriorityQueue
 java.util.Properties$EntrySet
 java.util.Properties$LineReader
@@ -16048,13 +16272,18 @@
 java.util.TreeMap$AscendingSubMap$AscendingEntrySetView
 java.util.TreeMap$AscendingSubMap
 java.util.TreeMap$DescendingSubMap
+java.util.TreeMap$EntryIterator
+java.util.TreeMap$EntrySet
+java.util.TreeMap$KeyIterator
 java.util.TreeMap$KeySet
 java.util.TreeMap$NavigableSubMap$DescendingSubMapKeyIterator
 java.util.TreeMap$NavigableSubMap$EntrySetView
 java.util.TreeMap$NavigableSubMap$SubMapEntryIterator
 java.util.TreeMap$NavigableSubMap$SubMapIterator
+java.util.TreeMap$NavigableSubMap$SubMapKeyIterator
 java.util.TreeMap$NavigableSubMap
 java.util.TreeMap$PrivateEntryIterator
+java.util.TreeMap$TreeMapEntry
 java.util.TreeMap$ValueIterator
 java.util.TreeMap$Values
 java.util.TreeMap
@@ -16073,6 +16302,8 @@
 java.util.WeakHashMap$EntryIterator
 java.util.WeakHashMap$EntrySet
 java.util.WeakHashMap$HashIterator
+java.util.WeakHashMap$KeyIterator
+java.util.WeakHashMap$KeySet
 java.util.WeakHashMap$ValueIterator
 java.util.WeakHashMap$Values
 java.util.WeakHashMap-IA
@@ -16099,6 +16330,8 @@
 java.util.concurrent.ConcurrentHashMap$BulkTask
 java.util.concurrent.ConcurrentHashMap$CollectionView
 java.util.concurrent.ConcurrentHashMap$CounterCell
+java.util.concurrent.ConcurrentHashMap$EntryIterator
+java.util.concurrent.ConcurrentHashMap$EntrySetView
 java.util.concurrent.ConcurrentHashMap$ForEachEntryTask
 java.util.concurrent.ConcurrentHashMap$ForEachKeyTask
 java.util.concurrent.ConcurrentHashMap$ForEachMappingTask
@@ -16111,6 +16344,7 @@
 java.util.concurrent.ConcurrentHashMap$KeyIterator
 java.util.concurrent.ConcurrentHashMap$KeySetView
 java.util.concurrent.ConcurrentHashMap$KeySpliterator
+java.util.concurrent.ConcurrentHashMap$MapEntry
 java.util.concurrent.ConcurrentHashMap$MapReduceEntriesTask
 java.util.concurrent.ConcurrentHashMap$MapReduceEntriesToDoubleTask
 java.util.concurrent.ConcurrentHashMap$MapReduceEntriesToIntTask
@@ -16141,11 +16375,14 @@
 java.util.concurrent.ConcurrentHashMap$Traverser
 java.util.concurrent.ConcurrentHashMap$TreeBin
 java.util.concurrent.ConcurrentHashMap$TreeNode
+java.util.concurrent.ConcurrentHashMap$ValueIterator
+java.util.concurrent.ConcurrentHashMap$ValuesView
 java.util.concurrent.ConcurrentHashMap
 java.util.concurrent.ConcurrentLinkedDeque$Node
 java.util.concurrent.ConcurrentLinkedDeque
 java.util.concurrent.ConcurrentLinkedQueue$$ExternalSyntheticLambda0
 java.util.concurrent.ConcurrentLinkedQueue$$ExternalSyntheticLambda2
+java.util.concurrent.ConcurrentLinkedQueue$Itr
 java.util.concurrent.ConcurrentLinkedQueue$Node
 java.util.concurrent.ConcurrentLinkedQueue
 java.util.concurrent.ConcurrentMap$$ExternalSyntheticLambda0
@@ -16160,6 +16397,8 @@
 java.util.concurrent.ConcurrentSkipListMap
 java.util.concurrent.ConcurrentSkipListSet
 java.util.concurrent.CopyOnWriteArrayList$$ExternalSyntheticLambda2
+java.util.concurrent.CopyOnWriteArrayList$COWIterator
+java.util.concurrent.CopyOnWriteArrayList
 java.util.concurrent.CopyOnWriteArraySet
 java.util.concurrent.CountDownLatch$Sync
 java.util.concurrent.CountDownLatch
@@ -16170,8 +16409,11 @@
 java.util.concurrent.Executor
 java.util.concurrent.ExecutorService
 java.util.concurrent.Executors$AutoShutdownDelegatedExecutorService$$ExternalSyntheticLambda0
+java.util.concurrent.Executors$AutoShutdownDelegatedExecutorService$$ExternalSyntheticLambda1
+java.util.concurrent.Executors$AutoShutdownDelegatedExecutorService
 java.util.concurrent.Executors$DefaultThreadFactory
 java.util.concurrent.Executors$DelegatedExecutorService
+java.util.concurrent.Executors$DelegatedScheduledExecutorService
 java.util.concurrent.Executors$RunnableAdapter
 java.util.concurrent.Executors
 java.util.concurrent.ForkJoinPool$1
@@ -16206,6 +16448,8 @@
 java.util.concurrent.ScheduledFuture
 java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue$Itr
 java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue
+java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask
+java.util.concurrent.ScheduledThreadPoolExecutor
 java.util.concurrent.Semaphore$FairSync
 java.util.concurrent.Semaphore$NonfairSync
 java.util.concurrent.Semaphore$Sync
@@ -16216,6 +16460,7 @@
 java.util.concurrent.ThreadPoolExecutor$AbortPolicy
 java.util.concurrent.ThreadPoolExecutor$DiscardPolicy
 java.util.concurrent.ThreadPoolExecutor$Worker
+java.util.concurrent.ThreadPoolExecutor
 java.util.concurrent.TimeUnit$1
 java.util.concurrent.TimeUnit
 java.util.concurrent.TimeoutException
@@ -16255,9 +16500,11 @@
 java.util.concurrent.locks.ReentrantLock
 java.util.concurrent.locks.ReentrantReadWriteLock$FairSync
 java.util.concurrent.locks.ReentrantReadWriteLock$NonfairSync
+java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock
 java.util.concurrent.locks.ReentrantReadWriteLock$Sync$HoldCounter
 java.util.concurrent.locks.ReentrantReadWriteLock$Sync$ThreadLocalHoldCounter
 java.util.concurrent.locks.ReentrantReadWriteLock$Sync
+java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock
 java.util.concurrent.locks.ReentrantReadWriteLock
 java.util.function.BiConsumer
 java.util.function.BiFunction$$ExternalSyntheticLambda0
@@ -16273,6 +16520,7 @@
 java.util.function.DoubleSupplier
 java.util.function.DoubleUnaryOperator$$ExternalSyntheticLambda0
 java.util.function.DoubleUnaryOperator$$ExternalSyntheticLambda1
+java.util.function.DoubleUnaryOperator$$ExternalSyntheticLambda2
 java.util.function.DoubleUnaryOperator
 java.util.function.Function$$ExternalSyntheticLambda0
 java.util.function.Function$$ExternalSyntheticLambda1
@@ -16426,6 +16674,7 @@
 java.util.stream.Collectors
 java.util.stream.DistinctOps$1$1
 java.util.stream.DistinctOps$1$2
+java.util.stream.DistinctOps$1
 java.util.stream.DistinctOps
 java.util.stream.DoublePipeline$$ExternalSyntheticLambda0
 java.util.stream.DoublePipeline$$ExternalSyntheticLambda4
@@ -16457,8 +16706,12 @@
 java.util.stream.IntPipeline$$ExternalSyntheticLambda7
 java.util.stream.IntPipeline$$ExternalSyntheticLambda8
 java.util.stream.IntPipeline$1$1
+java.util.stream.IntPipeline$10
+java.util.stream.IntPipeline$1
 java.util.stream.IntPipeline$4$1
+java.util.stream.IntPipeline$4
 java.util.stream.IntPipeline$9
+java.util.stream.IntPipeline$Head
 java.util.stream.IntPipeline$StatelessOp
 java.util.stream.IntPipeline
 java.util.stream.IntStream
@@ -16529,14 +16782,18 @@
 java.util.stream.ReferencePipeline$15$1
 java.util.stream.ReferencePipeline$15
 java.util.stream.ReferencePipeline$2$1
+java.util.stream.ReferencePipeline$2
 java.util.stream.ReferencePipeline$3$1
+java.util.stream.ReferencePipeline$3
 java.util.stream.ReferencePipeline$4$1
+java.util.stream.ReferencePipeline$4
 java.util.stream.ReferencePipeline$5$1
 java.util.stream.ReferencePipeline$5
 java.util.stream.ReferencePipeline$6$1
 java.util.stream.ReferencePipeline$6
 java.util.stream.ReferencePipeline$7$1
 java.util.stream.ReferencePipeline$7
+java.util.stream.ReferencePipeline$Head
 java.util.stream.ReferencePipeline$StatefulOp
 java.util.stream.ReferencePipeline$StatelessOp
 java.util.stream.ReferencePipeline
@@ -16550,6 +16807,7 @@
 java.util.stream.SliceOps$1
 java.util.stream.SliceOps
 java.util.stream.SortedOps$AbstractRefSortingSink
+java.util.stream.SortedOps$OfRef
 java.util.stream.SortedOps$RefSortingSink$$ExternalSyntheticLambda0
 java.util.stream.SortedOps$RefSortingSink
 java.util.stream.SortedOps$SizedRefSortingSink
@@ -16875,6 +17133,7 @@
 jdk.internal.misc.VM
 jdk.internal.misc.VirtualThreads
 jdk.internal.ref.CleanerFactory
+jdk.internal.ref.CleanerImpl$PhantomCleanableRef
 jdk.internal.ref.CleanerImpl
 jdk.internal.ref.PhantomCleanable
 jdk.internal.reflect.Reflection
@@ -16975,6 +17234,7 @@
 libcore.util.Objects
 libcore.util.SneakyThrow
 libcore.util.XmlObjectFactory
+libcore.util.ZoneInfo
 org.apache.harmony.dalvik.ddmc.Chunk
 org.apache.harmony.dalvik.ddmc.ChunkHandler
 org.apache.harmony.dalvik.ddmc.DdmServer
@@ -17021,6 +17281,7 @@
 org.apache.http.params.CoreConnectionPNames
 org.apache.http.params.HttpConnectionParams
 org.apache.http.params.HttpParams
+org.ccil.cowan.tagsoup.AttributesImpl
 org.ccil.cowan.tagsoup.AutoDetector
 org.ccil.cowan.tagsoup.CommandLine
 org.ccil.cowan.tagsoup.Element
@@ -17137,6 +17398,7 @@
 sun.nio.ch.FileChannelImpl$SimpleFileLockTable
 sun.nio.ch.FileChannelImpl$Unmapper
 sun.nio.ch.FileChannelImpl-IA
+sun.nio.ch.FileChannelImpl
 sun.nio.ch.FileDescriptorHolderSocketImpl
 sun.nio.ch.FileDispatcher
 sun.nio.ch.FileDispatcherImpl
@@ -17408,6 +17670,7 @@
 sun.util.locale.BaseLocale
 sun.util.locale.Extension
 sun.util.locale.InternalLocaleBuilder$CaseInsensitiveChar
+sun.util.locale.InternalLocaleBuilder$CaseInsensitiveString
 sun.util.locale.InternalLocaleBuilder-IA
 sun.util.locale.InternalLocaleBuilder
 sun.util.locale.LanguageTag
@@ -17865,6 +18128,7 @@
 [Landroid.widget.SpellChecker$SpellParser;
 [Landroid.widget.TextView$BufferType;
 [Landroid.widget.TextView$ChangeWatcher;
+[Landroid.window.BackTouchTracker$TouchTrackerState;
 [Landroid.window.DesktopModeFlags$ToggleOverride;
 [Landroid.window.DesktopModeFlags;
 [Landroid.window.TransitionFilter$Requirement;
@@ -17976,6 +18240,7 @@
 [Ljava.io.ObjectStreamClass$ClassDataSlot;
 [Ljava.io.ObjectStreamClass$MemberSignature;
 [Ljava.io.ObjectStreamField;
+[Ljava.io.Serializable;
 [Ljava.lang.Boolean;
 [Ljava.lang.Byte;
 [Ljava.lang.CharSequence;
@@ -17989,6 +18254,7 @@
 [Ljava.lang.Double;
 [Ljava.lang.Enum;
 [Ljava.lang.Integer;
+[Ljava.lang.Iterable;
 [Ljava.lang.Long;
 [Ljava.lang.Number;
 [Ljava.lang.Object;
@@ -18004,6 +18270,7 @@
 [Ljava.lang.Thread;
 [Ljava.lang.ThreadGroup;
 [Ljava.lang.ThreadLocal$ThreadLocalMap$Entry;
+[Ljava.lang.ThreadLocal;
 [Ljava.lang.Throwable;
 [Ljava.lang.Void;
 [Ljava.lang.annotation.Annotation;
@@ -18085,6 +18352,7 @@
 [Ljava.time.zone.ZoneOffsetTransitionRule$TimeDefinition;
 [Ljava.time.zone.ZoneOffsetTransitionRule;
 [Ljava.util.ArrayList;
+[Ljava.util.Comparator;
 [Ljava.util.Comparators$NaturalOrderComparator;
 [Ljava.util.Enumeration;
 [Ljava.util.Formatter$Flags;
@@ -18097,7 +18365,9 @@
 [Ljava.util.Locale$IsoCountryCode;
 [Ljava.util.Locale;
 [Ljava.util.Map$Entry;
+[Ljava.util.Set;
 [Ljava.util.TimerTask;
+[Ljava.util.UUID;
 [Ljava.util.WeakHashMap$Entry;
 [Ljava.util.concurrent.ConcurrentHashMap$CounterCell;
 [Ljava.util.concurrent.ConcurrentHashMap$Node;
@@ -18107,6 +18377,7 @@
 [Ljava.util.concurrent.Future$State;
 [Ljava.util.concurrent.RunnableScheduledFuture;
 [Ljava.util.concurrent.TimeUnit;
+[Ljava.util.concurrent.atomic.AtomicReference;
 [Ljava.util.concurrent.atomic.Striped64$Cell;
 [Ljava.util.logging.Handler;
 [Ljava.util.prefs.AbstractPreferences;
diff --git a/core/api/current.txt b/core/api/current.txt
index 4862236..1312753 100644
--- a/core/api/current.txt
+++ b/core/api/current.txt
@@ -18112,7 +18112,7 @@
     method public void setThickness(@Px int);
     method public void setThicknessRatio(@FloatRange(from=0.0f, fromInclusive=false) float);
     method public void setUseLevel(boolean);
-    field @FlaggedApi("com.android.graphics.flags.gradient_drawable_shape_rounded_cap") public static final int ARC = 4; // 0x4
+    field @FlaggedApi("com.android.graphics.flags.gradient_drawable_shape_arc_for_rounded_cap") public static final int ARC = 4; // 0x4
     field public static final int LINE = 2; // 0x2
     field public static final int LINEAR_GRADIENT = 0; // 0x0
     field public static final int OVAL = 1; // 0x1
@@ -46375,7 +46375,7 @@
     field public static final int OUT_OF_NETWORK = 11; // 0xb
     field public static final int OUT_OF_SERVICE = 18; // 0x12
     field public static final int POWER_OFF = 17; // 0x11
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_ENABLED = 82; // 0x52
+    field public static final int SATELLITE_ENABLED = 82; // 0x52
     field public static final int SERVER_ERROR = 12; // 0xc
     field public static final int SERVER_UNREACHABLE = 9; // 0x9
     field public static final int TIMED_OUT = 13; // 0xd
@@ -47077,7 +47077,7 @@
     method public int getSubscriptionType();
     method public int getUsageSetting();
     method public boolean isEmbedded();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public boolean isOnlyNonTerrestrialNetwork();
+    method public boolean isOnlyNonTerrestrialNetwork();
     method public boolean isOpportunistic();
     method public void writeToParcel(android.os.Parcel, int);
     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SubscriptionInfo> CREATOR;
@@ -47528,7 +47528,7 @@
     field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int ERI_FLASH = 2; // 0x2
     field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int ERI_OFF = 1; // 0x1
     field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int ERI_ON = 0; // 0x0
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final String EVENT_DISPLAY_EMERGENCY_MESSAGE = "android.telephony.event.DISPLAY_EMERGENCY_MESSAGE";
+    field public static final String EVENT_DISPLAY_EMERGENCY_MESSAGE = "android.telephony.event.DISPLAY_EMERGENCY_MESSAGE";
     field public static final String EXTRA_ACTIVE_SIM_SUPPORTED_COUNT = "android.telephony.extra.ACTIVE_SIM_SUPPORTED_COUNT";
     field public static final String EXTRA_APN_PROTOCOL = "android.telephony.extra.APN_PROTOCOL";
     field public static final String EXTRA_APN_TYPE = "android.telephony.extra.APN_TYPE";
@@ -47537,8 +47537,8 @@
     field public static final String EXTRA_CARRIER_NAME = "android.telephony.extra.CARRIER_NAME";
     field public static final String EXTRA_DATA_FAIL_CAUSE = "android.telephony.extra.DATA_FAIL_CAUSE";
     field public static final String EXTRA_DEFAULT_NETWORK_AVAILABLE = "android.telephony.extra.DEFAULT_NETWORK_AVAILABLE";
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final String EXTRA_EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE = "android.telephony.extra.EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE";
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final String EXTRA_EMERGENCY_CALL_TO_SATELLITE_LAUNCH_INTENT = "android.telephony.extra.EMERGENCY_CALL_TO_SATELLITE_LAUNCH_INTENT";
+    field public static final String EXTRA_EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE = "android.telephony.extra.EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE";
+    field public static final String EXTRA_EMERGENCY_CALL_TO_SATELLITE_LAUNCH_INTENT = "android.telephony.extra.EMERGENCY_CALL_TO_SATELLITE_LAUNCH_INTENT";
     field public static final String EXTRA_HIDE_PUBLIC_SETTINGS = "android.telephony.extra.HIDE_PUBLIC_SETTINGS";
     field @Deprecated public static final String EXTRA_INCOMING_NUMBER = "incoming_number";
     field public static final String EXTRA_IS_REFRESH = "android.telephony.extra.IS_REFRESH";
diff --git a/core/api/system-current.txt b/core/api/system-current.txt
index 137c967..984bc68 100644
--- a/core/api/system-current.txt
+++ b/core/api/system-current.txt
@@ -11082,7 +11082,7 @@
   public final class ConfigUpdate {
     field public static final String ACTION_UPDATE_CARRIER_ID_DB = "android.os.action.UPDATE_CARRIER_ID_DB";
     field public static final String ACTION_UPDATE_CARRIER_PROVISIONING_URLS = "android.intent.action.UPDATE_CARRIER_PROVISIONING_URLS";
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final String ACTION_UPDATE_CONFIG = "android.os.action.UPDATE_CONFIG";
+    field public static final String ACTION_UPDATE_CONFIG = "android.os.action.UPDATE_CONFIG";
     field public static final String ACTION_UPDATE_CONVERSATION_ACTIONS = "android.intent.action.UPDATE_CONVERSATION_ACTIONS";
     field public static final String ACTION_UPDATE_CT_LOGS = "android.intent.action.UPDATE_CT_LOGS";
     field public static final String ACTION_UPDATE_EMERGENCY_NUMBER_DB = "android.os.action.UPDATE_EMERGENCY_NUMBER_DB";
@@ -11092,7 +11092,7 @@
     field public static final String ACTION_UPDATE_PINS = "android.intent.action.UPDATE_PINS";
     field public static final String ACTION_UPDATE_SMART_SELECTION = "android.intent.action.UPDATE_SMART_SELECTION";
     field public static final String ACTION_UPDATE_SMS_SHORT_CODES = "android.intent.action.UPDATE_SMS_SHORT_CODES";
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final String EXTRA_DOMAIN = "android.os.extra.DOMAIN";
+    field public static final String EXTRA_DOMAIN = "android.os.extra.DOMAIN";
     field public static final String EXTRA_REQUIRED_HASH = "android.os.extra.REQUIRED_HASH";
     field public static final String EXTRA_VERSION = "android.os.extra.VERSION";
   }
@@ -18473,21 +18473,21 @@
 
 package android.telephony.satellite {
 
-  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public final class AntennaDirection implements android.os.Parcelable {
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int describeContents();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public float getX();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public float getY();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public float getZ();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void writeToParcel(@NonNull android.os.Parcel, int);
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.AntennaDirection> CREATOR;
+  public final class AntennaDirection implements android.os.Parcelable {
+    method public int describeContents();
+    method public float getX();
+    method public float getY();
+    method public float getZ();
+    method public void writeToParcel(@NonNull android.os.Parcel, int);
+    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.AntennaDirection> CREATOR;
   }
 
-  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public final class AntennaPosition implements android.os.Parcelable {
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int describeContents();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public android.telephony.satellite.AntennaDirection getAntennaDirection();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int getSuggestedHoldPosition();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void writeToParcel(@NonNull android.os.Parcel, int);
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.AntennaPosition> CREATOR;
+  public final class AntennaPosition implements android.os.Parcelable {
+    method public int describeContents();
+    method @NonNull public android.telephony.satellite.AntennaDirection getAntennaDirection();
+    method public int getSuggestedHoldPosition();
+    method public void writeToParcel(@NonNull android.os.Parcel, int);
+    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.AntennaPosition> CREATOR;
   }
 
   @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public final class EarfcnRange implements android.os.Parcelable {
@@ -18498,42 +18498,42 @@
     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.EarfcnRange> CREATOR;
   }
 
-  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public class EnableRequestAttributes {
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public boolean isDemoMode();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public boolean isEmergencyMode();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public boolean isEnabled();
+  public class EnableRequestAttributes {
+    method public boolean isDemoMode();
+    method public boolean isEmergencyMode();
+    method public boolean isEnabled();
   }
 
-  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final class EnableRequestAttributes.Builder {
-    ctor @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public EnableRequestAttributes.Builder(boolean);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public android.telephony.satellite.EnableRequestAttributes build();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public android.telephony.satellite.EnableRequestAttributes.Builder setDemoMode(boolean);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public android.telephony.satellite.EnableRequestAttributes.Builder setEmergencyMode(boolean);
+  public static final class EnableRequestAttributes.Builder {
+    ctor public EnableRequestAttributes.Builder(boolean);
+    method @NonNull public android.telephony.satellite.EnableRequestAttributes build();
+    method @NonNull public android.telephony.satellite.EnableRequestAttributes.Builder setDemoMode(boolean);
+    method @NonNull public android.telephony.satellite.EnableRequestAttributes.Builder setEmergencyMode(boolean);
   }
 
-  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public final class NtnSignalStrength implements android.os.Parcelable {
-    ctor @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public NtnSignalStrength(@Nullable android.telephony.satellite.NtnSignalStrength);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int describeContents();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int getLevel();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void writeToParcel(@NonNull android.os.Parcel, int);
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.NtnSignalStrength> CREATOR;
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NTN_SIGNAL_STRENGTH_GOOD = 3; // 0x3
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NTN_SIGNAL_STRENGTH_GREAT = 4; // 0x4
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NTN_SIGNAL_STRENGTH_MODERATE = 2; // 0x2
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NTN_SIGNAL_STRENGTH_NONE = 0; // 0x0
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NTN_SIGNAL_STRENGTH_POOR = 1; // 0x1
+  public final class NtnSignalStrength implements android.os.Parcelable {
+    ctor public NtnSignalStrength(@Nullable android.telephony.satellite.NtnSignalStrength);
+    method public int describeContents();
+    method public int getLevel();
+    method public void writeToParcel(@NonNull android.os.Parcel, int);
+    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.NtnSignalStrength> CREATOR;
+    field public static final int NTN_SIGNAL_STRENGTH_GOOD = 3; // 0x3
+    field public static final int NTN_SIGNAL_STRENGTH_GREAT = 4; // 0x4
+    field public static final int NTN_SIGNAL_STRENGTH_MODERATE = 2; // 0x2
+    field public static final int NTN_SIGNAL_STRENGTH_NONE = 0; // 0x0
+    field public static final int NTN_SIGNAL_STRENGTH_POOR = 1; // 0x1
   }
 
-  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public interface NtnSignalStrengthCallback {
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void onNtnSignalStrengthChanged(@NonNull android.telephony.satellite.NtnSignalStrength);
+  public interface NtnSignalStrengthCallback {
+    method public void onNtnSignalStrengthChanged(@NonNull android.telephony.satellite.NtnSignalStrength);
   }
 
-  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public final class PointingInfo implements android.os.Parcelable {
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int describeContents();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @FloatRange(from=0xffffff4c, to=180) public float getSatelliteAzimuthDegrees();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @FloatRange(from=0xffffffa6, to=90) public float getSatelliteElevationDegrees();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void writeToParcel(@NonNull android.os.Parcel, int);
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.PointingInfo> CREATOR;
+  public final class PointingInfo implements android.os.Parcelable {
+    method public int describeContents();
+    method @FloatRange(from=0xffffff4c, to=180) public float getSatelliteAzimuthDegrees();
+    method @FloatRange(from=0xffffffa6, to=90) public float getSatelliteElevationDegrees();
+    method public void writeToParcel(@NonNull android.os.Parcel, int);
+    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.PointingInfo> CREATOR;
   }
 
   @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public final class SatelliteAccessConfiguration implements android.os.Parcelable {
@@ -18544,18 +18544,18 @@
     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatelliteAccessConfiguration> CREATOR;
   }
 
-  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public final class SatelliteCapabilities implements android.os.Parcelable {
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int describeContents();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public java.util.Map<java.lang.Integer,android.telephony.satellite.AntennaPosition> getAntennaPositionMap();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int getMaxBytesPerOutgoingDatagram();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public java.util.Set<java.lang.Integer> getSupportedRadioTechnologies();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public boolean isPointingRequired();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void writeToParcel(@NonNull android.os.Parcel, int);
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatelliteCapabilities> CREATOR;
+  public final class SatelliteCapabilities implements android.os.Parcelable {
+    method public int describeContents();
+    method @NonNull public java.util.Map<java.lang.Integer,android.telephony.satellite.AntennaPosition> getAntennaPositionMap();
+    method public int getMaxBytesPerOutgoingDatagram();
+    method @NonNull public java.util.Set<java.lang.Integer> getSupportedRadioTechnologies();
+    method public boolean isPointingRequired();
+    method public void writeToParcel(@NonNull android.os.Parcel, int);
+    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatelliteCapabilities> CREATOR;
   }
 
-  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public interface SatelliteCapabilitiesCallback {
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void onSatelliteCapabilitiesChanged(@NonNull android.telephony.satellite.SatelliteCapabilities);
+  public interface SatelliteCapabilitiesCallback {
+    method public void onSatelliteCapabilitiesChanged(@NonNull android.telephony.satellite.SatelliteCapabilities);
   }
 
   @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public interface SatelliteCommunicationAccessStateCallback {
@@ -18563,15 +18563,15 @@
     method public default void onAccessConfigurationChanged(@Nullable android.telephony.satellite.SatelliteAccessConfiguration);
   }
 
-  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public final class SatelliteDatagram implements android.os.Parcelable {
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int describeContents();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public byte[] getSatelliteDatagram();
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void writeToParcel(@NonNull android.os.Parcel, int);
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatelliteDatagram> CREATOR;
+  public final class SatelliteDatagram implements android.os.Parcelable {
+    method public int describeContents();
+    method @NonNull public byte[] getSatelliteDatagram();
+    method public void writeToParcel(@NonNull android.os.Parcel, int);
+    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatelliteDatagram> CREATOR;
   }
 
-  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public interface SatelliteDatagramCallback {
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void onSatelliteDatagramReceived(long, @NonNull android.telephony.satellite.SatelliteDatagram, int, @NonNull java.util.function.Consumer<java.lang.Void>);
+  public interface SatelliteDatagramCallback {
+    method public void onSatelliteDatagramReceived(long, @NonNull android.telephony.satellite.SatelliteDatagram, int, @NonNull java.util.function.Consumer<java.lang.Void>);
   }
 
   @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public interface SatelliteDisallowedReasonsCallback {
@@ -18591,49 +18591,49 @@
   @FlaggedApi("com.android.internal.telephony.flags.satellite_state_change_listener") public final class SatelliteManager {
     method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void addAttachRestrictionForCarrier(int, int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void deprovisionSatellite(@NonNull java.util.List<android.telephony.satellite.SatelliteSubscriberInfo>, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Void,android.telephony.satellite.SatelliteManager.SatelliteException>);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void deprovisionService(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void deprovisionService(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
     method @NonNull @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public java.util.Set<java.lang.Integer> getAttachRestrictionReasonsForCarrier(int);
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_25q4_apis") @NonNull @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public java.util.List<java.lang.String> getSatelliteDataOptimizedApps();
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @NonNull @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int[] getSatelliteDisallowedReasons();
     method @NonNull @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public java.util.List<java.lang.String> getSatellitePlmnsForCarrier(int);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void pollPendingDatagrams(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void pollPendingDatagrams(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void provisionSatellite(@NonNull java.util.List<android.telephony.satellite.SatelliteSubscriberInfo>, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Void,android.telephony.satellite.SatelliteManager.SatelliteException>);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void provisionService(@NonNull String, @NonNull byte[], @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForCapabilitiesChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteCapabilitiesCallback);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void provisionService(@NonNull String, @NonNull byte[], @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForCapabilitiesChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteCapabilitiesCallback);
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForCommunicationAccessStateChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteCommunicationAccessStateCallback);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForIncomingDatagram(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteDatagramCallback);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForModemStateChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteModemStateCallback);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void registerForNtnSignalStrengthChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.NtnSignalStrengthCallback);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForProvisionStateChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteProvisionStateCallback);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForIncomingDatagram(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteDatagramCallback);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForModemStateChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteModemStateCallback);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void registerForNtnSignalStrengthChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.NtnSignalStrengthCallback);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForProvisionStateChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteProvisionStateCallback);
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void registerForSatelliteDisallowedReasonsChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteDisallowedReasonsCallback);
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForSelectedNbIotSatelliteSubscriptionChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SelectedNbIotSatelliteSubscriptionCallback);
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForSupportedStateChanged(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
     method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void removeAttachRestrictionForCarrier(int, int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
     method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestAttachEnabledForCarrier(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestCapabilities(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.telephony.satellite.SatelliteCapabilities,android.telephony.satellite.SatelliteManager.SatelliteException>);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestEnabled(@NonNull android.telephony.satellite.EnableRequestAttributes, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestCapabilities(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.telephony.satellite.SatelliteCapabilities,android.telephony.satellite.SatelliteManager.SatelliteException>);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestEnabled(@NonNull android.telephony.satellite.EnableRequestAttributes, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
     method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestIsAttachEnabledForCarrier(int, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestIsCommunicationAllowedForCurrentLocation(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestIsDemoModeEnabled(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestIsEmergencyModeEnabled(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestIsEnabled(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestIsProvisioned(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void requestIsSupported(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestNtnSignalStrength(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.telephony.satellite.NtnSignalStrength,android.telephony.satellite.SatelliteManager.SatelliteException>);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestIsCommunicationAllowedForCurrentLocation(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestIsDemoModeEnabled(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestIsEmergencyModeEnabled(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestIsEnabled(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestIsProvisioned(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
+    method public void requestIsSupported(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestNtnSignalStrength(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.telephony.satellite.NtnSignalStrength,android.telephony.satellite.SatelliteManager.SatelliteException>);
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestSatelliteAccessConfigurationForCurrentLocation(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.telephony.satellite.SatelliteAccessConfiguration,android.telephony.satellite.SatelliteManager.SatelliteException>);
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestSatelliteSubscriberProvisionStatus(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.util.List<android.telephony.satellite.SatelliteSubscriberProvisionStatus>,android.telephony.satellite.SatelliteManager.SatelliteException>);
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestSelectedNbIotSatelliteSubscriptionId(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Integer,android.telephony.satellite.SatelliteManager.SatelliteException>);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestTimeForNextSatelliteVisibility(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.time.Duration,android.telephony.satellite.SatelliteManager.SatelliteException>);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void sendDatagram(int, @NonNull android.telephony.satellite.SatelliteDatagram, boolean, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void setDeviceAlignedWithSatellite(boolean);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void startTransmissionUpdates(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>, @NonNull android.telephony.satellite.SatelliteTransmissionUpdateCallback);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void stopTransmissionUpdates(@NonNull android.telephony.satellite.SatelliteTransmissionUpdateCallback, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForCapabilitiesChanged(@NonNull android.telephony.satellite.SatelliteCapabilitiesCallback);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestTimeForNextSatelliteVisibility(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.time.Duration,android.telephony.satellite.SatelliteManager.SatelliteException>);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void sendDatagram(int, @NonNull android.telephony.satellite.SatelliteDatagram, boolean, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void setDeviceAlignedWithSatellite(boolean);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void startTransmissionUpdates(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>, @NonNull android.telephony.satellite.SatelliteTransmissionUpdateCallback);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void stopTransmissionUpdates(@NonNull android.telephony.satellite.SatelliteTransmissionUpdateCallback, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForCapabilitiesChanged(@NonNull android.telephony.satellite.SatelliteCapabilitiesCallback);
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForCommunicationAccessStateChanged(@NonNull android.telephony.satellite.SatelliteCommunicationAccessStateCallback);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForIncomingDatagram(@NonNull android.telephony.satellite.SatelliteDatagramCallback);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForModemStateChanged(@NonNull android.telephony.satellite.SatelliteModemStateCallback);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForNtnSignalStrengthChanged(@NonNull android.telephony.satellite.NtnSignalStrengthCallback);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForProvisionStateChanged(@NonNull android.telephony.satellite.SatelliteProvisionStateCallback);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForIncomingDatagram(@NonNull android.telephony.satellite.SatelliteDatagramCallback);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForModemStateChanged(@NonNull android.telephony.satellite.SatelliteModemStateCallback);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForNtnSignalStrengthChanged(@NonNull android.telephony.satellite.NtnSignalStrengthCallback);
+    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForProvisionStateChanged(@NonNull android.telephony.satellite.SatelliteProvisionStateCallback);
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForSatelliteDisallowedReasonsChanged(@NonNull android.telephony.satellite.SatelliteDisallowedReasonsCallback);
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForSelectedNbIotSatelliteSubscriptionChanged(@NonNull android.telephony.satellite.SelectedNbIotSatelliteSubscriptionCallback);
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForSupportedStateChanged(@NonNull java.util.function.Consumer<java.lang.Boolean>);
@@ -18643,86 +18643,86 @@
     field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int DATAGRAM_TYPE_KEEP_ALIVE = 3; // 0x3
     field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int DATAGRAM_TYPE_LAST_SOS_MESSAGE_NO_HELP_NEEDED = 5; // 0x5
     field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int DATAGRAM_TYPE_LAST_SOS_MESSAGE_STILL_NEED_HELP = 4; // 0x4
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DATAGRAM_TYPE_LOCATION_SHARING = 2; // 0x2
+    field public static final int DATAGRAM_TYPE_LOCATION_SHARING = 2; // 0x2
     field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int DATAGRAM_TYPE_SMS = 6; // 0x6
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DATAGRAM_TYPE_SOS_MESSAGE = 1; // 0x1
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DATAGRAM_TYPE_UNKNOWN = 0; // 0x0
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DEVICE_HOLD_POSITION_LANDSCAPE_LEFT = 2; // 0x2
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DEVICE_HOLD_POSITION_LANDSCAPE_RIGHT = 3; // 0x3
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DEVICE_HOLD_POSITION_PORTRAIT = 1; // 0x1
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DEVICE_HOLD_POSITION_UNKNOWN = 0; // 0x0
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DISPLAY_MODE_CLOSED = 3; // 0x3
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DISPLAY_MODE_FIXED = 1; // 0x1
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DISPLAY_MODE_OPENED = 2; // 0x2
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DISPLAY_MODE_UNKNOWN = 0; // 0x0
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE_SOS = 1; // 0x1
+    field public static final int DATAGRAM_TYPE_SOS_MESSAGE = 1; // 0x1
+    field public static final int DATAGRAM_TYPE_UNKNOWN = 0; // 0x0
+    field public static final int DEVICE_HOLD_POSITION_LANDSCAPE_LEFT = 2; // 0x2
+    field public static final int DEVICE_HOLD_POSITION_LANDSCAPE_RIGHT = 3; // 0x3
+    field public static final int DEVICE_HOLD_POSITION_PORTRAIT = 1; // 0x1
+    field public static final int DEVICE_HOLD_POSITION_UNKNOWN = 0; // 0x0
+    field public static final int DISPLAY_MODE_CLOSED = 3; // 0x3
+    field public static final int DISPLAY_MODE_FIXED = 1; // 0x1
+    field public static final int DISPLAY_MODE_OPENED = 2; // 0x2
+    field public static final int DISPLAY_MODE_UNKNOWN = 0; // 0x0
+    field public static final int EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE_SOS = 1; // 0x1
     field public static final int EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE_T911 = 2; // 0x2
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NT_RADIO_TECHNOLOGY_EMTC_NTN = 3; // 0x3
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NT_RADIO_TECHNOLOGY_NB_IOT_NTN = 1; // 0x1
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NT_RADIO_TECHNOLOGY_NR_NTN = 2; // 0x2
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NT_RADIO_TECHNOLOGY_PROPRIETARY = 4; // 0x4
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NT_RADIO_TECHNOLOGY_UNKNOWN = 0; // 0x0
+    field public static final int NT_RADIO_TECHNOLOGY_EMTC_NTN = 3; // 0x3
+    field public static final int NT_RADIO_TECHNOLOGY_NB_IOT_NTN = 1; // 0x1
+    field public static final int NT_RADIO_TECHNOLOGY_NR_NTN = 2; // 0x2
+    field public static final int NT_RADIO_TECHNOLOGY_PROPRIETARY = 4; // 0x4
+    field public static final int NT_RADIO_TECHNOLOGY_UNKNOWN = 0; // 0x0
     field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String PROPERTY_SATELLITE_MANUAL_CONNECT_P2P_SUPPORT = "android.telephony.satellite.PROPERTY_SATELLITE_MANUAL_CONNECT_P2P_SUPPORT";
     field public static final int SATELLITE_COMMUNICATION_RESTRICTION_REASON_ENTITLEMENT = 2; // 0x2
     field public static final int SATELLITE_COMMUNICATION_RESTRICTION_REASON_GEOLOCATION = 1; // 0x1
     field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_COMMUNICATION_RESTRICTION_REASON_USER = 0; // 0x0
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_IDLE = 0; // 0x0
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVE_FAILED = 7; // 0x7
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVE_NONE = 6; // 0x6
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVE_SUCCESS = 5; // 0x5
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVING = 4; // 0x4
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_SENDING = 1; // 0x1
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_SEND_FAILED = 3; // 0x3
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_SEND_SUCCESS = 2; // 0x2
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_UNKNOWN = -1; // 0xffffffff
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_WAITING_TO_CONNECT = 8; // 0x8
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_CONNECTED = 7; // 0x7
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_DATAGRAM_RETRYING = 3; // 0x3
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_DATAGRAM_TRANSFERRING = 2; // 0x2
+    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_IDLE = 0; // 0x0
+    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVE_FAILED = 7; // 0x7
+    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVE_NONE = 6; // 0x6
+    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVE_SUCCESS = 5; // 0x5
+    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVING = 4; // 0x4
+    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_SENDING = 1; // 0x1
+    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_SEND_FAILED = 3; // 0x3
+    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_SEND_SUCCESS = 2; // 0x2
+    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_UNKNOWN = -1; // 0xffffffff
+    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_WAITING_TO_CONNECT = 8; // 0x8
+    field public static final int SATELLITE_MODEM_STATE_CONNECTED = 7; // 0x7
+    field public static final int SATELLITE_MODEM_STATE_DATAGRAM_RETRYING = 3; // 0x3
+    field public static final int SATELLITE_MODEM_STATE_DATAGRAM_TRANSFERRING = 2; // 0x2
     field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_MODEM_STATE_DISABLING_SATELLITE = 9; // 0x9
     field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_MODEM_STATE_ENABLING_SATELLITE = 8; // 0x8
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_IDLE = 0; // 0x0
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_LISTENING = 1; // 0x1
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_NOT_CONNECTED = 6; // 0x6
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_OFF = 4; // 0x4
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_UNAVAILABLE = 5; // 0x5
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_UNKNOWN = -1; // 0xffffffff
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_ACCESS_BARRED = 16; // 0x10
+    field public static final int SATELLITE_MODEM_STATE_IDLE = 0; // 0x0
+    field public static final int SATELLITE_MODEM_STATE_LISTENING = 1; // 0x1
+    field public static final int SATELLITE_MODEM_STATE_NOT_CONNECTED = 6; // 0x6
+    field public static final int SATELLITE_MODEM_STATE_OFF = 4; // 0x4
+    field public static final int SATELLITE_MODEM_STATE_UNAVAILABLE = 5; // 0x5
+    field public static final int SATELLITE_MODEM_STATE_UNKNOWN = -1; // 0xffffffff
+    field public static final int SATELLITE_RESULT_ACCESS_BARRED = 16; // 0x10
     field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_RESULT_DISABLE_IN_PROGRESS = 28; // 0x1c
     field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_RESULT_EMERGENCY_CALL_IN_PROGRESS = 27; // 0x1b
     field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_RESULT_ENABLE_IN_PROGRESS = 29; // 0x1d
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_ERROR = 1; // 0x1
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_ILLEGAL_STATE = 23; // 0x17
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_INVALID_ARGUMENTS = 8; // 0x8
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_INVALID_MODEM_STATE = 7; // 0x7
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_INVALID_TELEPHONY_STATE = 6; // 0x6
+    field public static final int SATELLITE_RESULT_ERROR = 1; // 0x1
+    field public static final int SATELLITE_RESULT_ILLEGAL_STATE = 23; // 0x17
+    field public static final int SATELLITE_RESULT_INVALID_ARGUMENTS = 8; // 0x8
+    field public static final int SATELLITE_RESULT_INVALID_MODEM_STATE = 7; // 0x7
+    field public static final int SATELLITE_RESULT_INVALID_TELEPHONY_STATE = 6; // 0x6
     field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_RESULT_LOCATION_DISABLED = 25; // 0x19
     field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_RESULT_LOCATION_NOT_AVAILABLE = 26; // 0x1a
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_MODEM_BUSY = 22; // 0x16
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_MODEM_ERROR = 4; // 0x4
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_MODEM_TIMEOUT = 24; // 0x18
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_NETWORK_ERROR = 5; // 0x5
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_NETWORK_TIMEOUT = 17; // 0x11
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_NOT_AUTHORIZED = 19; // 0x13
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_NOT_REACHABLE = 18; // 0x12
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_NOT_SUPPORTED = 20; // 0x14
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_NO_RESOURCES = 12; // 0xc
+    field public static final int SATELLITE_RESULT_MODEM_BUSY = 22; // 0x16
+    field public static final int SATELLITE_RESULT_MODEM_ERROR = 4; // 0x4
+    field public static final int SATELLITE_RESULT_MODEM_TIMEOUT = 24; // 0x18
+    field public static final int SATELLITE_RESULT_NETWORK_ERROR = 5; // 0x5
+    field public static final int SATELLITE_RESULT_NETWORK_TIMEOUT = 17; // 0x11
+    field public static final int SATELLITE_RESULT_NOT_AUTHORIZED = 19; // 0x13
+    field public static final int SATELLITE_RESULT_NOT_REACHABLE = 18; // 0x12
+    field public static final int SATELLITE_RESULT_NOT_SUPPORTED = 20; // 0x14
+    field public static final int SATELLITE_RESULT_NO_RESOURCES = 12; // 0xc
     field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_RESULT_NO_VALID_SATELLITE_SUBSCRIPTION = 30; // 0x1e
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_RADIO_NOT_AVAILABLE = 10; // 0xa
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_REQUEST_ABORTED = 15; // 0xf
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_REQUEST_FAILED = 9; // 0x9
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_REQUEST_IN_PROGRESS = 21; // 0x15
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_REQUEST_NOT_SUPPORTED = 11; // 0xb
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_SERVER_ERROR = 2; // 0x2
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_SERVICE_ERROR = 3; // 0x3
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_SERVICE_NOT_PROVISIONED = 13; // 0xd
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_SERVICE_PROVISION_IN_PROGRESS = 14; // 0xe
-    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_SUCCESS = 0; // 0x0
+    field public static final int SATELLITE_RESULT_RADIO_NOT_AVAILABLE = 10; // 0xa
+    field public static final int SATELLITE_RESULT_REQUEST_ABORTED = 15; // 0xf
+    field public static final int SATELLITE_RESULT_REQUEST_FAILED = 9; // 0x9
+    field public static final int SATELLITE_RESULT_REQUEST_IN_PROGRESS = 21; // 0x15
+    field public static final int SATELLITE_RESULT_REQUEST_NOT_SUPPORTED = 11; // 0xb
+    field public static final int SATELLITE_RESULT_SERVER_ERROR = 2; // 0x2
+    field public static final int SATELLITE_RESULT_SERVICE_ERROR = 3; // 0x3
+    field public static final int SATELLITE_RESULT_SERVICE_NOT_PROVISIONED = 13; // 0xd
+    field public static final int SATELLITE_RESULT_SERVICE_PROVISION_IN_PROGRESS = 14; // 0xe
+    field public static final int SATELLITE_RESULT_SUCCESS = 0; // 0x0
   }
 
-  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static class SatelliteManager.SatelliteException extends java.lang.Exception {
-    ctor @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public SatelliteManager.SatelliteException(int);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int getErrorCode();
+  public static class SatelliteManager.SatelliteException extends java.lang.Exception {
+    ctor public SatelliteManager.SatelliteException(int);
+    method public int getErrorCode();
   }
 
   @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public final class SatelliteModemEnableRequestAttributes implements android.os.Parcelable {
@@ -18736,8 +18736,8 @@
     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatelliteModemEnableRequestAttributes> CREATOR;
   }
 
-  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public interface SatelliteModemStateCallback {
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void onSatelliteModemStateChanged(int);
+  public interface SatelliteModemStateCallback {
+    method public void onSatelliteModemStateChanged(int);
   }
 
   @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public final class SatellitePosition implements android.os.Parcelable {
@@ -18749,8 +18749,8 @@
     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatellitePosition> CREATOR;
   }
 
-  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public interface SatelliteProvisionStateCallback {
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void onSatelliteProvisionStateChanged(boolean);
+  public interface SatelliteProvisionStateCallback {
+    method public void onSatelliteProvisionStateChanged(boolean);
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public default void onSatelliteSubscriptionProvisionStateChanged(@NonNull java.util.List<android.telephony.satellite.SatelliteSubscriberProvisionStatus>);
   }
 
@@ -18800,11 +18800,11 @@
     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatelliteSubscriptionInfo> CREATOR;
   }
 
-  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public interface SatelliteTransmissionUpdateCallback {
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void onReceiveDatagramStateChanged(int, int, int);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void onSatellitePositionChanged(@NonNull android.telephony.satellite.PointingInfo);
+  public interface SatelliteTransmissionUpdateCallback {
+    method public void onReceiveDatagramStateChanged(int, int, int);
+    method public void onSatellitePositionChanged(@NonNull android.telephony.satellite.PointingInfo);
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public default void onSendDatagramRequested(int);
-    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void onSendDatagramStateChanged(int, int, int);
+    method public void onSendDatagramStateChanged(int, int, int);
     method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public default void onSendDatagramStateChanged(int, int, int, int);
   }
 
diff --git a/core/java/android/app/AppOpsManager.java b/core/java/android/app/AppOpsManager.java
index 458c171..248f191 100644
--- a/core/java/android/app/AppOpsManager.java
+++ b/core/java/android/app/AppOpsManager.java
@@ -1651,9 +1651,65 @@
     /** @hide Similar to {@link OP_CONTROL_AUDIO}, but doesn't require capabilities. */
     public static final int OP_CONTROL_AUDIO_PARTIAL = AppOpEnums.APP_OP_CONTROL_AUDIO_PARTIAL;
 
+    /**
+     * Access coarse eye tracking data.
+     *
+     * @hide
+     */
+    public static final int OP_EYE_TRACKING_COARSE =
+            AppOpEnums.APP_OP_EYE_TRACKING_COARSE;
+
+    /**
+     * Access fine eye tracking data.
+     *
+     * @hide
+     */
+    public static final int OP_EYE_TRACKING_FINE =
+            AppOpEnums.APP_OP_EYE_TRACKING_FINE;
+
+    /**
+     * Access face tracking data.
+     *
+     * @hide
+     */
+    public static final int OP_FACE_TRACKING =
+            AppOpEnums.APP_OP_FACE_TRACKING;
+
+    /**
+     * Access hand tracking data.
+     *
+     * @hide
+     */
+    public static final int OP_HAND_TRACKING =
+            AppOpEnums.APP_OP_HAND_TRACKING;
+
+    /**
+     * Access head tracking data.
+     *
+     * @hide
+     */
+    public static final int OP_HEAD_TRACKING =
+            AppOpEnums.APP_OP_HEAD_TRACKING;
+
+    /**
+     * Access coarse scene tracking data.
+     *
+     * @hide
+     */
+    public static final int OP_SCENE_UNDERSTANDING_COARSE =
+            AppOpEnums.APP_OP_SCENE_UNDERSTANDING_COARSE;
+
+    /**
+     * Access fine scene tracking data.
+     *
+     * @hide
+     */
+    public static final int OP_SCENE_UNDERSTANDING_FINE =
+            AppOpEnums.APP_OP_SCENE_UNDERSTANDING_FINE;
+
     /** @hide */
     @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553)
-    public static final int _NUM_OP = 156;
+    public static final int _NUM_OP = 163;
 
     /**
      * All app ops represented as strings.
@@ -1813,6 +1869,13 @@
             OPSTR_WRITE_SYSTEM_PREFERENCES,
             OPSTR_CONTROL_AUDIO,
             OPSTR_CONTROL_AUDIO_PARTIAL,
+            OPSTR_EYE_TRACKING_COARSE,
+            OPSTR_EYE_TRACKING_FINE,
+            OPSTR_FACE_TRACKING,
+            OPSTR_HAND_TRACKING,
+            OPSTR_HEAD_TRACKING,
+            OPSTR_SCENE_UNDERSTANDING_COARSE,
+            OPSTR_SCENE_UNDERSTANDING_FINE,
     })
     public @interface AppOpString {}
 
@@ -2579,6 +2642,36 @@
     /** @hide Access to a audio playback and control APIs without capability requirements */
     public static final String OPSTR_CONTROL_AUDIO_PARTIAL = "android:control_audio_partial";
 
+    /** @hide Access coarse eye tracking data. */
+    @FlaggedApi(android.xr.Flags.FLAG_XR_MANIFEST_ENTRIES)
+    public static final String OPSTR_EYE_TRACKING_COARSE = "android:eye_tracking_coarse";
+
+    /** @hide Access fine eye tracking data. */
+    @FlaggedApi(android.xr.Flags.FLAG_XR_MANIFEST_ENTRIES)
+    public static final String OPSTR_EYE_TRACKING_FINE = "android:eye_tracking_fine";
+
+    /** @hide Access face tracking data. */
+    @FlaggedApi(android.xr.Flags.FLAG_XR_MANIFEST_ENTRIES)
+    public static final String OPSTR_FACE_TRACKING = "android:face_tracking";
+
+    /** @hide Access hand tracking data. */
+    @FlaggedApi(android.xr.Flags.FLAG_XR_MANIFEST_ENTRIES)
+    public static final String OPSTR_HAND_TRACKING = "android:hand_tracking";
+
+    /** @hide Access head tracking data. */
+    @FlaggedApi(android.xr.Flags.FLAG_XR_MANIFEST_ENTRIES)
+    public static final String OPSTR_HEAD_TRACKING = "android:head_tracking";
+
+    /** @hide Access coarse scene tracking data. */
+    @FlaggedApi(android.xr.Flags.FLAG_XR_MANIFEST_ENTRIES)
+    public static final String OPSTR_SCENE_UNDERSTANDING_COARSE =
+            "android:scene_understanding_coarse";
+
+    /** @hide Access fine scene tracking data. */
+    @FlaggedApi(android.xr.Flags.FLAG_XR_MANIFEST_ENTRIES)
+    public static final String OPSTR_SCENE_UNDERSTANDING_FINE =
+            "android:scene_understanding_fine";
+
     /** {@link #sAppOpsToNote} not initialized yet for this op */
     private static final byte SHOULD_COLLECT_NOTE_OP_NOT_INITIALIZED = 0;
     /** Should not collect noting of this app-op in {@link #sAppOpsToNote} */
@@ -2657,6 +2750,14 @@
             Flags.replaceBodySensorPermissionEnabled() ? OP_READ_HEART_RATE : OP_NONE,
             Flags.replaceBodySensorPermissionEnabled() ? OP_READ_SKIN_TEMPERATURE : OP_NONE,
             Flags.replaceBodySensorPermissionEnabled() ? OP_READ_OXYGEN_SATURATION : OP_NONE,
+            // Android XR
+            android.xr.Flags.xrManifestEntries() ? OP_EYE_TRACKING_COARSE : OP_NONE,
+            android.xr.Flags.xrManifestEntries() ? OP_EYE_TRACKING_FINE : OP_NONE,
+            android.xr.Flags.xrManifestEntries() ? OP_FACE_TRACKING : OP_NONE,
+            android.xr.Flags.xrManifestEntries() ? OP_HAND_TRACKING : OP_NONE,
+            android.xr.Flags.xrManifestEntries() ? OP_HEAD_TRACKING : OP_NONE,
+            android.xr.Flags.xrManifestEntries() ? OP_SCENE_UNDERSTANDING_COARSE : OP_NONE,
+            android.xr.Flags.xrManifestEntries() ? OP_SCENE_UNDERSTANDING_FINE : OP_NONE,
     };
 
     /**
@@ -3192,6 +3293,41 @@
                 "CONTROL_AUDIO").setDefaultMode(AppOpsManager.MODE_FOREGROUND).build(),
         new AppOpInfo.Builder(OP_CONTROL_AUDIO_PARTIAL, OPSTR_CONTROL_AUDIO_PARTIAL,
                 "CONTROL_AUDIO_PARTIAL").setDefaultMode(AppOpsManager.MODE_FOREGROUND).build(),
+        new AppOpInfo.Builder(OP_EYE_TRACKING_COARSE, OPSTR_EYE_TRACKING_COARSE,
+                "EYE_TRACKING_COARSE")
+                .setPermission(android.xr.Flags.xrManifestEntries()
+                    ? Manifest.permission.EYE_TRACKING_COARSE : null)
+                .build(),
+        new AppOpInfo.Builder(OP_EYE_TRACKING_FINE, OPSTR_EYE_TRACKING_FINE,
+                "EYE_TRACKING_FINE")
+                .setPermission(android.xr.Flags.xrManifestEntries()
+                    ? Manifest.permission.EYE_TRACKING_FINE : null)
+                .build(),
+        new AppOpInfo.Builder(OP_FACE_TRACKING, OPSTR_FACE_TRACKING,
+                "FACE_TRACKING")
+                .setPermission(android.xr.Flags.xrManifestEntries()
+                    ? Manifest.permission.FACE_TRACKING : null)
+                .build(),
+        new AppOpInfo.Builder(OP_HAND_TRACKING, OPSTR_HAND_TRACKING,
+                "HAND_TRACKING")
+                .setPermission(android.xr.Flags.xrManifestEntries()
+                    ? Manifest.permission.HAND_TRACKING : null)
+                .build(),
+        new AppOpInfo.Builder(OP_HEAD_TRACKING, OPSTR_HEAD_TRACKING,
+                "HEAD_TRACKING")
+                .setPermission(android.xr.Flags.xrManifestEntries()
+                    ? Manifest.permission.HEAD_TRACKING : null)
+                .build(),
+        new AppOpInfo.Builder(OP_SCENE_UNDERSTANDING_COARSE, OPSTR_SCENE_UNDERSTANDING_COARSE,
+                "SCENE_UNDERSTANDING_COARSE")
+                .setPermission(android.xr.Flags.xrManifestEntries()
+                    ? Manifest.permission.SCENE_UNDERSTANDING_COARSE : null)
+                .build(),
+        new AppOpInfo.Builder(OP_SCENE_UNDERSTANDING_FINE, OPSTR_SCENE_UNDERSTANDING_FINE,
+                "SCENE_UNDERSTANDING_FINE")
+                .setPermission(android.xr.Flags.xrManifestEntries()
+                    ? Manifest.permission.SCENE_UNDERSTANDING_FINE : null)
+                .build(),
     };
 
     // The number of longs needed to form a full bitmask of app ops
@@ -3301,6 +3437,15 @@
     }
 
     /**
+     * Returns whether the provided {@code op} is a valid op code or not.
+     *
+     * @hide
+     */
+    public static boolean isValidOp(int op) {
+        return op >= 0 && op < sAppOpInfos.length;
+    }
+
+    /**
      * @hide
      */
     public static int strDebugOpToOp(String op) {
diff --git a/core/java/android/app/AutomaticZenRule.java b/core/java/android/app/AutomaticZenRule.java
index fa977c9..2daa52b 100644
--- a/core/java/android/app/AutomaticZenRule.java
+++ b/core/java/android/app/AutomaticZenRule.java
@@ -228,7 +228,7 @@
     public AutomaticZenRule(Parcel source) {
         enabled = source.readInt() == ENABLED;
         if (source.readInt() == ENABLED) {
-            name = getTrimmedString(source.readString());
+            name = getTrimmedString(source.readString8());
         }
         interruptionFilter = source.readInt();
         conditionId = getTrimmedUri(source.readParcelable(null, android.net.Uri.class));
@@ -238,11 +238,11 @@
                 source.readParcelable(null, android.content.ComponentName.class));
         creationTime = source.readLong();
         mZenPolicy = source.readParcelable(null, ZenPolicy.class);
-        mPkg = source.readString();
+        mPkg = source.readString8();
         mDeviceEffects = source.readParcelable(null, ZenDeviceEffects.class);
         mAllowManualInvocation = source.readBoolean();
         mIconResId = source.readInt();
-        mTriggerDescription = getTrimmedString(source.readString(), MAX_DESC_LENGTH);
+        mTriggerDescription = getTrimmedString(source.readString8(), MAX_DESC_LENGTH);
         mType = source.readInt();
     }
 
@@ -514,7 +514,7 @@
         dest.writeInt(enabled ? ENABLED : DISABLED);
         if (name != null) {
             dest.writeInt(1);
-            dest.writeString(name);
+            dest.writeString8(name);
         } else {
             dest.writeInt(0);
         }
@@ -524,11 +524,11 @@
         dest.writeParcelable(configurationActivity, 0);
         dest.writeLong(creationTime);
         dest.writeParcelable(mZenPolicy, 0);
-        dest.writeString(mPkg);
+        dest.writeString8(mPkg);
         dest.writeParcelable(mDeviceEffects, 0);
         dest.writeBoolean(mAllowManualInvocation);
         dest.writeInt(mIconResId);
-        dest.writeString(mTriggerDescription);
+        dest.writeString8(mTriggerDescription);
         dest.writeInt(mType);
     }
 
diff --git a/core/java/android/app/DreamManager.java b/core/java/android/app/DreamManager.java
index c597a9d..555006b 100644
--- a/core/java/android/app/DreamManager.java
+++ b/core/java/android/app/DreamManager.java
@@ -71,8 +71,11 @@
     @TestApi
     @RequiresPermission(WRITE_SECURE_SETTINGS)
     public void setScreensaverEnabled(boolean enabled) {
-        Settings.Secure.putIntForUser(mContext.getContentResolver(),
-                Settings.Secure.SCREENSAVER_ENABLED, enabled ? 1 : 0, UserHandle.USER_CURRENT);
+        try {
+            mService.setScreensaverEnabled(enabled);
+        } catch (RemoteException e) {
+            e.rethrowFromSystemServer();
+        }
     }
 
     /**
diff --git a/core/java/android/app/Instrumentation.java b/core/java/android/app/Instrumentation.java
index eb9feb9..8af5b1b 100644
--- a/core/java/android/app/Instrumentation.java
+++ b/core/java/android/app/Instrumentation.java
@@ -189,6 +189,7 @@
      * @param arguments Any additional arguments that were supplied when the 
      *                  instrumentation was started.
      */
+    @android.ravenwood.annotation.RavenwoodKeep
     public void onCreate(Bundle arguments) {
     }
 
diff --git a/core/java/android/app/Notification.java b/core/java/android/app/Notification.java
index 719e438..cc72d8f 100644
--- a/core/java/android/app/Notification.java
+++ b/core/java/android/app/Notification.java
@@ -25,6 +25,9 @@
 import static android.app.admin.DevicePolicyResources.UNDEFINED;
 import static android.graphics.drawable.Icon.TYPE_URI;
 import static android.graphics.drawable.Icon.TYPE_URI_ADAPTIVE_BITMAP;
+import static android.util.TypedValue.COMPLEX_UNIT_PX;
+import static android.view.ViewGroup.LayoutParams.MATCH_PARENT;
+import static android.view.ViewGroup.LayoutParams.WRAP_CONTENT;
 
 import static java.util.Objects.requireNonNull;
 
@@ -6001,6 +6004,8 @@
                 contentView.setViewVisibility(p.mTextViewId, View.GONE);
                 contentView.setTextViewText(p.mTextViewId, null);
             }
+
+            updateExpanderAlignment(contentView, p, hasSecondLine);
             setHeaderlessVerticalMargins(contentView, p, hasSecondLine);
 
             // Update margins to leave space for the top line (but not for headerless views like
@@ -6010,12 +6015,29 @@
                 int margin = getContentMarginTop(mContext,
                         R.dimen.notification_2025_content_margin_top);
                 contentView.setViewLayoutMargin(R.id.notification_main_column,
-                        RemoteViews.MARGIN_TOP, margin, TypedValue.COMPLEX_UNIT_PX);
+                        RemoteViews.MARGIN_TOP, margin, COMPLEX_UNIT_PX);
             }
 
             return contentView;
         }
 
+        private static void updateExpanderAlignment(RemoteViews contentView,
+                StandardTemplateParams p, boolean hasSecondLine) {
+            if (notificationsRedesignTemplates() && p.mHeaderless) {
+                if (!hasSecondLine) {
+                    // If there's no text, let's center the expand button vertically to align things
+                    // more nicely. This is handled separately for notifications that use a
+                    // NotificationHeaderView, see NotificationHeaderView#centerTopLine.
+                    contentView.setViewLayoutHeight(R.id.expand_button, MATCH_PARENT,
+                            COMPLEX_UNIT_PX);
+                } else {
+                    // Otherwise, just use the default height for the button to keep it top-aligned.
+                    contentView.setViewLayoutHeight(R.id.expand_button, WRAP_CONTENT,
+                            COMPLEX_UNIT_PX);
+                }
+            }
+        }
+
         private static void setHeaderlessVerticalMargins(RemoteViews contentView,
                 StandardTemplateParams p, boolean hasSecondLine) {
             if (Flags.notificationsRedesignTemplates() || !p.mHeaderless) {
@@ -9504,14 +9526,21 @@
                     .viewType(viewType)
                     .highlightExpander(isConversationLayout)
                     .hideProgress(true)
-                    .text(null)
                     .hideLeftIcon(isOneToOne)
                     .hideRightIcon(hideRightIcons || isOneToOne);
             if (notificationsRedesignTemplates()) {
+                String lastMessage = !mMessages.isEmpty()
+                        ? mMessages.getLast().mText.toString() : null;
+
                 p.title(conversationTitle)
+                        // The text is not actually displayed like this (since we're using a
+                        // MessagingLinearLayout instead of the regular text), but we're using it to
+                        // know whether the notification will have a second line in practice.
+                        .text(lastMessage)
                         .hideAppName(isCollapsed);
             } else {
                 p.title(isLegacyHeaderless ? conversationTitle : null)
+                        .text(null)
                         .headerTextSecondary(isLegacyHeaderless ? null : conversationTitle);
             }
             RemoteViews contentView = mBuilder.applyStandardTemplateWithActions(
@@ -9560,7 +9589,7 @@
                 int marginStart = res.getDimensionPixelSize(
                         R.dimen.notification_2025_content_margin_start);
                 contentView.setViewLayoutMargin(R.id.title,
-                        RemoteViews.MARGIN_START, marginStart, TypedValue.COMPLEX_UNIT_PX);
+                        RemoteViews.MARGIN_START, marginStart, COMPLEX_UNIT_PX);
             }
             if (isLegacyHeaderless) {
                 // Collapsed legacy messaging style has a 1-line limit.
diff --git a/core/java/android/app/NotificationManager.java b/core/java/android/app/NotificationManager.java
index 726999a..050ef23 100644
--- a/core/java/android/app/NotificationManager.java
+++ b/core/java/android/app/NotificationManager.java
@@ -1282,6 +1282,10 @@
      * delegate for (see {@link #canNotifyAsPackage(String)}), or it will not be returned. To query
      * a channel as a notification delegate, call this method from a context created for that
      * package (see {@link Context#createPackageContext(String, int)}).</p>
+     *
+     * <p>If a conversation channel with the given conversation id is not found, this method will
+     * instead return the parent channel with the given channel ID, or {@code null} if neither
+     * exists.</p>
      */
     public @Nullable NotificationChannel getNotificationChannel(@NonNull String channelId,
             @NonNull String conversationId) {
diff --git a/core/java/android/app/OWNERS b/core/java/android/app/OWNERS
index 7a811a1..5b0cf115 100644
--- a/core/java/android/app/OWNERS
+++ b/core/java/android/app/OWNERS
@@ -132,7 +132,7 @@
 per-file ConfigurationController.java = file:/services/core/java/com/android/server/wm/OWNERS
 per-file *ScreenCapture* = file:/services/core/java/com/android/server/wm/OWNERS
 per-file ComponentOptions.java = file:/services/core/java/com/android/server/wm/OWNERS
-
+per-file Presentation.java = file:/services/core/java/com/android/server/wm/OWNERS
 
 # Multitasking
 per-file multitasking.aconfig = file:/services/core/java/com/android/server/wm/OWNERS
diff --git a/core/java/android/app/Presentation.java b/core/java/android/app/Presentation.java
index bdab39d..f39e2dd 100644
--- a/core/java/android/app/Presentation.java
+++ b/core/java/android/app/Presentation.java
@@ -20,6 +20,8 @@
 import static android.view.WindowManager.LayoutParams.TYPE_PRESENTATION;
 import static android.view.WindowManager.LayoutParams.TYPE_PRIVATE_PRESENTATION;
 
+import static com.android.window.flags.Flags.enablePresentationForConnectedDisplays;
+
 import android.annotation.NonNull;
 import android.compat.annotation.UnsupportedAppUsage;
 import android.content.Context;
@@ -34,6 +36,8 @@
 import android.view.Display;
 import android.view.Gravity;
 import android.view.Window;
+import android.view.WindowInsets;
+import android.view.WindowInsetsController;
 import android.view.WindowManager;
 import android.view.WindowManager.LayoutParams.WindowType;
 
@@ -277,6 +281,11 @@
     @Override
     public void show() {
         super.show();
+
+        WindowInsetsController controller = getWindow().getInsetsController();
+        if (controller != null && enablePresentationForConnectedDisplays()) {
+            controller.hide(WindowInsets.Type.systemBars());
+        }
     }
 
     /**
diff --git a/core/java/android/app/TEST_MAPPING b/core/java/android/app/TEST_MAPPING
index e93d8bdb..3a02188 100644
--- a/core/java/android/app/TEST_MAPPING
+++ b/core/java/android/app/TEST_MAPPING
@@ -169,6 +169,23 @@
             "name": "CtsWindowManagerBackgroundActivityTestCases"
         }
     ],
+    // v2/sysui/suite/test-mapping-sysui-screenshot-test
+    "sysui-screenshot-test": [
+        {
+        "name": "SystemUIGoogleScreenshotTests",
+        "options": [
+            {
+            "exclude-annotation": "org.junit.Ignore"
+            },
+            {
+            "exclude-annotation": "androidx.test.filters.FlakyTest"
+            },
+            {
+            "exclude-annotation": "android.platform.test.annotations.Postsubmit"
+            }
+        ]
+        }
+    ],
     "postsubmit": [
         {
             "file_patterns": ["(/|^)ActivityThreadClientTest.java"],
diff --git a/core/java/android/app/contentsuggestions/OWNERS b/core/java/android/app/contentsuggestions/OWNERS
index 5f8de77..3d21a6a 100644
--- a/core/java/android/app/contentsuggestions/OWNERS
+++ b/core/java/android/app/contentsuggestions/OWNERS
@@ -1,4 +1,3 @@
 # Bug component: 643919
 
 hackz@google.com
-volnov@google.com
diff --git a/core/java/android/app/contextualsearch/flags.aconfig b/core/java/android/app/contextualsearch/flags.aconfig
index 1de034b..1a14b20 100644
--- a/core/java/android/app/contextualsearch/flags.aconfig
+++ b/core/java/android/app/contextualsearch/flags.aconfig
@@ -23,6 +23,18 @@
     bug: "371065456"
 }
 
+
+flag {
+  name: "report_secure_surfaces_in_assist_structure"
+  namespace: "windowing_frontend"
+  description: "SurfaceView reports when the surface is using a SECURE flag."
+  bug: "390504528"
+  metadata {
+    purpose: PURPOSE_BUGFIX
+  }
+}
+
+
 flag {
     name: "contextual_search_prevent_self_capture"
     namespace: "sysui_integrations"
diff --git a/core/java/android/app/people/OWNERS b/core/java/android/app/people/OWNERS
index 7371a88..399511a 100644
--- a/core/java/android/app/people/OWNERS
+++ b/core/java/android/app/people/OWNERS
@@ -1,4 +1,3 @@
 # Bug component: 978868
 
-danningc@google.com
-juliacr@google.com
\ No newline at end of file
+juliacr@google.com
diff --git a/core/java/android/app/wearable/OWNERS b/core/java/android/app/wearable/OWNERS
index 497eaf0..56c8ca5 100644
--- a/core/java/android/app/wearable/OWNERS
+++ b/core/java/android/app/wearable/OWNERS
@@ -2,4 +2,3 @@
 hackz@google.com
 oni@google.com
 tomchan@google.com
-volnov@google.com
\ No newline at end of file
diff --git a/core/java/android/companion/virtual/flags/flags.aconfig b/core/java/android/companion/virtual/flags/flags.aconfig
index 67ade79..0085e4f 100644
--- a/core/java/android/companion/virtual/flags/flags.aconfig
+++ b/core/java/android/companion/virtual/flags/flags.aconfig
@@ -143,3 +143,10 @@
     is_fixed_read_only: true
     bug: "370928384"
 }
+
+flag {
+    name: "device_aware_settings_override"
+    namespace: "virtual_devices"
+    description: "Settings override for virtual devices"
+    bug: "371801645"
+}
diff --git a/core/java/android/content/integrity/OWNERS b/core/java/android/content/integrity/OWNERS
index 20c758a..ca65fda 100644
--- a/core/java/android/content/integrity/OWNERS
+++ b/core/java/android/content/integrity/OWNERS
@@ -1,5 +1,4 @@
 # Bug component: 722021
 
 toddke@android.com
-toddke@google.com
 patb@google.com
diff --git a/core/java/android/content/pm/ActivityInfo.java b/core/java/android/content/pm/ActivityInfo.java
index e645060..fd59ea9 100644
--- a/core/java/android/content/pm/ActivityInfo.java
+++ b/core/java/android/content/pm/ActivityInfo.java
@@ -1347,6 +1347,33 @@
             314961188L;
 
     /**
+     * Excludes the packages the override is applied to from the camera compatibility treatment for
+     * fixed-orientation apps, which simulates running on a portrait device, in the orientation
+     * requested by the app.
+     *
+     * <p>This treatment aims to mitigate camera issues on large screens, like stretched or sideways
+     * previews. It simulates running on a portrait device by:
+     * <ul>
+     *   <li>Letterboxing the app window,
+     *   <li>Cropping the camera buffer to match the app's requested orientation,
+     *   <li>Setting the camera sensor orientation to portrait.
+     *   <li>Setting the display rotation to match the app's requested orientation, given portrait
+     *       natural orientation,
+     *   <li>Refreshes the activity to trigger new camera setup, with sandboxed values.
+     * </ul>
+     *
+     * <p>By setting this override to {@code true}, it disables the camera compatibility treatment
+     * which simulates app's requested orientation.
+     *
+     * @hide
+     */
+    @ChangeId
+    @Overridable
+    @Disabled
+    public static final long OVERRIDE_CAMERA_COMPAT_DISABLE_SIMULATE_REQUESTED_ORIENTATION =
+            398195815L;  // buganizer id
+
+    /**
      * This change id forces the packages it is applied to sandbox {@link android.view.View} API to
      * an activity bounds for:
      *
diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java
index 9e91f59..49fd634 100644
--- a/core/java/android/content/pm/PackageManager.java
+++ b/core/java/android/content/pm/PackageManager.java
@@ -5000,10 +5000,9 @@
      * supports the Android XR Spatial APIs. The feature version indicates the highest version of
      * the Android XR Spatial APIs supported by the device.
      *
-     * <p>Also see <a href="https://developer.android.com/xr">Getting started with Spatializing
-     * your app</a>.
+     * <p>Also see <a href="https://developer.android.com/develop/xr">Develop with the Android XR
+     * SDK</a>.
      */
-    // TODO(b/374330735): update public documentation once link content is finalized
     @FlaggedApi(android.xr.Flags.FLAG_XR_MANIFEST_ENTRIES)
     @SdkConstant(SdkConstantType.FEATURE)
     public static final String FEATURE_XR_API_SPATIAL =
diff --git a/core/java/android/content/pm/parsing/OWNERS b/core/java/android/content/pm/parsing/OWNERS
index 8049d5c..445a833 100644
--- a/core/java/android/content/pm/parsing/OWNERS
+++ b/core/java/android/content/pm/parsing/OWNERS
@@ -2,4 +2,3 @@
 
 chiuwinson@google.com
 patb@google.com
-toddke@google.com
diff --git a/core/java/android/content/pm/permission/OWNERS b/core/java/android/content/pm/permission/OWNERS
index cf7e689..8ef8474 100644
--- a/core/java/android/content/pm/permission/OWNERS
+++ b/core/java/android/content/pm/permission/OWNERS
@@ -3,6 +3,5 @@
 include platform/frameworks/base:/core/java/android/permission/OWNERS
 
 toddke@android.com
-toddke@google.com
 patb@google.com
 
diff --git a/core/java/android/content/res/CompatibilityInfo.java b/core/java/android/content/res/CompatibilityInfo.java
index afcdcb0..5727fcf 100644
--- a/core/java/android/content/res/CompatibilityInfo.java
+++ b/core/java/android/content/res/CompatibilityInfo.java
@@ -40,8 +40,6 @@
 import android.view.WindowManager;
 import android.view.WindowManager.LayoutParams;
 
-import com.android.aconfig.annotations.VisibleForTesting;
-
 /**
  * CompatibilityInfo class keeps the information about the screen compatibility mode that the
  * application is running under.
@@ -763,7 +761,6 @@
     }
 
     /** @see #sOverrideDisplayRotation */
-    @VisibleForTesting
     public static int getOverrideDisplayRotation() {
         return sOverrideDisplayRotation;
     }
diff --git a/core/java/android/credentials/flags.aconfig b/core/java/android/credentials/flags.aconfig
index 449423f1..73c4d66 100644
--- a/core/java/android/credentials/flags.aconfig
+++ b/core/java/android/credentials/flags.aconfig
@@ -154,4 +154,14 @@
     metadata {
         purpose: PURPOSE_BUGFIX
     }
+}
+
+flag {
+    namespace: "credential_manager"
+    name: "safeguard_candidate_credentials_api_caller"
+    description: "Restricts get candidate credentials api to credential autofill service"
+    bug: "370477460"
+    metadata {
+        purpose: PURPOSE_BUGFIX
+    }
 }
\ No newline at end of file
diff --git a/core/java/android/database/sqlite/SQLiteConnectionPool.java b/core/java/android/database/sqlite/SQLiteConnectionPool.java
index 505905f..86480fd 100644
--- a/core/java/android/database/sqlite/SQLiteConnectionPool.java
+++ b/core/java/android/database/sqlite/SQLiteConnectionPool.java
@@ -31,6 +31,7 @@
 
 import com.android.internal.annotations.GuardedBy;
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.os.BackgroundThread;
 
 import dalvik.annotation.optimization.NeverCompile;
 import dalvik.system.CloseGuard;
@@ -187,7 +188,8 @@
         // In case of MAX_VALUE - idle connections are never closed
         if (mConfiguration.idleConnectionTimeoutMs != Long.MAX_VALUE) {
             setupIdleConnectionHandler(
-                    Looper.getMainLooper(), mConfiguration.idleConnectionTimeoutMs, null);
+                BackgroundThread.getHandler().getLooper(),
+                mConfiguration.idleConnectionTimeoutMs, null);
         }
     }
 
diff --git a/core/java/android/hardware/display/DisplayManagerGlobal.java b/core/java/android/hardware/display/DisplayManagerGlobal.java
index c4af871..bebca57 100644
--- a/core/java/android/hardware/display/DisplayManagerGlobal.java
+++ b/core/java/android/hardware/display/DisplayManagerGlobal.java
@@ -1499,7 +1499,7 @@
     }
 
     @VisibleForTesting
-    static final class DisplayListenerDelegate {
+    public static final class DisplayListenerDelegate {
         public final DisplayListener mListener;
         public volatile long mInternalEventFlagsMask;
 
@@ -1536,7 +1536,7 @@
         }
 
         @VisibleForTesting
-        boolean isEventFilterExplicit() {
+        public boolean isEventFilterExplicit() {
             return mIsEventFilterExplicit;
         }
 
@@ -1892,7 +1892,7 @@
     }
 
     @VisibleForTesting
-    CopyOnWriteArrayList<DisplayListenerDelegate> getDisplayListeners() {
+    public CopyOnWriteArrayList<DisplayListenerDelegate> getDisplayListeners() {
         return mDisplayListeners;
     }
 }
diff --git a/core/java/android/hardware/location/ContextHubManager.java b/core/java/android/hardware/location/ContextHubManager.java
index 953ee08..5b5360e 100644
--- a/core/java/android/hardware/location/ContextHubManager.java
+++ b/core/java/android/hardware/location/ContextHubManager.java
@@ -485,6 +485,9 @@
     /**
      * Returns the list of ContextHubInfo objects describing the available Context Hubs.
      *
+     * To find the list of hubs that include all Hubs (including both Context Hubs and Vendor Hubs),
+     * use the {@link #getHubs()} method instead.
+     *
      * @return the list of ContextHubInfo objects
      *
      * @see ContextHubInfo
@@ -499,8 +502,8 @@
     }
 
     /**
-     * Returns the list of HubInfo objects describing the available hubs (including ContextHub and
-     * VendorHub). This method is primarily used for debugging purposes as most clients care about
+     * Returns the list of HubInfo objects describing the available hubs (including Context Hubs and
+     * Vendor Hubs). This method is primarily used for debugging purposes as most clients care about
      * endpoints and services more than hubs.
      *
      * @return the list of HubInfo objects
diff --git a/core/java/android/hardware/serial/OWNERS b/core/java/android/hardware/serial/OWNERS
new file mode 100644
index 0000000..bc2c66a
--- /dev/null
+++ b/core/java/android/hardware/serial/OWNERS
@@ -0,0 +1,6 @@
+kkaplon@google.com
+mjel@google.com
+chominskib@google.com
+wzwonarz@google.com
+gstepniewski@google.com
+xutan@google.com
\ No newline at end of file
diff --git a/core/java/android/hardware/serial/flags/flags.aconfig b/core/java/android/hardware/serial/flags/flags.aconfig
new file mode 100644
index 0000000..d8244ba
--- /dev/null
+++ b/core/java/android/hardware/serial/flags/flags.aconfig
@@ -0,0 +1,10 @@
+package: "android.hardware.serial"
+container: "system"
+
+flag {
+    name: "enable_serial_api"
+    namespace: "serial"
+    description: "Feature flag to enable serial API"
+    bug: "369155426"
+    is_exported: true
+}
\ No newline at end of file
diff --git a/core/java/android/os/Build.java b/core/java/android/os/Build.java
index 1e6469c..0ceafa0 100644
--- a/core/java/android/os/Build.java
+++ b/core/java/android/os/Build.java
@@ -1515,7 +1515,7 @@
                 VERSION_CODES.VANILLA_ICE_CREAM * SDK_INT_MULTIPLIER;
 
         /**
-         * The upcoming, not yet finalized, version of Android.
+         * Android 36.0.
          */
         public static final int BAKLAVA = VERSION_CODES.BAKLAVA * SDK_INT_MULTIPLIER;
     }
diff --git a/core/java/android/os/CombinedMessageQueue/MessageQueue.java b/core/java/android/os/CombinedMessageQueue/MessageQueue.java
index 7497234..ce1717b 100644
--- a/core/java/android/os/CombinedMessageQueue/MessageQueue.java
+++ b/core/java/android/os/CombinedMessageQueue/MessageQueue.java
@@ -92,11 +92,8 @@
     // queue for async messages when inserting a message at the tail.
     private int mAsyncMessageCount;
 
-    /**
-     * @hide
-     */
     private final AtomicLong mMessageCount = new AtomicLong();
-    private final Thread mThread;
+    private final String mThreadName;
     private final long mTid;
 
     /**
@@ -133,7 +130,7 @@
         mUseConcurrent = sIsProcessAllowedToUseConcurrent;
         mQuitAllowed = quitAllowed;
         mPtr = nativeInit();
-        mThread = Thread.currentThread();
+        mThreadName = Thread.currentThread().getName();
         mTid = Process.myTid();
     }
 
@@ -223,10 +220,10 @@
 
         traceMessageCount();
         PerfettoTrace.instant(PerfettoTrace.MQ_CATEGORY, "message_queue_send")
-                .addFlow(msg.mEventId.get())
+                .setFlow(msg.mEventId.get())
                 .beginProto()
                 .beginNested(2004 /* message_queue */)
-                .addField(2 /* receiving_thread_name */, mThread.getName())
+                .addField(2 /* receiving_thread_name */, mThreadName)
                 .addField(3 /* message_code */, msg.what)
                 .addField(4 /* message_delay_ms */, when - SystemClock.uptimeMillis())
                 .endNested()
@@ -237,7 +234,7 @@
     /** @hide */
     private void traceMessageCount() {
         PerfettoTrace.counter(PerfettoTrace.MQ_CATEGORY, mMessageCount.get())
-                .usingThreadCounterTrack(mTid, mThread.getName())
+                .usingThreadCounterTrack(mTid, mThreadName)
                 .emit();
     }
 
diff --git a/core/java/android/os/ConfigUpdate.java b/core/java/android/os/ConfigUpdate.java
index 87cd4ee..38530d1a5 100644
--- a/core/java/android/os/ConfigUpdate.java
+++ b/core/java/android/os/ConfigUpdate.java
@@ -16,7 +16,6 @@
 
 package android.os;
 
-import android.annotation.FlaggedApi;
 import android.annotation.SdkConstant;
 import android.annotation.SdkConstant.SdkConstantType;
 import android.annotation.SystemApi;
@@ -144,7 +143,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(com.android.internal.telephony.flags.Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     @SdkConstant(SdkConstantType.BROADCAST_INTENT_ACTION)
     public static final String ACTION_UPDATE_CONFIG = "android.os.action.UPDATE_CONFIG";
 
@@ -172,7 +170,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(com.android.internal.telephony.flags.Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final String EXTRA_DOMAIN  = "android.os.extra.DOMAIN";
 
     private ConfigUpdate() {
diff --git a/core/java/android/os/IBinder.java b/core/java/android/os/IBinder.java
index 8cfd324..48e6249 100644
--- a/core/java/android/os/IBinder.java
+++ b/core/java/android/os/IBinder.java
@@ -451,7 +451,7 @@
      * @param executor The executor on which to run the callback.
      * @param callback The callback used to deliver state change notifications.
      *
-     * <p>@throws {@link UnsupportedOperationException} if the kernel binder driver does not support
+     * @throws {@link UnsupportedOperationException} if the kernel binder driver does not support
      * this feature.
      */
     @FlaggedApi(Flags.FLAG_BINDER_FROZEN_STATE_CHANGE_CALLBACK)
diff --git a/core/java/android/os/Looper.java b/core/java/android/os/Looper.java
index 1329b90..3ff6e05 100644
--- a/core/java/android/os/Looper.java
+++ b/core/java/android/os/Looper.java
@@ -205,7 +205,7 @@
                 .addField(1 /* sending_thread_name */, msg.mSendingThreadName)
                 .endNested()
                 .endProto()
-                .addTerminatingFlow(msg.mEventId.get())
+                .setTerminatingFlow(msg.mEventId.get())
                 .emit();
 
         // This must be in a local variabe, in case a UI event sets the logger
diff --git a/core/java/android/os/Message.java b/core/java/android/os/Message.java
index b22d177..69e84e3 100644
--- a/core/java/android/os/Message.java
+++ b/core/java/android/os/Message.java
@@ -23,7 +23,7 @@
 
 import com.android.internal.annotations.VisibleForTesting;
 
-import java.util.concurrent.atomic.AtomicInteger;
+import java.util.concurrent.atomic.AtomicLong;
 
 /**
  *
@@ -43,7 +43,7 @@
      *
      * @hide Only for use within the system server.
      */
-    public final AtomicInteger mEventId = new AtomicInteger();
+    public final AtomicLong mEventId = new AtomicLong();
 
     /**
      * User-defined message code so that the recipient can identify
diff --git a/core/java/android/os/OWNERS b/core/java/android/os/OWNERS
index 727dcba..a6785ba 100644
--- a/core/java/android/os/OWNERS
+++ b/core/java/android/os/OWNERS
@@ -78,7 +78,7 @@
 per-file PatternMatcher* = file:/PACKAGE_MANAGER_OWNERS
 
 # PermissionEnforcer
-per-file PermissionEnforcer.java = tweek@google.com, brufino@google.com
+per-file PermissionEnforcer.java = tweek@google.com
 
 # RemoteCallbackList
 per-file RemoteCallbackList.java = shayba@google.com
diff --git a/core/java/android/os/PerfettoTrackEventExtra.java b/core/java/android/os/PerfettoTrackEventExtra.java
index f4b5dfe..2848bcb 100644
--- a/core/java/android/os/PerfettoTrackEventExtra.java
+++ b/core/java/android/os/PerfettoTrackEventExtra.java
@@ -172,7 +172,6 @@
         private final Pool<FieldDouble> mFieldDoubleCache;
         private final Pool<FieldString> mFieldStringCache;
         private final Pool<FieldNested> mFieldNestedCache;
-        private final Pool<Flow> mFlowCache;
         private final Pool<Builder> mBuilderCache;
 
         private Builder() {
@@ -187,7 +186,6 @@
             mFieldDoubleCache = mExtra.mFieldDoubleCache;
             mFieldStringCache = mExtra.mFieldStringCache;
             mFieldNestedCache = mExtra.mFieldNestedCache;
-            mFlowCache = mExtra.mFlowCache;
             mBuilderCache = mExtra.mBuilderCache;
 
             mCounterInt64 = mExtra.getCounterInt64();
@@ -227,7 +225,6 @@
             mFieldStringCache.reset();
             mFieldNestedCache.reset();
             mBuilderCache.reset();
-            mFlowCache.reset();
 
             mExtra.reset();
             // Reset after on init in case the thread created builders without calling emit
@@ -325,39 +322,7 @@
         /**
          * Adds a flow with {@code id}.
          */
-        public Builder addFlow(int id) {
-            if (!mIsCategoryEnabled) {
-                return this;
-            }
-            if (DEBUG) {
-                checkParent();
-            }
-            Flow flow = mFlowCache.get(sFlowSupplier);
-            flow.setProcessFlow(id);
-            mExtra.addPerfettoPointer(flow);
-            return this;
-        }
-
-        /**
-         * Adds a terminating flow with {@code id}.
-         */
-        public Builder addTerminatingFlow(int id) {
-            if (!mIsCategoryEnabled) {
-                return this;
-            }
-            if (DEBUG) {
-                checkParent();
-            }
-            Flow flow = mFlowCache.get(sFlowSupplier);
-            flow.setProcessTerminatingFlow(id);
-            mExtra.addPerfettoPointer(flow);
-            return this;
-        }
-
-        /**
-         * Adds a flow with {@code id}.
-         */
-        public Builder setFlow(int id) {
+        public Builder setFlow(long id) {
             if (!mIsCategoryEnabled) {
                 return this;
             }
@@ -372,7 +337,7 @@
         /**
          * Adds a terminating flow with {@code id}.
          */
-        public Builder setTerminatingFlow(int id) {
+        public Builder setTerminatingFlow(long id) {
             if (!mIsCategoryEnabled) {
                 return this;
             }
@@ -670,7 +635,6 @@
     private final Pool<FieldDouble> mFieldDoubleCache = new Pool(DEFAULT_EXTRA_CACHE_SIZE);
     private final Pool<FieldString> mFieldStringCache = new Pool(DEFAULT_EXTRA_CACHE_SIZE);
     private final Pool<FieldNested> mFieldNestedCache = new Pool(DEFAULT_EXTRA_CACHE_SIZE);
-    private final Pool<Flow> mFlowCache = new Pool(DEFAULT_EXTRA_CACHE_SIZE);
     private final Pool<Builder> mBuilderCache = new Pool(DEFAULT_EXTRA_CACHE_SIZE);
 
     private static final NativeAllocationRegistry sRegistry =
diff --git a/core/java/android/os/PowerManagerInternal.java b/core/java/android/os/PowerManagerInternal.java
index 77b6d70..2736b60 100644
--- a/core/java/android/os/PowerManagerInternal.java
+++ b/core/java/android/os/PowerManagerInternal.java
@@ -357,4 +357,9 @@
      * This may affect dream eligibility.
      */
     public abstract void setDevicePostured(boolean isPostured);
+
+    /**
+     * Notifies PowerManager that settings have changed and that it should refresh its state.
+     */
+    public abstract void updateSettings();
 }
diff --git a/core/java/android/os/vibrator/flags.aconfig b/core/java/android/os/vibrator/flags.aconfig
index 0615578..414f2749 100644
--- a/core/java/android/os/vibrator/flags.aconfig
+++ b/core/java/android/os/vibrator/flags.aconfig
@@ -155,3 +155,13 @@
       purpose: PURPOSE_BUGFIX
     }
 }
+
+flag {
+    namespace: "haptics"
+    name: "fix_external_vibration_system_update_aware"
+    description: "Fix the audio-coupled haptics handling of system updates."
+    bug: "372241975"
+    metadata {
+      purpose: PURPOSE_BUGFIX
+    }
+}
diff --git a/core/java/android/preference/OWNERS b/core/java/android/preference/OWNERS
index b4cb9ec..38a5abd 100644
--- a/core/java/android/preference/OWNERS
+++ b/core/java/android/preference/OWNERS
@@ -1,5 +1,4 @@
 lpf@google.com
-pavlis@google.com
 clarabayarri@google.com
 
-per-file SeekBarVolumizer.java = jmtrivi@google.com
\ No newline at end of file
+per-file SeekBarVolumizer.java = jmtrivi@google.com
diff --git a/core/java/android/print/OWNERS b/core/java/android/print/OWNERS
index ce79f5d..15f6406 100644
--- a/core/java/android/print/OWNERS
+++ b/core/java/android/print/OWNERS
@@ -1,5 +1,4 @@
 # Bug component: 47273
 
 anothermark@google.com
-kumarashishg@google.com
 bmgordon@google.com
diff --git a/core/java/android/printservice/OWNERS b/core/java/android/printservice/OWNERS
index ce79f5d..15f6406 100644
--- a/core/java/android/printservice/OWNERS
+++ b/core/java/android/printservice/OWNERS
@@ -1,5 +1,4 @@
 # Bug component: 47273
 
 anothermark@google.com
-kumarashishg@google.com
 bmgordon@google.com
diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java
index 538283e..89f66c0 100644
--- a/core/java/android/provider/Settings.java
+++ b/core/java/android/provider/Settings.java
@@ -9345,6 +9345,18 @@
                 "accessibility_autoclick_ignore_minor_cursor_movement";
 
         /**
+         * String setting that stores the position of the autoclick panel when
+         * {@link #ACCESSIBILITY_AUTOCLICK_ENABLED} is set. The position is stored as a
+         * comma-separated string containing gravity, x-coordinate, y-coordinate, and corner index.
+         * For example, "8388659,15,30,0", where 8388659 means gravity Gravity.START | Gravity.TOP.
+         *
+         * @see #ACCESSIBILITY_AUTOCLICK_ENABLED
+         * @hide
+         */
+        public static final String ACCESSIBILITY_AUTOCLICK_PANEL_POSITION =
+                "accessibility_autoclick_panel_position";
+
+        /**
          * Whether or not larger size icons are used for the pointer of mouse/trackpad for
          * accessibility.
          * (0 = false, 1 = true)
diff --git a/core/java/android/service/dreams/IDreamManager.aidl b/core/java/android/service/dreams/IDreamManager.aidl
index 3ca9d93..fdacd60 100644
--- a/core/java/android/service/dreams/IDreamManager.aidl
+++ b/core/java/android/service/dreams/IDreamManager.aidl
@@ -59,4 +59,6 @@
             float screenBrightnessFloat, int screenBrightnessInt,
             boolean useNormalBrightnessForDoze);
     oneway void finishSelfOneway(in IBinder token, boolean immediate);
+    @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS)")
+    void setScreensaverEnabled(boolean enabled);
 }
diff --git a/core/java/android/service/notification/ZenModeConfig.java b/core/java/android/service/notification/ZenModeConfig.java
index 4cbd5be..1cf43d4 100644
--- a/core/java/android/service/notification/ZenModeConfig.java
+++ b/core/java/android/service/notification/ZenModeConfig.java
@@ -2636,7 +2636,7 @@
             enabled = source.readInt() == 1;
             snoozing = source.readInt() == 1;
             if (source.readInt() == 1) {
-                name = source.readString();
+                name = source.readString8();
             }
             zenMode = source.readInt();
             conditionId = source.readParcelable(null, android.net.Uri.class);
@@ -2644,18 +2644,18 @@
             component = source.readParcelable(null, android.content.ComponentName.class);
             configurationActivity = source.readParcelable(null, android.content.ComponentName.class);
             if (source.readInt() == 1) {
-                id = source.readString();
+                id = source.readString8();
             }
             creationTime = source.readLong();
             if (source.readInt() == 1) {
-                enabler = source.readString();
+                enabler = source.readString8();
             }
             zenPolicy = source.readParcelable(null, android.service.notification.ZenPolicy.class);
             zenDeviceEffects = source.readParcelable(null, ZenDeviceEffects.class);
-            pkg = source.readString();
+            pkg = source.readString8();
             allowManualInvocation = source.readBoolean();
-            iconResName = source.readString();
-            triggerDescription = source.readString();
+            iconResName = source.readString8();
+            triggerDescription = source.readString8();
             type = source.readInt();
             userModifiedFields = source.readInt();
             zenPolicyUserModifiedFields = source.readInt();
@@ -2703,7 +2703,7 @@
             dest.writeInt(snoozing ? 1 : 0);
             if (name != null) {
                 dest.writeInt(1);
-                dest.writeString(name);
+                dest.writeString8(name);
             } else {
                 dest.writeInt(0);
             }
@@ -2714,23 +2714,23 @@
             dest.writeParcelable(configurationActivity, 0);
             if (id != null) {
                 dest.writeInt(1);
-                dest.writeString(id);
+                dest.writeString8(id);
             } else {
                 dest.writeInt(0);
             }
             dest.writeLong(creationTime);
             if (enabler != null) {
                 dest.writeInt(1);
-                dest.writeString(enabler);
+                dest.writeString8(enabler);
             } else {
                 dest.writeInt(0);
             }
             dest.writeParcelable(zenPolicy, 0);
             dest.writeParcelable(zenDeviceEffects, 0);
-            dest.writeString(pkg);
+            dest.writeString8(pkg);
             dest.writeBoolean(allowManualInvocation);
-            dest.writeString(iconResName);
-            dest.writeString(triggerDescription);
+            dest.writeString8(iconResName);
+            dest.writeString8(triggerDescription);
             dest.writeInt(type);
             dest.writeInt(userModifiedFields);
             dest.writeInt(zenPolicyUserModifiedFields);
diff --git a/core/java/android/speech/OWNERS b/core/java/android/speech/OWNERS
index 32f4822..f228ba46 100644
--- a/core/java/android/speech/OWNERS
+++ b/core/java/android/speech/OWNERS
@@ -1,3 +1,2 @@
-volnov@google.com
 eugeniom@google.com
 schfan@google.com
diff --git a/core/java/android/text/OWNERS b/core/java/android/text/OWNERS
index 0935ffd9..b493ef7 100644
--- a/core/java/android/text/OWNERS
+++ b/core/java/android/text/OWNERS
@@ -4,7 +4,6 @@
 halilibo@google.com
 haoyuchang@google.com
 justinghan@google.com
-klippenstein@google.com
 nona@google.com
 seanmcq@google.com
 siyamed@google.com
diff --git a/core/java/android/util/apk/OWNERS b/core/java/android/util/apk/OWNERS
index 0f4e869..f267f9a 100644
--- a/core/java/android/util/apk/OWNERS
+++ b/core/java/android/util/apk/OWNERS
@@ -1,3 +1,2 @@
 include /core/java/android/content/pm/OWNERS
-cbrubaker@google.com
 mpgroover@google.com
diff --git a/core/java/android/view/IWindowManager.aidl b/core/java/android/view/IWindowManager.aidl
index f58baff..4fc894c 100644
--- a/core/java/android/view/IWindowManager.aidl
+++ b/core/java/android/view/IWindowManager.aidl
@@ -789,6 +789,12 @@
             in @nullable ImeTracker.Token statsToken);
 
     /**
+     * Updates the currently animating insets types of a remote process.
+     */
+    @EnforcePermission("MANAGE_APP_TOKENS")
+    void updateDisplayWindowAnimatingTypes(int displayId, int animatingTypes);
+
+    /**
      * Called to get the expected window insets.
      *
      * @return {@code true} if system bars are always consumed.
diff --git a/core/java/android/view/IWindowSession.aidl b/core/java/android/view/IWindowSession.aidl
index 1f8f0820..7d6d5a2 100644
--- a/core/java/android/view/IWindowSession.aidl
+++ b/core/java/android/view/IWindowSession.aidl
@@ -272,6 +272,15 @@
             in @nullable ImeTracker.Token imeStatsToken);
 
     /**
+     * Notifies WindowState what insets types are currently running within the Window.
+     * see {@link com.android.server.wm.WindowState#mInsetsAnimationRunning).
+     *
+     * @param window The window that is insets animaiton is running.
+     * @param animatingTypes Indicates the currently animating insets types.
+     */
+    oneway void updateAnimatingTypes(IWindow window, int animatingTypes);
+
+    /**
      * Called when the system gesture exclusion has changed.
      */
     oneway void reportSystemGestureExclusionChanged(IWindow window, in List<Rect> exclusionRects);
@@ -372,14 +381,4 @@
      */
     oneway void notifyImeWindowVisibilityChangedFromClient(IWindow window, boolean visible,
             in ImeTracker.Token statsToken);
-
-    /**
-     * Notifies WindowState whether inset animations are currently running within the Window.
-     * This value is used by the server to vote for refresh rate.
-     * see {@link com.android.server.wm.WindowState#mInsetsAnimationRunning).
-     *
-     * @param window The window that is insets animaiton is running.
-     * @param running Indicates the insets animation state.
-     */
-    oneway void notifyInsetsAnimationRunningStateChanged(IWindow window, boolean running);
 }
diff --git a/core/java/android/view/InsetsController.java b/core/java/android/view/InsetsController.java
index 3659e78..462c5c6 100644
--- a/core/java/android/view/InsetsController.java
+++ b/core/java/android/view/InsetsController.java
@@ -211,12 +211,12 @@
         }
 
         /**
-         * Notifies when the state of running animation is changed. The state is either "running" or
-         * "idle".
+         * Notifies when the insets types of running animation have changed. The animatingTypes
+         * contain all types, which have an ongoing animation.
          *
-         * @param running {@code true} if there is any animation running; {@code false} otherwise.
+         * @param animatingTypes the {@link InsetsType}s that are currently animating
          */
-        default void notifyAnimationRunningStateChanged(boolean running) {}
+        default void updateAnimatingTypes(@InsetsType int animatingTypes) {}
 
         /** @see ViewRootImpl#isHandlingPointerEvent */
         default boolean isHandlingPointerEvent() {
@@ -665,6 +665,9 @@
     /** Set of inset types which are requested visible which are reported to the host */
     private @InsetsType int mReportedRequestedVisibleTypes = WindowInsets.Type.defaultVisible();
 
+    /** Set of insets types which are currently animating */
+    private @InsetsType int mAnimatingTypes = 0;
+
     /** Set of inset types that we have controls of */
     private @InsetsType int mControllableTypes;
 
@@ -745,9 +748,10 @@
                             mFrame, mFromState, mToState, RESIZE_INTERPOLATOR,
                             ANIMATION_DURATION_RESIZE, mTypes, InsetsController.this);
                     if (mRunningAnimations.isEmpty()) {
-                        mHost.notifyAnimationRunningStateChanged(true);
+                        mHost.updateAnimatingTypes(runner.getTypes());
                     }
                     mRunningAnimations.add(new RunningAnimation(runner, runner.getAnimationType()));
+                    mAnimatingTypes |= runner.getTypes();
                 }
             };
 
@@ -1564,9 +1568,8 @@
             }
         }
         ImeTracker.forLogging().onProgress(statsToken, ImeTracker.PHASE_CLIENT_ANIMATION_RUNNING);
-        if (mRunningAnimations.isEmpty()) {
-            mHost.notifyAnimationRunningStateChanged(true);
-        }
+        mAnimatingTypes |= runner.getTypes();
+        mHost.updateAnimatingTypes(mAnimatingTypes);
         mRunningAnimations.add(new RunningAnimation(runner, animationType));
         if (DEBUG) Log.d(TAG, "Animation added to runner. useInsetsAnimationThread: "
                 + useInsetsAnimationThread);
@@ -1578,11 +1581,7 @@
             Trace.asyncTraceBegin(TRACE_TAG_VIEW, "IC.pendingAnim", 0);
         }
 
-        if (Flags.refactorInsetsController()) {
-            onAnimationStateChanged(typesReady, true /* running */);
-        } else {
-            onAnimationStateChanged(types, true /* running */);
-        }
+        onAnimationStateChanged(types, true /* running */);
 
         if (fromIme) {
             switch (animationType) {
@@ -1831,7 +1830,7 @@
                     dispatchAnimationEnd(runningAnimation.runner.getAnimation());
                 } else {
                     if (Flags.refactorInsetsController()) {
-                        if (removedTypes == ime()
+                        if ((removedTypes & ime()) != 0
                                 && control.getAnimationType() == ANIMATION_TYPE_HIDE) {
                             if (mHost != null) {
                                 // if the (hide) animation is cancelled, the
@@ -1846,9 +1845,11 @@
                 break;
             }
         }
-        if (mRunningAnimations.isEmpty()) {
-            mHost.notifyAnimationRunningStateChanged(false);
+        if (removedTypes > 0) {
+            mAnimatingTypes &= ~removedTypes;
+            mHost.updateAnimatingTypes(mAnimatingTypes);
         }
+
         onAnimationStateChanged(removedTypes, false /* running */);
     }
 
@@ -1973,14 +1974,6 @@
         return animatingTypes;
     }
 
-    private @InsetsType int computeAnimatingTypes() {
-        int animatingTypes = 0;
-        for (int i = 0; i < mRunningAnimations.size(); i++) {
-            animatingTypes |= mRunningAnimations.get(i).runner.getTypes();
-        }
-        return animatingTypes;
-    }
-
     /**
      * Called when finishing setting requested visible types or finishing setting controls.
      *
@@ -1993,7 +1986,7 @@
             // report its requested visibility at the end of the animation, otherwise we would
             // lose the leash, and it would disappear during the animation
             // TODO(b/326377046) revisit this part and see if we can make it more general
-            typesToReport = mRequestedVisibleTypes | (computeAnimatingTypes() & ime());
+            typesToReport = mRequestedVisibleTypes | (mAnimatingTypes & ime());
         } else {
             typesToReport = mRequestedVisibleTypes;
         }
diff --git a/core/java/android/view/OrientationEventListener.java b/core/java/android/view/OrientationEventListener.java
index cd48a4f..2feb44f 100644
--- a/core/java/android/view/OrientationEventListener.java
+++ b/core/java/android/view/OrientationEventListener.java
@@ -16,13 +16,19 @@
 
 package android.view;
 
+import static android.app.WindowConfiguration.ROTATION_UNDEFINED;
+
+import android.annotation.NonNull;
 import android.content.Context;
+import android.content.res.CompatibilityInfo;
 import android.hardware.Sensor;
 import android.hardware.SensorEvent;
 import android.hardware.SensorEventListener;
 import android.hardware.SensorManager;
 import android.util.Log;
 
+import com.android.window.flags.Flags;
+
 /**
  * Helper class for receiving notifications from the SensorManager when
  * the orientation of the device has changed.
@@ -70,8 +76,10 @@
         mRate = rate;
         mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
         if (mSensor != null) {
-            // Create listener only if sensors do exist
-            mSensorEventListener = new SensorEventListenerImpl();
+            // Create listener only if sensors do exist.
+            mSensorEventListener = Flags.enableCameraCompatForDesktopWindowing()
+                    ? new CompatSensorEventListenerImpl(new SensorEventListenerImpl())
+                    : new SensorEventListenerImpl();
         }
     }
     
@@ -114,13 +122,13 @@
         private static final int _DATA_X = 0;
         private static final int _DATA_Y = 1;
         private static final int _DATA_Z = 2;
-        
+
         public void onSensorChanged(SensorEvent event) {
             float[] values = event.values;
             int orientation = ORIENTATION_UNKNOWN;
             float X = -values[_DATA_X];
             float Y = -values[_DATA_Y];
-            float Z = -values[_DATA_Z];        
+            float Z = -values[_DATA_Z];
             float magnitude = X*X + Y*Y;
             // Don't trust the angle if the magnitude is small compared to the y value
             if (magnitude * 4 >= Z*Z) {
@@ -130,7 +138,7 @@
                 // normalize to 0 - 359 range
                 while (orientation >= 360) {
                     orientation -= 360;
-                } 
+                }
                 while (orientation < 0) {
                     orientation += 360;
                 }
@@ -148,7 +156,46 @@
 
         }
     }
-    
+
+    /** Decorator to the {@link SensorEventListenerImpl}, which provides compat values if needed. */
+    class CompatSensorEventListenerImpl implements SensorEventListener {
+        // SensorEventListener without compatibility capabilities.
+        final SensorEventListenerImpl mSensorEventListener;
+
+        CompatSensorEventListenerImpl(@NonNull SensorEventListenerImpl sensorEventListener) {
+            mSensorEventListener = sensorEventListener;
+        }
+
+        public void onSensorChanged(SensorEvent event) {
+            // If the display rotation override is set, the same override should be applied to
+            // this orientation too. This rotation override will only be set when an app has a
+            // camera open and it is in camera compat mode for desktop windowing (freeform mode).
+            // Values of this override is Surface.ROTATION_0/90/180/270, or
+            // WindowConfiguration.ROTATION_UNDEFINED when not set.
+            if (CompatibilityInfo.getOverrideDisplayRotation() != ROTATION_UNDEFINED) {
+                // SensorEventListener reports the rotation in the opposite direction from the
+                // display rotation.
+                int orientation = (360 - CompatibilityInfo.getOverrideDisplayRotation() * 90) % 360;
+                if (orientation != mOrientation) {
+                    mOrientation = orientation;
+                    onOrientationChanged(orientation);
+                }
+                // `mOldListener` is deprecated and returns 3D values, which are highly unlikely to
+                // be used for orienting camera image. Thus this listener is not called here, as
+                // opposed to extrapolating values from display rotation, from 1D->3D.
+            } else {
+                // Use the default implementation: calculate the orientation from event coordinates.
+                // This method will call OrientationEventListener.onOrientationChanged(orientation)
+                // if the orientation has changed.
+                mSensorEventListener.onSensorChanged(event);
+            }
+        }
+
+        public void onAccuracyChanged(Sensor sensor, int accuracy) {
+
+        }
+    }
+
     /*
      * Returns true if sensor is enabled and false otherwise
      */
diff --git a/core/java/android/view/SurfaceView.java b/core/java/android/view/SurfaceView.java
index b98f4db..4f6c730 100644
--- a/core/java/android/view/SurfaceView.java
+++ b/core/java/android/view/SurfaceView.java
@@ -2247,6 +2247,27 @@
         t.reparent(sc, mBlastSurfaceControl).show(sc);
     }
 
+    /**
+     * Populates a {@link ViewStructure} for content capture.
+     *
+     * <p>If {@link #setSecure(boolean)} has been enabled, will add a property to the
+     * {@link android.app.assist.AssistStructure.ViewNode} to indicate that content will not
+     * be available for this part of the screen.
+     *
+     * @hide
+     */
+    @Override
+    protected void onProvideStructure(@NonNull ViewStructure structure,
+            @ViewStructureType int viewFor, int flags) {
+        super.onProvideStructure(structure, viewFor, flags);
+        if (android.app.contextualsearch.flags.Flags.reportSecureSurfacesInAssistStructure()) {
+            if ((mSurfaceFlags & SurfaceControl.SECURE) != 0) {
+                structure.getExtras().putBoolean(
+                        ViewStructure.EXTRA_CONTAINS_SECURE_LAYERS, true);
+            }
+        }
+    }
+
     /** @hide */
     @Override
     public void onInitializeAccessibilityNodeInfoInternal(AccessibilityNodeInfo info) {
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java
index 9498407..7fd7be8 100644
--- a/core/java/android/view/ViewRootImpl.java
+++ b/core/java/android/view/ViewRootImpl.java
@@ -2540,11 +2540,12 @@
     }
 
     /**
-     * Notify the when the running state of a insets animation changed.
+     * Notify the when the animating insets types have changed.
      */
     @VisibleForTesting
-    public void notifyInsetsAnimationRunningStateChanged(boolean running) {
+    public void updateAnimatingTypes(@InsetsType int animatingTypes) {
         if (sToolkitSetFrameRateReadOnlyFlagValue) {
+            boolean running = animatingTypes != 0;
             if (Trace.isTagEnabled(Trace.TRACE_TAG_VIEW)) {
                 Trace.instant(Trace.TRACE_TAG_VIEW,
                         TextUtils.formatSimple("notifyInsetsAnimationRunningStateChanged(%s)",
@@ -2552,7 +2553,7 @@
             }
             mInsetsAnimationRunning = running;
             try {
-                mWindowSession.notifyInsetsAnimationRunningStateChanged(mWindow, running);
+                mWindowSession.updateAnimatingTypes(mWindow, animatingTypes);
             } catch (RemoteException e) {
             }
         }
diff --git a/core/java/android/view/ViewRootInsetsControllerHost.java b/core/java/android/view/ViewRootInsetsControllerHost.java
index 889acca4..8954df6 100644
--- a/core/java/android/view/ViewRootInsetsControllerHost.java
+++ b/core/java/android/view/ViewRootInsetsControllerHost.java
@@ -171,6 +171,13 @@
     }
 
     @Override
+    public void updateAnimatingTypes(@WindowInsets.Type.InsetsType int animatingTypes) {
+        if (mViewRoot != null) {
+            mViewRoot.updateAnimatingTypes(animatingTypes);
+        }
+    }
+
+    @Override
     public boolean hasAnimationCallbacks() {
         if (mViewRoot.mView == null) {
             return false;
@@ -275,13 +282,6 @@
     }
 
     @Override
-    public void notifyAnimationRunningStateChanged(boolean running) {
-        if (mViewRoot != null) {
-            mViewRoot.notifyInsetsAnimationRunningStateChanged(running);
-        }
-    }
-
-    @Override
     public boolean isHandlingPointerEvent() {
         return mViewRoot != null && mViewRoot.isHandlingPointerEvent();
     }
diff --git a/core/java/android/view/ViewStructure.java b/core/java/android/view/ViewStructure.java
index 43a946a..53953a9 100644
--- a/core/java/android/view/ViewStructure.java
+++ b/core/java/android/view/ViewStructure.java
@@ -77,6 +77,19 @@
             "android.view.ViewStructure.extra.FIRST_ACTIVE_POSITION";
 
     /**
+     * Key used for confirming whether the view draws graphics containing secure layers.
+     *
+     * <p>Secure layers cannot be read back into main memory and will show up as blank regions
+     * in assist screenshots.
+     *
+     * @see android.view.SurfaceControl#SECURE
+     *
+     * @hide
+     */
+    public static final String EXTRA_CONTAINS_SECURE_LAYERS =
+            "android.view.ViewStructure.extra.CONTAINS_SECURE_LAYERS";
+
+    /**
      * Key used for writing the type of the view that generated the virtual structure of its
      * children.
      *
diff --git a/core/java/android/view/WindowManager.java b/core/java/android/view/WindowManager.java
index 24647f4..196ae5e 100644
--- a/core/java/android/view/WindowManager.java
+++ b/core/java/android/view/WindowManager.java
@@ -625,6 +625,12 @@
     int TRANSIT_FLAG_PHYSICAL_DISPLAY_SWITCH = (1 << 14); // 0x4000
 
     /**
+     * Transition flag: Indicates that aod is showing hidden by entering doze
+     * @hide
+     */
+    int TRANSIT_FLAG_AOD_APPEARING = (1 << 15); // 0x8000
+
+    /**
      * @hide
      */
     @IntDef(flag = true, prefix = { "TRANSIT_FLAG_" }, value = {
@@ -643,6 +649,7 @@
             TRANSIT_FLAG_KEYGUARD_OCCLUDING,
             TRANSIT_FLAG_KEYGUARD_UNOCCLUDING,
             TRANSIT_FLAG_PHYSICAL_DISPLAY_SWITCH,
+            TRANSIT_FLAG_AOD_APPEARING,
     })
     @Retention(RetentionPolicy.SOURCE)
     @interface TransitionFlags {}
@@ -659,7 +666,8 @@
             (TRANSIT_FLAG_KEYGUARD_GOING_AWAY
             | TRANSIT_FLAG_KEYGUARD_APPEARING
             | TRANSIT_FLAG_KEYGUARD_OCCLUDING
-            | TRANSIT_FLAG_KEYGUARD_UNOCCLUDING);
+            | TRANSIT_FLAG_KEYGUARD_UNOCCLUDING
+            | TRANSIT_FLAG_AOD_APPEARING);
 
     /**
      * Remove content mode: Indicates remove content mode is currently not defined.
diff --git a/core/java/android/view/WindowlessWindowManager.java b/core/java/android/view/WindowlessWindowManager.java
index 72a595d..0a86ff8 100644
--- a/core/java/android/view/WindowlessWindowManager.java
+++ b/core/java/android/view/WindowlessWindowManager.java
@@ -597,6 +597,11 @@
     }
 
     @Override
+    public void updateAnimatingTypes(IWindow window, @InsetsType int animatingTypes) {
+        // NO-OP
+    }
+
+    @Override
     public void reportSystemGestureExclusionChanged(android.view.IWindow window,
             List<Rect> exclusionRects) {
     }
@@ -679,11 +684,6 @@
             @NonNull ImeTracker.Token statsToken) {
     }
 
-    @Override
-    public void notifyInsetsAnimationRunningStateChanged(IWindow window, boolean running) {
-        // NO-OP
-    }
-
     void setParentInterface(@Nullable ISurfaceControlViewHostParent parentInterface) {
         IBinder oldInterface = mParentInterface == null ? null : mParentInterface.asBinder();
         IBinder newInterface = parentInterface == null ? null : parentInterface.asBinder();
diff --git a/core/java/android/view/accessibility/flags/accessibility_flags.aconfig b/core/java/android/view/accessibility/flags/accessibility_flags.aconfig
index 49a11ca..80a9cbc 100644
--- a/core/java/android/view/accessibility/flags/accessibility_flags.aconfig
+++ b/core/java/android/view/accessibility/flags/accessibility_flags.aconfig
@@ -235,6 +235,14 @@
 }
 
 flag {
+    name: "request_rectangle_with_source"
+    namespace: "accessibility"
+    description: "Request rectangle on screen with source parameter"
+    bug: "391877896"
+    is_exported: true
+}
+
+flag {
     name: "restore_a11y_secure_settings_on_hsum_device"
     namespace: "accessibility"
     description: "Grab the a11y settings and send the settings restored broadcast for current visible foreground user"
diff --git a/core/java/android/view/inputmethod/ImeTracker.java b/core/java/android/view/inputmethod/ImeTracker.java
index aa0111a..60178cd 100644
--- a/core/java/android/view/inputmethod/ImeTracker.java
+++ b/core/java/android/view/inputmethod/ImeTracker.java
@@ -225,6 +225,7 @@
             PHASE_SERVER_UPDATE_CLIENT_VISIBILITY,
             PHASE_WM_DISPLAY_IME_CONTROLLER_SET_IME_REQUESTED_VISIBLE,
             PHASE_WM_UPDATE_DISPLAY_WINDOW_REQUESTED_VISIBLE_TYPES,
+            PHASE_WM_REQUESTED_VISIBLE_TYPES_NOT_CHANGED,
     })
     @Retention(RetentionPolicy.SOURCE)
     @interface Phase {}
@@ -445,6 +446,9 @@
     /** The control target reported its requestedVisibleTypes back to WindowManagerService. */
     int PHASE_WM_UPDATE_DISPLAY_WINDOW_REQUESTED_VISIBLE_TYPES =
             ImeProtoEnums.PHASE_WM_UPDATE_DISPLAY_WINDOW_REQUESTED_VISIBLE_TYPES;
+    /** The requestedVisibleTypes have not been changed, so this request is not continued. */
+    int PHASE_WM_REQUESTED_VISIBLE_TYPES_NOT_CHANGED =
+            ImeProtoEnums.PHASE_WM_REQUESTED_VISIBLE_TYPES_NOT_CHANGED;
 
     /**
      * Called when an IME request is started.
diff --git a/core/java/android/view/inputmethod/flags.aconfig b/core/java/android/view/inputmethod/flags.aconfig
index 16f4114..a4ea64e 100644
--- a/core/java/android/view/inputmethod/flags.aconfig
+++ b/core/java/android/view/inputmethod/flags.aconfig
@@ -196,3 +196,21 @@
     purpose: PURPOSE_BUGFIX
   }
 }
+
+flag {
+  name: "report_animating_insets_types"
+  namespace: "input_method"
+  description: "Adding animating insets types and report IME visibility at the beginning of hiding"
+  bug: "393049691"
+}
+
+flag {
+    name: "lower_ime_oom_importance"
+    namespace: "input_method"
+    description: "Lower keyboard app process oom importance to PERCEPTIBLE_APP_ADJ + 1."
+    bug: "372511805"
+    is_fixed_read_only: true
+    metadata {
+        purpose: PURPOSE_BUGFIX
+    }
+}
diff --git a/core/java/android/view/textclassifier/intent/OWNERS b/core/java/android/view/textclassifier/intent/OWNERS
index dc18514..4a5dfd8 100644
--- a/core/java/android/view/textclassifier/intent/OWNERS
+++ b/core/java/android/view/textclassifier/intent/OWNERS
@@ -2,5 +2,4 @@
 
 toki@google.com
 svetoslavganov@android.com
-svetoslavganov@google.com
 joannechung@google.com
diff --git a/core/java/android/widget/RemoteViewsAdapter.java b/core/java/android/widget/RemoteViewsAdapter.java
index 118edc2..fa7b74f 100644
--- a/core/java/android/widget/RemoteViewsAdapter.java
+++ b/core/java/android/widget/RemoteViewsAdapter.java
@@ -242,7 +242,7 @@
 
         @Override
         public void onNullBinding(ComponentName name) {
-            enqueueDeferredUnbindServiceMessage();
+            unbindNow();
         }
 
         @Override
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java
index 99fe0cb..5e828ba 100644
--- a/core/java/android/widget/TextView.java
+++ b/core/java/android/widget/TextView.java
@@ -5211,7 +5211,11 @@
      */
     @Nullable
     public String getFontVariationSettings() {
-        return mTextPaint.getFontVariationSettings();
+        if (Flags.typefaceRedesignReadonly()) {
+            return mTextPaint.getFontVariationOverride();
+        } else {
+            return mTextPaint.getFontVariationSettings();
+        }
     }
 
     /**
@@ -5567,10 +5571,10 @@
                             Math.clamp(400 + mFontWeightAdjustment,
                                     FontStyle.FONT_WEIGHT_MIN, FontStyle.FONT_WEIGHT_MAX)));
                 }
-                mTextPaint.setFontVariationSettings(
+                mTextPaint.setFontVariationOverride(
                         FontVariationAxis.toFontVariationSettings(axes));
             } else {
-                mTextPaint.setFontVariationSettings(fontVariationSettings);
+                mTextPaint.setFontVariationOverride(fontVariationSettings);
             }
             effective = true;
         } else {
diff --git a/core/java/android/widget/flags/notification_widget_flags.aconfig b/core/java/android/widget/flags/notification_widget_flags.aconfig
index 56a2cf7..732eabe 100644
--- a/core/java/android/widget/flags/notification_widget_flags.aconfig
+++ b/core/java/android/widget/flags/notification_widget_flags.aconfig
@@ -66,4 +66,14 @@
   metadata {
     purpose: PURPOSE_BUGFIX
   }
+}
+
+flag {
+  name: "drop_non_existing_messages"
+  namespace: "systemui"
+  description: "Drops all group and message entries that no longer exist."
+  bug: "378101061"
+  metadata {
+    purpose: PURPOSE_BUGFIX
+  }
 }
\ No newline at end of file
diff --git a/core/java/android/window/DesktopModeFlags.java b/core/java/android/window/DesktopModeFlags.java
index 4aeedbb..e74a875 100644
--- a/core/java/android/window/DesktopModeFlags.java
+++ b/core/java/android/window/DesktopModeFlags.java
@@ -43,6 +43,8 @@
 public enum DesktopModeFlags {
     // All desktop mode related flags to be overridden by developer option toggle will be added here
     // go/keep-sorted start
+    DISABLE_DESKTOP_LAUNCH_PARAMS_OUTSIDE_DESKTOP_BUG_FIX(
+            Flags::disableDesktopLaunchParamsOutsideDesktopBugFix, false),
     DISABLE_NON_RESIZABLE_APP_SNAP_RESIZE(Flags::disableNonResizableAppSnapResizing, true),
     ENABLE_ACCESSIBLE_CUSTOM_HEADERS(Flags::enableAccessibleCustomHeaders, true),
     ENABLE_APP_HEADER_WITH_TASK_DENSITY(Flags::enableAppHeaderWithTaskDensity, true),
@@ -97,6 +99,8 @@
     ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY(Flags::enableDesktopWindowingWallpaperActivity,
             true),
     ENABLE_DRAG_RESIZE_SET_UP_IN_BG_THREAD(Flags::enableDragResizeSetUpInBgThread, false),
+    ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX(
+            Flags::enableDragToDesktopIncomingTransitionsBugfix, false),
     ENABLE_FULLY_IMMERSIVE_IN_DESKTOP(Flags::enableFullyImmersiveInDesktop, true),
     ENABLE_HANDLE_INPUT_FIX(Flags::enableHandleInputFix, true),
     ENABLE_HOLD_TO_DRAG_APP_HANDLE(Flags::enableHoldToDragAppHandle, true),
@@ -111,6 +115,7 @@
     ENABLE_START_LAUNCH_TRANSITION_FROM_TASKBAR_BUGFIX(
             Flags::enableStartLaunchTransitionFromTaskbarBugfix, true),
     ENABLE_TASKBAR_OVERFLOW(Flags::enableTaskbarOverflow, false),
+    ENABLE_TASKBAR_RECENTS_LAYOUT_TRANSITION(Flags::enableTaskbarRecentsLayoutTransition, false),
     ENABLE_TASK_RESIZING_KEYBOARD_SHORTCUTS(Flags::enableTaskResizingKeyboardShortcuts, true),
     ENABLE_TASK_STACK_OBSERVER_IN_SHELL(Flags::enableTaskStackObserverInShell, true),
     ENABLE_THEMED_APP_HEADERS(Flags::enableThemedAppHeaders, true),
diff --git a/core/java/android/window/SplashScreenView.java b/core/java/android/window/SplashScreenView.java
index af3d7eb..ea0d6b8 100644
--- a/core/java/android/window/SplashScreenView.java
+++ b/core/java/android/window/SplashScreenView.java
@@ -733,11 +733,12 @@
                 mIconBitmap = iconView != null
                         ? copyDrawable(((ImageView) view.getIconView()).getDrawable()) : null;
             }
-            mBrandingBitmap = copyDrawable(view.getBrandingView().getBackground());
 
-            ViewGroup.LayoutParams params = view.getBrandingView().getLayoutParams();
+            final ViewGroup.LayoutParams params = view.getBrandingView().getLayoutParams();
             mBrandingWidth = params.width;
             mBrandingHeight = params.height;
+            mBrandingBitmap = copyDrawableWithSize(view.getBrandingView().getBackground(),
+                    mBrandingWidth, mBrandingHeight);
 
             if (view.getIconAnimationStart() != null) {
                 mIconAnimationStartMillis = view.getIconAnimationStart().toEpochMilli();
@@ -752,6 +753,13 @@
                 final Rect initialBounds = drawable.copyBounds();
                 final int width = initialBounds.width();
                 final int height = initialBounds.height();
+                return copyDrawableWithSize(drawable, width, height);
+            }
+            return null;
+        }
+
+        private Bitmap copyDrawableWithSize(Drawable drawable, int width, int height) {
+            if (drawable != null) {
                 if (width <= 0 || height <= 0) {
                     return null;
                 }
diff --git a/core/java/android/window/TransitionInfo.java b/core/java/android/window/TransitionInfo.java
index 32175f1..63c55ad 100644
--- a/core/java/android/window/TransitionInfo.java
+++ b/core/java/android/window/TransitionInfo.java
@@ -1152,7 +1152,6 @@
             mEnterResId = in.readInt();
             mChangeResId = in.readInt();
             mExitResId = in.readInt();
-            mBackgroundColor = in.readInt();
             mOverrideTaskTransition = in.readBoolean();
             mPackageName = in.readString();
             mTransitionBounds.readFromParcel(in);
@@ -1203,23 +1202,6 @@
         }
 
         /**
-         * Make options for a custom animation based on anim resources.
-         *
-         * @param packageName the package name to find the animation resources
-         * @param enterResId the open animation resources ID
-         * @param exitResId the close animation resources ID
-         * @param backgroundColor the background color
-         * @param overrideTaskTransition whether to override the task transition
-         */
-        @NonNull
-        public static AnimationOptions makeCustomAnimOptions(@NonNull String packageName,
-                @AnimRes int enterResId, @AnimRes int exitResId, @ColorInt int backgroundColor,
-                boolean overrideTaskTransition) {
-            return makeCustomAnimOptions(packageName, enterResId, DEFAULT_ANIMATION_RESOURCES_ID,
-                    exitResId, backgroundColor, overrideTaskTransition);
-        }
-
-        /**
          * Creates a {@link android.app.ActivityOptions#ANIM_CUSTOM} {@link AnimationOptions}.
          *
          * @param packageName the package name that includes the animation resources.
@@ -1231,13 +1213,12 @@
         @NonNull
         public static AnimationOptions makeCustomAnimOptions(@NonNull String packageName,
                 @AnimRes int enterResId, @AnimRes int changeResId, @AnimRes int exitResId,
-                @ColorInt int backgroundColor, boolean overrideTaskTransition) {
+                boolean overrideTaskTransition) {
             AnimationOptions options = new AnimationOptions(ANIM_CUSTOM);
             options.mPackageName = packageName;
             options.mEnterResId = enterResId;
             options.mChangeResId = changeResId;
             options.mExitResId = exitResId;
-            options.mBackgroundColor = backgroundColor;
             options.mOverrideTaskTransition = overrideTaskTransition;
             return options;
         }
@@ -1313,10 +1294,6 @@
             return mExitResId;
         }
 
-        public @ColorInt int getBackgroundColor() {
-            return mBackgroundColor;
-        }
-
         public boolean getOverrideTaskTransition() {
             return mOverrideTaskTransition;
         }
@@ -1352,7 +1329,6 @@
             dest.writeInt(mEnterResId);
             dest.writeInt(mChangeResId);
             dest.writeInt(mExitResId);
-            dest.writeInt(mBackgroundColor);
             dest.writeBoolean(mOverrideTaskTransition);
             dest.writeString(mPackageName);
             mTransitionBounds.writeToParcel(dest, flags);
diff --git a/core/java/android/window/flags/lse_desktop_experience.aconfig b/core/java/android/window/flags/lse_desktop_experience.aconfig
index 2e36e9a..355a87d 100644
--- a/core/java/android/window/flags/lse_desktop_experience.aconfig
+++ b/core/java/android/window/flags/lse_desktop_experience.aconfig
@@ -100,6 +100,17 @@
 }
 
 flag {
+    name: "disable_desktop_launch_params_outside_desktop_bug_fix"
+    namespace: "lse_desktop_experience"
+    description: "Prevents DesktopModeLaunchParamsModifier from modifying launch params for non /n"
+                 "desktop launches."
+    bug: "396108436"
+    metadata {
+        purpose: PURPOSE_BUGFIX
+    }
+}
+
+flag {
     name: "enable_desktop_windowing_wallpaper_activity"
     namespace: "lse_desktop_experience"
     description: "Enables desktop wallpaper activity to show wallpaper in the desktop mode"
@@ -811,4 +822,34 @@
     metadata {
         purpose: PURPOSE_BUGFIX
     }
+}
+
+flag {
+    name: "enable_drag_to_desktop_incoming_transitions_bugfix"
+    namespace: "lse_desktop_experience"
+    description: "Enables bugfix handling incoming transitions during the DragToDesktop transition."
+    bug: "397135730"
+    metadata {
+        purpose: PURPOSE_BUGFIX
+    }
+}
+
+flag {
+    name: "enable_taskbar_recents_layout_transition"
+    namespace: "lse_desktop_experience"
+    description: "Enable Taskbar LayoutTransition for Recent Apps"
+    bug: "343521765"
+    metadata {
+        purpose: PURPOSE_BUGFIX
+    }
+}
+
+flag {
+    name: "enable_desktop_opening_deeplink_minimize_animation_bugfix"
+    namespace: "lse_desktop_experience"
+    description: "Enabling a minimize animation when a new window is opened via deeplink and the Desktop Windowing open windows limit is reached."
+    bug: "360329773"
+    metadata {
+        purpose: PURPOSE_BUGFIX
+    }
 }
\ No newline at end of file
diff --git a/core/java/android/window/flags/windowing_frontend.aconfig b/core/java/android/window/flags/windowing_frontend.aconfig
index a4d128f..0e19eb2 100644
--- a/core/java/android/window/flags/windowing_frontend.aconfig
+++ b/core/java/android/window/flags/windowing_frontend.aconfig
@@ -298,17 +298,6 @@
 }
 
 flag {
-  name: "always_capture_activity_snapshot"
-  namespace: "windowing_frontend"
-  description: "Always capture activity snapshot regardless predictive back status"
-  bug: "362183912"
-  is_fixed_read_only: true
-  metadata {
-    purpose: PURPOSE_BUGFIX
-  }
-}
-
-flag {
   name: "ensure_keyguard_does_transition_starting"
   namespace: "windowing_frontend"
   description: "Ensure that keyguard is the one starting transitions, instead of delegating to Core"
@@ -352,17 +341,6 @@
 }
 
 flag {
-  name: "defer_predictive_animation_if_no_snapshot"
-  namespace: "windowing_frontend"
-  description: "If no snapshot for previous window, start animation until the client has draw."
-  bug: "374621014"
-  is_fixed_read_only: true
-  metadata {
-      purpose: PURPOSE_BUGFIX
-    }
-}
-
-flag {
     name: "predictive_back_system_override_callback"
     namespace: "windowing_frontend"
     description: "Provide pre-make predictive back API extension"
@@ -493,4 +471,15 @@
     metadata {
         purpose: PURPOSE_BUGFIX
     }
+}
+
+flag {
+    name: "reduce_task_snapshot_memory_usage"
+    namespace: "windowing_frontend"
+    description: "Reduce task snapshot memory usage in either heap and dmabuf."
+    bug: "238206323"
+    is_fixed_read_only: true
+    metadata {
+        purpose: PURPOSE_BUGFIX
+    }
 }
\ No newline at end of file
diff --git a/core/java/android/window/flags/windowing_sdk.aconfig b/core/java/android/window/flags/windowing_sdk.aconfig
index 6e45d3d..9f768f0 100644
--- a/core/java/android/window/flags/windowing_sdk.aconfig
+++ b/core/java/android/window/flags/windowing_sdk.aconfig
@@ -7,13 +7,6 @@
 
 flag {
     namespace: "windowing_sdk"
-    name: "activity_embedding_overlay_presentation_flag"
-    description: "Whether the overlay presentation feature is enabled"
-    bug: "293370683"
-}
-
-flag {
-    namespace: "windowing_sdk"
     name: "task_fragment_system_organizer_flag"
     description: "Whether the TaskFragment system organizer feature is enabled"
     bug: "284050041"
@@ -124,16 +117,6 @@
 
 flag {
     namespace: "windowing_sdk"
-    name: "normalize_home_intent"
-    description: "To ensure home is started in correct intent"
-    bug: "378505461"
-    metadata {
-        purpose: PURPOSE_BUGFIX
-    }
-}
-
-flag {
-    namespace: "windowing_sdk"
     name: "condense_configuration_change_for_simple_mode"
     description: "Condense configuration change for simple mode"
     bug: "356738240"
diff --git a/core/java/com/android/internal/app/MediaRouteControllerContentManager.java b/core/java/com/android/internal/app/MediaRouteControllerContentManager.java
index 3a8b94f..11093f1 100644
--- a/core/java/com/android/internal/app/MediaRouteControllerContentManager.java
+++ b/core/java/com/android/internal/app/MediaRouteControllerContentManager.java
@@ -206,6 +206,13 @@
         mDelegate.dismissView();
     }
 
+    /**
+     * Request the media route to update volume.
+     */
+    public void requestUpdateRouteVolume(int direction) {
+        mRoute.requestUpdateVolume(direction);
+    }
+
     private boolean isVolumeControlAvailable() {
         return mRoute.getVolumeHandling() == MediaRouter.RouteInfo.PLAYBACK_VOLUME_VARIABLE;
     }
diff --git a/core/java/com/android/internal/app/MediaRouteControllerDialog.java b/core/java/com/android/internal/app/MediaRouteControllerDialog.java
index 5899963..73f9515 100644
--- a/core/java/com/android/internal/app/MediaRouteControllerDialog.java
+++ b/core/java/com/android/internal/app/MediaRouteControllerDialog.java
@@ -42,19 +42,11 @@
  */
 public class MediaRouteControllerDialog extends AlertDialog implements
         MediaRouteControllerContentManager.Delegate {
-    // TODO(b/360050020): Eventually these 2 variables should be in the content manager instead of
-    //  here. So these should be removed when the migration is completed.
-    private final MediaRouter mRouter;
-    private final MediaRouter.RouteInfo mRoute;
-
     private final MediaRouteControllerContentManager mContentManager;
 
     public MediaRouteControllerDialog(Context context, int theme) {
         super(context, theme);
-
         mContentManager = new MediaRouteControllerContentManager(context, this);
-        mRouter = (MediaRouter) context.getSystemService(Context.MEDIA_ROUTER_SERVICE);
-        mRoute = mRouter.getSelectedRoute();
     }
 
     @Override
@@ -91,7 +83,8 @@
     public boolean onKeyDown(int keyCode, KeyEvent event) {
         if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN
                 || keyCode == KeyEvent.KEYCODE_VOLUME_UP) {
-            mRoute.requestUpdateVolume(keyCode == KeyEvent.KEYCODE_VOLUME_DOWN ? -1 : 1);
+            mContentManager.requestUpdateRouteVolume(
+                    keyCode == KeyEvent.KEYCODE_VOLUME_DOWN ? -1 : 1);
             return true;
         }
         return super.onKeyDown(keyCode, event);
diff --git a/core/java/com/android/internal/content/PackageMonitor.java b/core/java/com/android/internal/content/PackageMonitor.java
index ad73294..4663d62 100644
--- a/core/java/com/android/internal/content/PackageMonitor.java
+++ b/core/java/com/android/internal/content/PackageMonitor.java
@@ -36,6 +36,7 @@
 import android.util.Slog;
 
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.annotations.WeaklyReferencedCallback;
 import com.android.internal.os.BackgroundThread;
 
 import java.lang.ref.WeakReference;
@@ -46,6 +47,7 @@
  * Helper class for monitoring the state of packages: adding, removing,
  * updating, and disappearing and reappearing on the SD card.
  */
+@WeaklyReferencedCallback
 public abstract class PackageMonitor extends android.content.BroadcastReceiver {
     static final String TAG = "PackageMonitor";
 
diff --git a/core/java/com/android/internal/infra/OWNERS b/core/java/com/android/internal/infra/OWNERS
index 4550358..e69de29 100644
--- a/core/java/com/android/internal/infra/OWNERS
+++ b/core/java/com/android/internal/infra/OWNERS
@@ -1,6 +0,0 @@
-per-file AndroidFuture.java = eugenesusla@google.com
-per-file RemoteStream.java = eugenesusla@google.com
-per-file PerUser.java = eugenesusla@google.com
-per-file ServiceConnector.java = eugenesusla@google.com
-per-file AndroidFuture.aidl = eugenesusla@google.com
-per-file IAndroidFuture.aidl = eugenesusla@google.com
\ No newline at end of file
diff --git a/core/java/com/android/internal/os/BatteryStatsHistory.java b/core/java/com/android/internal/os/BatteryStatsHistory.java
index 85794d4..81ca231 100644
--- a/core/java/com/android/internal/os/BatteryStatsHistory.java
+++ b/core/java/com/android/internal/os/BatteryStatsHistory.java
@@ -181,6 +181,11 @@
      */
     public interface BatteryHistoryStore {
         /**
+         * Returns the maximum amount of storage that can be occupied by the battery history story.
+         */
+        int getMaxHistorySize();
+
+        /**
          * Returns the table of contents, in the chronological order.
          */
         List<BatteryHistoryFragment> getFragments();
@@ -516,6 +521,22 @@
     }
 
     /**
+     * Returns a high estimate of how many items are currently included in the battery history.
+     */
+    public int getEstimatedItemCount() {
+        int estimatedBytes = mHistoryBuffer.dataSize();
+        if (mStore != null) {
+            estimatedBytes += mStore.getMaxHistorySize() * 10;  // account for the compression ratio
+        }
+        if (mHistoryParcels != null) {
+            for (int i = mHistoryParcels.size() - 1; i >= 0; i--) {
+                estimatedBytes += mHistoryParcels.get(i).dataSize();
+            }
+        }
+        return estimatedBytes / 4;    // Minimum size of a history item is 4 bytes
+    }
+
+    /**
      * Creates a read-only copy of the battery history.  Does not copy the files stored
      * in the system directory, so it is not safe while actively writing history.
      */
@@ -768,7 +789,7 @@
      */
     public boolean readFragmentToParcel(Parcel out, BatteryHistoryFragment fragment) {
         byte[] data = mStore.readFragment(fragment);
-        if (data == null) {
+        if (data == null || data.length == 0) {
             return false;
         }
         out.unmarshall(data, 0, data.length);
@@ -913,6 +934,10 @@
                     continue;
                 }
 
+                if (data.length == 0) {
+                    continue;
+                }
+
                 out.writeBoolean(true);
                 if (useBlobs) {
                     out.writeBlob(data, 0, data.length);
@@ -955,9 +980,11 @@
                 return false;
             }
 
-            parcel.unmarshall(data, 0, data.length);
-            parcel.setDataPosition(0);
-            readHistoryBuffer(parcel);
+            if (data.length > 0) {
+                parcel.unmarshall(data, 0, data.length);
+                parcel.setDataPosition(0);
+                readHistoryBuffer(parcel);
+            }
         } catch (Exception e) {
             Slog.e(TAG, "Error reading battery history", e);
             reset();
diff --git a/core/java/com/android/internal/os/BatteryStatsHistoryIterator.java b/core/java/com/android/internal/os/BatteryStatsHistoryIterator.java
index 0d5d876..38398b4 100644
--- a/core/java/com/android/internal/os/BatteryStatsHistoryIterator.java
+++ b/core/java/com/android/internal/os/BatteryStatsHistoryIterator.java
@@ -47,6 +47,8 @@
     private boolean mClosed;
     private long mBaseMonotonicTime;
     private long mBaseTimeUtc;
+    private int mItemIndex = 0;
+    private int mMaxHistoryItems;
 
     public BatteryStatsHistoryIterator(@NonNull BatteryStatsHistory history, long startTimeMs,
             long endTimeMs) {
@@ -54,6 +56,7 @@
         mStartTimeMs = startTimeMs;
         mEndTimeMs = (endTimeMs != MonotonicClock.UNDEFINED) ? endTimeMs : Long.MAX_VALUE;
         mHistoryItem.clear();
+        mMaxHistoryItems = history.getEstimatedItemCount();
     }
 
     @Override
@@ -80,6 +83,11 @@
 
     private void advance() {
         while (true) {
+            if (mItemIndex > mMaxHistoryItems) {
+                Slog.wtfStack(TAG, "Number of battery history items is too large: " + mItemIndex);
+                break;
+            }
+
             Parcel p = mBatteryStatsHistory.getNextParcel(mStartTimeMs, mEndTimeMs);
             if (p == null) {
                 break;
@@ -109,6 +117,7 @@
                 break;
             }
             if (mHistoryItem.time >= mStartTimeMs) {
+                mItemIndex++;
                 mNextItemReady = true;
                 return;
             }
diff --git a/core/java/com/android/internal/pm/pkg/component/AconfigFlags.java b/core/java/com/android/internal/pm/pkg/component/AconfigFlags.java
index b19967a..0e6eb18 100644
--- a/core/java/com/android/internal/pm/pkg/component/AconfigFlags.java
+++ b/core/java/com/android/internal/pm/pkg/component/AconfigFlags.java
@@ -80,7 +80,11 @@
                     (Process.myUid() == Process.SYSTEM_UID) ? DeviceProtos.parsedFlagsProtoPaths()
                             : Arrays.asList(DeviceProtos.PATHS);
             for (String fileName : defaultFlagProtoFiles) {
-                try (var inputStream = new FileInputStream(fileName)) {
+                final File protoFile = new File(fileName);
+                if (!protoFile.isFile() || !protoFile.canRead()) {
+                    continue;
+                }
+                try (var inputStream = new FileInputStream(protoFile)) {
                     loadAconfigDefaultValues(inputStream.readAllBytes());
                 } catch (IOException e) {
                     Slog.w(LOG_TAG, "Failed to read Aconfig values from " + fileName, e);
@@ -120,6 +124,9 @@
 
         final var settingsFile = new File(Environment.getUserSystemDirectory(0),
                 "settings_config.xml");
+        if (!settingsFile.isFile() || !settingsFile.canRead()) {
+            return;
+        }
         try (var inputStream = new FileInputStream(settingsFile)) {
             TypedXmlPullParser parser = Xml.resolvePullParser(inputStream);
             if (parser.next() != XmlPullParser.END_TAG && "settings".equals(parser.getName())) {
@@ -186,7 +193,7 @@
                 }
             }
         } catch (IOException | XmlPullParserException e) {
-            Slog.e(LOG_TAG, "Failed to read Aconfig values from settings_config.xml", e);
+            Slog.w(LOG_TAG, "Failed to read Aconfig values from settings_config.xml", e);
         }
     }
 
diff --git a/core/java/com/android/internal/pm/pkg/component/ParsedComponentImpl.java b/core/java/com/android/internal/pm/pkg/component/ParsedComponentImpl.java
index 69c0480..7ee22f3 100644
--- a/core/java/com/android/internal/pm/pkg/component/ParsedComponentImpl.java
+++ b/core/java/com/android/internal/pm/pkg/component/ParsedComponentImpl.java
@@ -157,7 +157,7 @@
 
     @Override
     public void writeToParcel(Parcel dest, int flags) {
-        sForInternedString.parcel(this.name, dest, flags);
+        dest.writeString(this.name);
         dest.writeInt(this.getIcon());
         dest.writeInt(this.getLabelRes());
         dest.writeCharSequence(this.getNonLocalizedLabel());
@@ -175,7 +175,7 @@
         // We use the boot classloader for all classes that we load.
         final ClassLoader boot = Object.class.getClassLoader();
         //noinspection ConstantConditions
-        this.name = sForInternedString.unparcel(in);
+        this.name = in.readString();
         this.icon = in.readInt();
         this.labelRes = in.readInt();
         this.nonLocalizedLabel = in.readCharSequence();
diff --git a/core/java/com/android/internal/protolog/WmProtoLogGroups.java b/core/java/com/android/internal/protolog/WmProtoLogGroups.java
index 5edc2fb..b8b70b16 100644
--- a/core/java/com/android/internal/protolog/WmProtoLogGroups.java
+++ b/core/java/com/android/internal/protolog/WmProtoLogGroups.java
@@ -30,6 +30,8 @@
     WM_ERROR(true, true, true, Consts.TAG_WM),
     WM_DEBUG_ORIENTATION(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false,
             Consts.TAG_WM),
+    WM_DEBUG_ORIENTATION_CHANGE(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, true,
+            Consts.TAG_WM),
     WM_DEBUG_FOCUS_LIGHT(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false,
             Consts.TAG_WM),
     WM_DEBUG_BOOT(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false,
diff --git a/core/java/com/android/internal/statusbar/IStatusBar.aidl b/core/java/com/android/internal/statusbar/IStatusBar.aidl
index 7018ebc..5a180d7 100644
--- a/core/java/com/android/internal/statusbar/IStatusBar.aidl
+++ b/core/java/com/android/internal/statusbar/IStatusBar.aidl
@@ -82,7 +82,7 @@
      * Notify system UI the immersive mode changed. This shall be removed when client immersive is
      * enabled.
      */
-    void immersiveModeChanged(int rootDisplayAreaId, boolean isImmersiveMode);
+    void immersiveModeChanged(int rootDisplayAreaId, boolean isImmersiveMode, int windowType);
 
     void dismissKeyboardShortcutsMenu();
     void toggleKeyboardShortcutsMenu(int deviceId);
diff --git a/core/java/com/android/internal/util/LatencyTracker.java b/core/java/com/android/internal/util/LatencyTracker.java
index c120e67d..33794a5 100644
--- a/core/java/com/android/internal/util/LatencyTracker.java
+++ b/core/java/com/android/internal/util/LatencyTracker.java
@@ -23,6 +23,7 @@
 import static com.android.internal.util.FrameworkStatsLog.UIACTION_LATENCY_REPORTED__ACTION__ACTION_CHECK_CREDENTIAL;
 import static com.android.internal.util.FrameworkStatsLog.UIACTION_LATENCY_REPORTED__ACTION__ACTION_CHECK_CREDENTIAL_UNLOCKED;
 import static com.android.internal.util.FrameworkStatsLog.UIACTION_LATENCY_REPORTED__ACTION__ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG;
+import static com.android.internal.util.FrameworkStatsLog.UIACTION_LATENCY_REPORTED__ACTION__ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_MENU;
 import static com.android.internal.util.FrameworkStatsLog.UIACTION_LATENCY_REPORTED__ACTION__ACTION_EXPAND_PANEL;
 import static com.android.internal.util.FrameworkStatsLog.UIACTION_LATENCY_REPORTED__ACTION__ACTION_FACE_WAKE_AND_UNLOCK;
 import static com.android.internal.util.FrameworkStatsLog.UIACTION_LATENCY_REPORTED__ACTION__ACTION_FINGERPRINT_WAKE_AND_UNLOCK;
@@ -268,14 +269,27 @@
     public static final int ACTION_SHADE_WINDOW_DISPLAY_CHANGE = 29;
 
     /**
-     * Applicable when the user drags a full screen app's handle into the desktop drop zone to enter
-     * desktop mode. This measure the time from when the user releases their finger in the drop zone
-     * to when the animation for entering desktop mode visually begins. During this period, the
-     * home task and app headers for each window are initialized. Both have historically been
-     * expensive. See b/381396057 and b/360452034 respectively.
+     * Time it takes for the "enter desktop" mode animation to begin when initiated by dragging the
+     * app's handle into the desktop drop zone.
+     * <p>
+     * This measure the time from when the user releases their finger in the drop zone to when the
+     * animation for entering desktop mode visually begins. During this period, the home task and
+     * app headers for each window are initialized. Both have historically been expensive. See
+     * b/381396057 and b/360452034 respectively.
      */
     public static final int ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG = 30;
 
+    /**
+     * Time it takes for the "enter desktop" mode animation to begin when initiated via the app
+     * handle's menu.
+     * <p>
+     * This measures the time from when the menu option is clicked/tapped to when the animation for
+     * entering desktop mode visually begins. During this period, the home task and app headers for
+     * each window are initialized. Both have historically been expensive. See b/381396057 and
+     * b/360452034 respectively.
+     */
+    public static final int ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_MENU = 31;
+
     private static final int[] ACTIONS_ALL = {
         ACTION_EXPAND_PANEL,
         ACTION_TOGGLE_RECENTS,
@@ -308,6 +322,7 @@
         ACTION_KEYGUARD_FACE_UNLOCK_TO_HOME,
         ACTION_SHADE_WINDOW_DISPLAY_CHANGE,
         ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG,
+        ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_MENU,
     };
 
     /** @hide */
@@ -343,6 +358,7 @@
         ACTION_KEYGUARD_FACE_UNLOCK_TO_HOME,
         ACTION_SHADE_WINDOW_DISPLAY_CHANGE,
         ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG,
+        ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_MENU,
     })
     @Retention(RetentionPolicy.SOURCE)
     public @interface Action {}
@@ -380,6 +396,7 @@
             UIACTION_LATENCY_REPORTED__ACTION__ACTION_KEYGUARD_FACE_UNLOCK_TO_HOME,
             UIACTION_LATENCY_REPORTED__ACTION__ACTION_SHADE_WINDOW_DISPLAY_CHANGE,
             UIACTION_LATENCY_REPORTED__ACTION__ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG,
+            UIACTION_LATENCY_REPORTED__ACTION__ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_MENU,
     };
 
     private final Object mLock = new Object();
@@ -582,6 +599,8 @@
                 return "ACTION_SHADE_WINDOW_DISPLAY_CHANGE";
             case UIACTION_LATENCY_REPORTED__ACTION__ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG:
                 return "ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG";
+            case UIACTION_LATENCY_REPORTED__ACTION__ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_MENU:
+                return "ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_MENU";
             default:
                 throw new IllegalArgumentException("Invalid action");
         }
diff --git a/core/java/com/android/internal/util/OWNERS b/core/java/com/android/internal/util/OWNERS
index 9be8ea7..d174fe3 100644
--- a/core/java/com/android/internal/util/OWNERS
+++ b/core/java/com/android/internal/util/OWNERS
@@ -1,8 +1,8 @@
-per-file AsyncChannel* = lorenzo@google.com, satk@google.com, etancohen@google.com
+per-file AsyncChannel* = lorenzo@google.com, satk@google.com
 per-file MessageUtils*, Protocol*, RingBuffer*, TokenBucket* = jchalard@google.com, lorenzo@google.com, satk@google.com
 per-file *Notification* = file:/services/core/java/com/android/server/notification/OWNERS
 per-file *ContrastColor* = file:/services/core/java/com/android/server/notification/OWNERS
-per-file Protocol* = etancohen@google.com, lorenzo@google.com
+per-file Protocol* =lorenzo@google.com
 per-file State* = jchalard@google.com, lorenzo@google.com, satk@google.com
 per-file *Dump* = file:/core/java/com/android/internal/util/dump/OWNERS
 per-file *Screenshot* = file:/packages/SystemUI/src/com/android/systemui/screenshot/OWNERS
diff --git a/core/java/com/android/internal/util/function/pooled/OWNERS b/core/java/com/android/internal/util/function/pooled/OWNERS
index da723b3..e69de29 100644
--- a/core/java/com/android/internal/util/function/pooled/OWNERS
+++ b/core/java/com/android/internal/util/function/pooled/OWNERS
@@ -1 +0,0 @@
-eugenesusla@google.com
\ No newline at end of file
diff --git a/core/java/com/android/internal/widget/ConversationLayout.java b/core/java/com/android/internal/widget/ConversationLayout.java
index ce46da1..2cca3db 100644
--- a/core/java/com/android/internal/widget/ConversationLayout.java
+++ b/core/java/com/android/internal/widget/ConversationLayout.java
@@ -86,6 +86,7 @@
     public static final Interpolator FAST_OUT_LINEAR_IN = new PathInterpolator(0.4f, 0f, 1f, 1f);
     public static final Interpolator FAST_OUT_SLOW_IN = new PathInterpolator(0.4f, 0f, 0.2f, 1f);
     public static final Interpolator OVERSHOOT = new PathInterpolator(0.4f, 0f, 0.2f, 1.4f);
+    private static final int MAX_SUMMARIZATION_LINES = 3;
     public static final int IMPORTANCE_ANIM_GROW_DURATION = 250;
     public static final int IMPORTANCE_ANIM_SHRINK_DURATION = 200;
     public static final int IMPORTANCE_ANIM_SHRINK_DELAY = 25;
@@ -401,7 +402,7 @@
     public void setIsCollapsed(boolean isCollapsed) {
         mIsCollapsed = isCollapsed;
         mMessagingLinearLayout.setMaxDisplayedLines(isCollapsed
-                ? TextUtils.isEmpty(mSummarizedContent) ? 1 : 2
+                ? TextUtils.isEmpty(mSummarizedContent) ? 1 : MAX_SUMMARIZATION_LINES
                 : Integer.MAX_VALUE);
         updateExpandButton();
         updateContentEndPaddings();
@@ -1188,6 +1189,12 @@
             }
             newGroup.setMessages(group);
         }
+
+        if (Flags.dropNonExistingMessages()) {
+            // remove groups from mAddedGroups when they are no longer in mGroups.
+            mAddedGroups.removeIf(
+                    messagingGroup -> !mGroups.contains(messagingGroup));
+        }
     }
 
     /**
diff --git a/core/java/com/android/internal/widget/MessagingGroup.java b/core/java/com/android/internal/widget/MessagingGroup.java
index b9a603cc..b31a200 100644
--- a/core/java/com/android/internal/widget/MessagingGroup.java
+++ b/core/java/com/android/internal/widget/MessagingGroup.java
@@ -569,6 +569,10 @@
         mIsolatedMessage = isolatedMessage;
         updateImageContainerVisibility();
         mMessages = group;
+        if (android.widget.flags.Flags.dropNonExistingMessages()) {
+            // remove messages from mAddedMessages when they are no longer in mMessages.
+            mAddedMessages.removeIf(message -> !mMessages.contains(message));
+        }
         updateMessageColor();
     }
 
diff --git a/core/java/com/android/internal/widget/MessagingLayout.java b/core/java/com/android/internal/widget/MessagingLayout.java
index eb22e7c..9fe2de8 100644
--- a/core/java/com/android/internal/widget/MessagingLayout.java
+++ b/core/java/com/android/internal/widget/MessagingLayout.java
@@ -44,6 +44,7 @@
 import android.widget.FrameLayout;
 import android.widget.ImageView;
 import android.widget.RemoteViews;
+import android.widget.flags.Flags;
 
 import com.android.internal.R;
 
@@ -62,6 +63,7 @@
     public static final Interpolator LINEAR_OUT_SLOW_IN = new PathInterpolator(0f, 0f, 0.2f, 1f);
     public static final Interpolator FAST_OUT_LINEAR_IN = new PathInterpolator(0.4f, 0f, 1f, 1f);
     public static final Interpolator FAST_OUT_SLOW_IN = new PathInterpolator(0.4f, 0f, 0.2f, 1f);
+    private static final int MAX_SUMMARIZATION_LINES = 3;
     public static final OnLayoutChangeListener MESSAGING_PROPERTY_ANIMATOR
             = new MessagingPropertyAnimator();
     private final PeopleHelper mPeopleHelper = new PeopleHelper();
@@ -222,7 +224,7 @@
         List<MessagingMessage> newMessagingMessages;
         mSummarizedContent = extras.getCharSequence(Notification.EXTRA_SUMMARIZED_CONTENT);
         if (!TextUtils.isEmpty(mSummarizedContent) && mIsCollapsed) {
-            mMessagingLinearLayout.setMaxDisplayedLines(2);
+            mMessagingLinearLayout.setMaxDisplayedLines(MAX_SUMMARIZATION_LINES);
             Notification.MessagingStyle.Message summary =
                     new Notification.MessagingStyle.Message(mSummarizedContent,  0, "");
             newMessagingMessages = createMessages(List.of(summary), false, usePrecomputedText);
@@ -559,6 +561,12 @@
             }
             newGroup.setMessages(group);
         }
+
+        if (Flags.dropNonExistingMessages()) {
+            // remove groups from mAddedGroups when they are no longer in mGroups.
+            mAddedGroups.removeIf(
+                    messagingGroup -> !mGroups.contains(messagingGroup));
+        }
     }
 
     private void findGroups(List<MessagingMessage> historicMessages,
diff --git a/core/java/com/android/internal/widget/NotificationProgressBar.java b/core/java/com/android/internal/widget/NotificationProgressBar.java
index c0fe0d1..3472d68 100644
--- a/core/java/com/android/internal/widget/NotificationProgressBar.java
+++ b/core/java/com/android/internal/widget/NotificationProgressBar.java
@@ -555,6 +555,18 @@
         mNotificationProgressDrawable.setParts(p.first);
         mAdjustedProgressFraction =
                 (p.second - mTrackerDrawWidth / 2F) / (width - mTrackerDrawWidth);
+
+        mNotificationProgressDrawable.updateEndDotColor(getEndDotColor(fallbackSegments));
+    }
+
+    private int getEndDotColor(List<ProgressStyle.Segment> fallbackSegments) {
+        if (!mProgressModel.isStyledByProgress()) return Color.TRANSPARENT;
+        if (mProgressModel.getProgress() == mProgressModel.getProgressMax()) {
+            return Color.TRANSPARENT;
+        }
+
+        return fallbackSegments == null ? mProgressModel.getSegments().getLast().getColor()
+                : fallbackSegments.getLast().getColor();
     }
 
     private void updateTrackerAndBarPos(int w, int h) {
diff --git a/core/java/com/android/internal/widget/NotificationProgressDrawable.java b/core/java/com/android/internal/widget/NotificationProgressDrawable.java
index 30dcc67..b109610 100644
--- a/core/java/com/android/internal/widget/NotificationProgressDrawable.java
+++ b/core/java/com/android/internal/widget/NotificationProgressDrawable.java
@@ -21,6 +21,7 @@
 import android.content.res.Resources.Theme;
 import android.content.res.TypedArray;
 import android.graphics.Canvas;
+import android.graphics.Color;
 import android.graphics.ColorFilter;
 import android.graphics.Paint;
 import android.graphics.PixelFormat;
@@ -74,6 +75,8 @@
         mFillPaint.setStyle(Paint.Style.FILL);
     }
 
+    private @ColorInt int mEndDotColor = Color.TRANSPARENT;
+
     private int mAlpha;
 
     public NotificationProgressDrawable() {
@@ -125,6 +128,16 @@
         setParts(Arrays.asList(parts));
     }
 
+    /**
+     * Update the color of the end dot. If TRANSPARENT, the dot is not drawn.
+     */
+    public void updateEndDotColor(@ColorInt int endDotColor) {
+        if (mEndDotColor != endDotColor) {
+            mEndDotColor = endDotColor;
+            invalidateSelf();
+        }
+    }
+
     @Override
     public void draw(@NonNull Canvas canvas) {
         final float pointRadius = mState.mPointRadius;
@@ -164,6 +177,18 @@
                 canvas.drawRoundRect(mPointRectF, cornerRadius, cornerRadius, mFillPaint);
             }
         }
+
+        if (mEndDotColor != Color.TRANSPARENT) {
+            final float right = (float) getBounds().right;
+            final float dotRadius = mState.mFadedSegmentHeight / 2F;
+            mFillPaint.setColor(mEndDotColor);
+            // Use drawRoundRect instead of drawCircle to ensure alignment with the segment below.
+            mSegRectF.set(
+                    Math.round(right - mState.mFadedSegmentHeight), Math.round(centerY - dotRadius),
+                            Math.round(right), Math.round(centerY + dotRadius));
+            canvas.drawRoundRect(mSegRectF, mState.mSegmentCornerRadius,
+                    mState.mSegmentCornerRadius, mFillPaint);
+        }
     }
 
     @Override
diff --git a/core/java/com/android/internal/widget/NotificationRowIconView.java b/core/java/com/android/internal/widget/NotificationRowIconView.java
index c96e979..1b29b7f 100644
--- a/core/java/com/android/internal/widget/NotificationRowIconView.java
+++ b/core/java/com/android/internal/widget/NotificationRowIconView.java
@@ -225,6 +225,6 @@
         boolean shouldShowAppIcon();
 
         /** Get the app icon for this notification. */
-        Drawable getAppIcon();
+        @Nullable Drawable getAppIcon();
     }
 }
diff --git a/core/jni/Android.bp b/core/jni/Android.bp
index 92a841f..748c5b4 100644
--- a/core/jni/Android.bp
+++ b/core/jni/Android.bp
@@ -21,7 +21,6 @@
     config_namespace: "ANDROID",
     bool_variables: [
         "release_binder_death_recipient_weak_from_jni",
-        "release_package_libandroid_runtime_punch_holes",
     ],
     properties: [
         "cflags",
@@ -66,9 +65,6 @@
         release_binder_death_recipient_weak_from_jni: {
             cflags: ["-DBINDER_DEATH_RECIPIENT_WEAK_FROM_JNI"],
         },
-        release_package_libandroid_runtime_punch_holes: {
-            cflags: ["-DENABLE_PUNCH_HOLES"],
-        },
     },
 
     cpp_std: "gnu++20",
diff --git a/core/jni/com_android_internal_content_NativeLibraryHelper.cpp b/core/jni/com_android_internal_content_NativeLibraryHelper.cpp
index 06fd80e..14132e6 100644
--- a/core/jni/com_android_internal_content_NativeLibraryHelper.cpp
+++ b/core/jni/com_android_internal_content_NativeLibraryHelper.cpp
@@ -236,7 +236,6 @@
         return INSTALL_FAILED_CONTAINER_ERROR;
     }
 
-#ifdef ENABLE_PUNCH_HOLES
     // punch extracted elf files as well. This will fail where compression is on (like f2fs) but it
     // will be useful for ext4 based systems
     struct statfs64 fsInfo;
@@ -253,7 +252,6 @@
                   zipFile->getZipFileName());
         }
     }
-#endif // ENABLE_PUNCH_HOLES
 
     ALOGV("Successfully moved %s to %s\n", localTmpFileName, localFileName);
 
@@ -332,7 +330,6 @@
             return INSTALL_FAILED_INVALID_APK;
         }
 
-#ifdef ENABLE_PUNCH_HOLES
         // if library is uncompressed, punch hole in it in place
         if (!punchHolesInElf64(zipFile->getZipFileName(), offset)) {
             ALOGW("Failed to punch uncompressed elf file :%s inside apk : %s at offset: "
@@ -345,7 +342,6 @@
         if (!punchHolesInZip(zipFile->getZipFileName(), offset, extraFieldLength)) {
             ALOGW("Failed to punch apk : %s at extra field", zipFile->getZipFileName());
         }
-#endif // ENABLE_PUNCH_HOLES
 
         return INSTALL_SUCCEEDED;
     }
diff --git a/core/proto/OWNERS b/core/proto/OWNERS
index aa8f841..c804024 100644
--- a/core/proto/OWNERS
+++ b/core/proto/OWNERS
@@ -5,7 +5,6 @@
 singhtejinder@google.com
 yanmin@google.com
 yaochen@google.com
-zhouwenjie@google.com
 
 # Frameworks
 ogunwale@google.com
diff --git a/core/proto/android/providers/settings/secure.proto b/core/proto/android/providers/settings/secure.proto
index 69c812c..34ec148 100644
--- a/core/proto/android/providers/settings/secure.proto
+++ b/core/proto/android/providers/settings/secure.proto
@@ -110,6 +110,7 @@
         // Settings for accessibility autoclick
         optional SettingProto autoclick_cursor_area_size = 62 [ (android.privacy).dest = DEST_AUTOMATIC ];
         optional SettingProto autoclick_ignore_minor_cursor_movement = 63 [ (android.privacy).dest = DEST_AUTOMATIC ];
+        optional SettingProto autoclick_panel_position = 64 [ (android.privacy).dest = DEST_AUTOMATIC ];
 
     }
     optional Accessibility accessibility = 2;
diff --git a/core/res/OWNERS b/core/res/OWNERS
index faed4d8..a208f7f 100644
--- a/core/res/OWNERS
+++ b/core/res/OWNERS
@@ -9,7 +9,6 @@
 ilyamaty@google.com
 jbolinger@google.com
 jsharkey@android.com
-jsharkey@google.com
 juliacr@google.com
 kchyn@google.com
 michaelwr@google.com
diff --git a/core/res/res/layout/miniresolver.xml b/core/res/res/layout/miniresolver.xml
index db1c779..fc0b494 100644
--- a/core/res/res/layout/miniresolver.xml
+++ b/core/res/res/layout/miniresolver.xml
@@ -103,7 +103,7 @@
         android:paddingBottom="@dimen/resolver_button_bar_spacing"
         android:orientation="vertical"
         android:background="?attr/colorBackground">
-        <RelativeLayout
+        <LinearLayout
             style="?attr/buttonBarStyle"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
@@ -121,8 +121,7 @@
                 android:id="@+id/use_same_profile_browser"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:layout_alignParentStart="true"
-                android:layout_toStartOf="@id/button_open"
+                android:layout_weight="1"
                 android:layout_marginEnd="8dp"
                 android:background="@drawable/resolver_outlined_button_bg"
                 style="?android:attr/borderlessButtonStyle"
@@ -136,7 +135,7 @@
                 android:id="@+id/button_open"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:layout_alignParentEnd="true"
+                android:layout_weight="1"
                 android:paddingHorizontal="16dp"
                 android:background="@drawable/resolver_button_bg"
                 style="?android:attr/borderlessButtonStyle"
@@ -145,6 +144,6 @@
                 android:textColor="@color/resolver_button_text"
                 android:text="@string/whichViewApplicationLabel"
             />
-        </RelativeLayout>
+        </LinearLayout>
     </LinearLayout>
 </com.android.internal.widget.ResolverDrawerLayout>
diff --git a/core/res/res/values-af/strings.xml b/core/res/res/values-af/strings.xml
index 3203195..b6b5d8b 100644
--- a/core/res/res/values-af/strings.xml
+++ b/core/res/res/values-af/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Eenhandmodus"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Ekstra donker"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Gehoortoestelle"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Ontkoppel"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Gekoppel"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktief"</string>
diff --git a/core/res/res/values-am/strings.xml b/core/res/res/values-am/strings.xml
index f4dabdb..29b153b 100644
--- a/core/res/res/values-am/strings.xml
+++ b/core/res/res/values-am/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"የአንድ እጅ ሁነታ"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"ተጨማሪ ደብዛዛ"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"የመስሚያ መሣሪያዎች"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"ግንኙነት ተቋርጧል"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"ተገናኝቷል"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"ገቢር"</string>
diff --git a/core/res/res/values-ar/strings.xml b/core/res/res/values-ar/strings.xml
index 24d628a..08d0af5 100644
--- a/core/res/res/values-ar/strings.xml
+++ b/core/res/res/values-ar/strings.xml
@@ -357,14 +357,10 @@
     <string name="permgroupdesc_sensors" msgid="2610631290633747752">"الوصول إلى بيانات المستشعر حول علاماتك الحيوية"</string>
     <string name="permgrouplab_notifications" msgid="5472972361980668884">"الإشعارات"</string>
     <string name="permgroupdesc_notifications" msgid="4608679556801506580">"عرض الإشعارات"</string>
-    <!-- no translation found for permgrouplab_xr_tracking (7418994009794287471) -->
-    <skip />
-    <!-- no translation found for permgroupdesc_xr_tracking (6777198859446500821) -->
-    <skip />
-    <!-- no translation found for permgrouplab_xr_tracking_sensitive (1194833982988144536) -->
-    <skip />
-    <!-- no translation found for permgroupdesc_xr_tracking_sensitive (9178027369004805829) -->
-    <skip />
+    <string name="permgrouplab_xr_tracking" msgid="7418994009794287471">"بيانات تتبُّع الواقع الممتد"</string>
+    <string name="permgroupdesc_xr_tracking" msgid="6777198859446500821">"إذن الوصول إلى بيانات الواقع الممتد المتعلّقة بك وبالبيئة المحيطة بك"</string>
+    <string name="permgrouplab_xr_tracking_sensitive" msgid="1194833982988144536">"بيانات تتبُّع الواقع المُمتد الحسّاسة"</string>
+    <string name="permgroupdesc_xr_tracking_sensitive" msgid="9178027369004805829">"إذن الوصول إلى بيانات تتبُّع حسّاسة، مثل حركات التحديق بالعين"</string>
     <string name="capability_title_canRetrieveWindowContent" msgid="7554282892101587296">"استرداد محتوى النافذة:"</string>
     <string name="capability_desc_canRetrieveWindowContent" msgid="6195610527625237661">"فحص محتوى نافذة يتم التفاعل معها."</string>
     <string name="capability_title_canRequestTouchExploration" msgid="327598364696316213">"تفعيل الاستكشاف باللمس:"</string>
@@ -660,38 +656,22 @@
     <string name="permdesc_imagesWrite" msgid="5195054463269193317">"للسماح للتطبيق بتعديل مجموعة صورك."</string>
     <string name="permlab_mediaLocation" msgid="7368098373378598066">"قراءة المواقع من مجموعة الوسائط التابعة لك"</string>
     <string name="permdesc_mediaLocation" msgid="597912899423578138">"للسماح للتطبيق بقراءة المواقع من مجموعة الوسائط التابعة لك."</string>
-    <!-- no translation found for permlab_eye_tracking_coarse (7989596289790269059) -->
-    <skip />
-    <!-- no translation found for permdesc_eye_tracking_coarse (870510233930553355) -->
-    <skip />
-    <!-- no translation found for permlab_eye_tracking_fine (6914457357027049512) -->
-    <skip />
-    <!-- no translation found for permdesc_eye_tracking_fine (5788889152304524730) -->
-    <skip />
-    <!-- no translation found for permlab_face_tracking (2272048395128283324) -->
-    <skip />
-    <!-- no translation found for permdesc_face_tracking (2622783922311211866) -->
-    <skip />
-    <!-- no translation found for permlab_hand_tracking (6478233866595566940) -->
-    <skip />
-    <!-- no translation found for permdesc_hand_tracking (8639715900104966456) -->
-    <skip />
-    <!-- no translation found for permlab_head_tracking (1309731456372087270) -->
-    <skip />
-    <!-- no translation found for permdesc_head_tracking (231597390513699188) -->
-    <skip />
-    <!-- no translation found for permlab_scene_understanding_coarse (6518646430502858641) -->
-    <skip />
-    <!-- no translation found for permdesc_scene_understanding_coarse (4508880777646198656) -->
-    <skip />
-    <!-- no translation found for permlab_scene_understanding_fine (409126403264393251) -->
-    <skip />
-    <!-- no translation found for permdesc_scene_understanding_fine (6223368011593524179) -->
-    <skip />
-    <!-- no translation found for permlab_xr_tracking_in_background (7117098718465619023) -->
-    <skip />
-    <!-- no translation found for permdesc_xr_tracking_in_background (939504041387836853) -->
-    <skip />
+    <string name="permlab_eye_tracking_coarse" msgid="7989596289790269059">"تتبُّع الحركات التقريبية للتحديق بالعين"</string>
+    <string name="permdesc_eye_tracking_coarse" msgid="870510233930553355">"يسمح هذا الإذن للتطبيق بتتبُّع الحركات التقريبية لعينيك."</string>
+    <string name="permlab_eye_tracking_fine" msgid="6914457357027049512">"تتبُّع اتجاه نظرك"</string>
+    <string name="permdesc_eye_tracking_fine" msgid="5788889152304524730">"يسمح هذا الإذن للتطبيق بالوصول إلى بيانات دقيقة عن حركات التحديق بالعين."</string>
+    <string name="permlab_face_tracking" msgid="2272048395128283324">"تتبُّع حركات وجهك"</string>
+    <string name="permdesc_face_tracking" msgid="2622783922311211866">"يسمح هذا الإذن للتطبيق بالوصول إلى بيانات تتبُّع حركات الوجه."</string>
+    <string name="permlab_hand_tracking" msgid="6478233866595566940">"تتبُّع يديك"</string>
+    <string name="permdesc_hand_tracking" msgid="8639715900104966456">"يسمح هذا الإذن للتطبيق بالوصول إلى بيانات تتبُّع اليد."</string>
+    <string name="permlab_head_tracking" msgid="1309731456372087270">"تتبُّع حركات رأسك"</string>
+    <string name="permdesc_head_tracking" msgid="231597390513699188">"يسمح هذا الإذن للتطبيق بالوصول إلى بيانات تتبُّع حركة الرأس."</string>
+    <string name="permlab_scene_understanding_coarse" msgid="6518646430502858641">"فهم البيئة المحيطة بك"</string>
+    <string name="permdesc_scene_understanding_coarse" msgid="4508880777646198656">"يسمح هذا الإذن للتطبيق بالوصول إلى بيانات التتبُّع المتعلّقة بالبيئة المحيطة بك مباشرةً."</string>
+    <string name="permlab_scene_understanding_fine" msgid="409126403264393251">"فهم البيئة المحيطة بك بتفاصيل عالية الدقّة"</string>
+    <string name="permdesc_scene_understanding_fine" msgid="6223368011593524179">"يسمح هذا الإذن للتطبيق بالوصول إلى بيانات التتبُّع المتعلّقة بالبيئة المحيطة بك مباشرةً بتفاصيل عالية الدقّة."</string>
+    <string name="permlab_xr_tracking_in_background" msgid="7117098718465619023">"وصول التطبيق إلى بيانات الواقع الممتد عندما لا يكون مستخدَمًا"</string>
+    <string name="permdesc_xr_tracking_in_background" msgid="939504041387836853">"يسمح هذا الإذن للتطبيق بالوصول إلى بيانات الواقع الممتد عندما لا يكون مستخدَمًا."</string>
     <string name="biometric_app_setting_name" msgid="3339209978734534457">"استخدام المقاييس الحيوية"</string>
     <string name="biometric_or_screen_lock_app_setting_name" msgid="5348462421758257752">"استخدام المقاييس الحيوية أو قفل الشاشة"</string>
     <string name="biometric_dialog_default_title" msgid="55026799173208210">"تأكيد هويتك"</string>
@@ -1827,6 +1807,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"وضع \"التصفح بيد واحدة\""</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"زيادة تعتيم الشاشة"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"سماعات الأذن الطبية"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"غير متّصل"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"متّصل"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"متّصل حاليًا"</string>
diff --git a/core/res/res/values-as/strings.xml b/core/res/res/values-as/strings.xml
index 2b9a20a..9eab313 100644
--- a/core/res/res/values-as/strings.xml
+++ b/core/res/res/values-as/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"এখন হাতেৰে ব্যৱহাৰ কৰাৰ ম’ড"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"অতিৰিক্তভাৱে পোহৰ কমোৱাৰ সুবিধা"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"শুনাৰ ডিভাইচ"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"সংযোগ বিচ্ছিন্ন হ’ল"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"সংযোগ কৰা হ’ল"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"সক্ৰিয় হৈ আছে"</string>
diff --git a/core/res/res/values-az/strings.xml b/core/res/res/values-az/strings.xml
index e5bfb29..3aec62a 100644
--- a/core/res/res/values-az/strings.xml
+++ b/core/res/res/values-az/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Birəlli rejim"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Əlavə tündləşmə"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Eşitmə cihazları"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Bağlantı kəsildi"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Qoşuldu"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktivdir"</string>
diff --git a/core/res/res/values-b+sr+Latn/strings.xml b/core/res/res/values-b+sr+Latn/strings.xml
index 3e67233..47203a9 100644
--- a/core/res/res/values-b+sr+Latn/strings.xml
+++ b/core/res/res/values-b+sr+Latn/strings.xml
@@ -1804,6 +1804,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Režim jednom rukom"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Dodatno zatamni"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Slušni aparati"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Veza je prekinuta"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Povezano"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktivno"</string>
diff --git a/core/res/res/values-be/strings.xml b/core/res/res/values-be/strings.xml
index d01af94..8230f0c 100644
--- a/core/res/res/values-be/strings.xml
+++ b/core/res/res/values-be/strings.xml
@@ -1805,6 +1805,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Рэжым кіравання адной рукой"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Дадатковае памяншэнне яркасці"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Слыхавыя апараты"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Адключана"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Падключана"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Актыўная"</string>
diff --git a/core/res/res/values-bg/strings.xml b/core/res/res/values-bg/strings.xml
index 0083dde..d9471e6 100644
--- a/core/res/res/values-bg/strings.xml
+++ b/core/res/res/values-bg/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Работа с една ръка"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Допълнително затъмняване"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Слухови апарати"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Няма връзка"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Свързано"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Активно"</string>
diff --git a/core/res/res/values-bn/strings.xml b/core/res/res/values-bn/strings.xml
index 298be51..cc05d28 100644
--- a/core/res/res/values-bn/strings.xml
+++ b/core/res/res/values-bn/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"এক হাতে ব্যবহার করার মোড"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"অতিরিক্ত কম উজ্জ্বলতা"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"হিয়ারিং ডিভাইস"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"ডিসকানেক্ট হয়ে গেছে"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"কানেক্ট করা হয়েছে"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"অ্যাক্টিভ"</string>
diff --git a/core/res/res/values-bs/strings.xml b/core/res/res/values-bs/strings.xml
index 6a54f65..9c553ce 100644
--- a/core/res/res/values-bs/strings.xml
+++ b/core/res/res/values-bs/strings.xml
@@ -1804,6 +1804,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Način rada jednom rukom"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Dodatno zatamnjenje"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Slušni aparati"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Nije povezano"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Povezano"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktivno"</string>
diff --git a/core/res/res/values-ca/strings.xml b/core/res/res/values-ca/strings.xml
index 63fbb07..3fa177e 100644
--- a/core/res/res/values-ca/strings.xml
+++ b/core/res/res/values-ca/strings.xml
@@ -1804,6 +1804,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Mode d\'una mà"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Atenuació extra"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Audiòfons"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Desconnectat"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Connectat"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Actiu"</string>
diff --git a/core/res/res/values-cs/strings.xml b/core/res/res/values-cs/strings.xml
index 5d0edf3..670ca33 100644
--- a/core/res/res/values-cs/strings.xml
+++ b/core/res/res/values-cs/strings.xml
@@ -1805,6 +1805,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Režim jedné ruky"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Velmi tmavé zobrazení"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Naslouchátka"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Odpojeno"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Připojeno"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktivní"</string>
diff --git a/core/res/res/values-da/strings.xml b/core/res/res/values-da/strings.xml
index a853076..47eb357 100644
--- a/core/res/res/values-da/strings.xml
+++ b/core/res/res/values-da/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Enhåndstilstand"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Ekstra dæmpet belysning"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Høreapparater"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Ikke forbundet"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Forbundet"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktiv"</string>
diff --git a/core/res/res/values-de/strings.xml b/core/res/res/values-de/strings.xml
index 81a331d..06a35e6 100644
--- a/core/res/res/values-de/strings.xml
+++ b/core/res/res/values-de/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Einhandmodus"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Extradunkel"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Hörgeräte"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Nicht verbunden"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Verbunden"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktiv"</string>
diff --git a/core/res/res/values-el/strings.xml b/core/res/res/values-el/strings.xml
index f4fb932..8a12e0e 100644
--- a/core/res/res/values-el/strings.xml
+++ b/core/res/res/values-el/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Λειτουργία ενός χεριού"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Επιπλέον μείωση φωτεινότητας"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Συσκευές ακοής"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Αποσυνδέθηκε"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Συνδέθηκε"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Ενεργή"</string>
diff --git a/core/res/res/values-en-rAU/strings.xml b/core/res/res/values-en-rAU/strings.xml
index 3b4f52c..3881f1d 100644
--- a/core/res/res/values-en-rAU/strings.xml
+++ b/core/res/res/values-en-rAU/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"One-handed mode"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Extra dim"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Hearing devices"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Disconnected"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Connected"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Active"</string>
diff --git a/core/res/res/values-en-rCA/strings.xml b/core/res/res/values-en-rCA/strings.xml
index 79020c58..e6c4047 100644
--- a/core/res/res/values-en-rCA/strings.xml
+++ b/core/res/res/values-en-rCA/strings.xml
@@ -1803,6 +1803,7 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"One-Handed mode"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Extra dim"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Hearing devices"</string>
+    <string name="autoclick_feature_name" msgid="8149248738736949630">"Autoclick"</string>
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Disconnected"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Connected"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Active"</string>
diff --git a/core/res/res/values-en-rGB/strings.xml b/core/res/res/values-en-rGB/strings.xml
index 2c5cf4d..9680b83 100644
--- a/core/res/res/values-en-rGB/strings.xml
+++ b/core/res/res/values-en-rGB/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"One-handed mode"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Extra dim"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Hearing devices"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Disconnected"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Connected"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Active"</string>
diff --git a/core/res/res/values-en-rIN/strings.xml b/core/res/res/values-en-rIN/strings.xml
index 65ebd0d..fbe1c0a 100644
--- a/core/res/res/values-en-rIN/strings.xml
+++ b/core/res/res/values-en-rIN/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"One-handed mode"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Extra dim"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Hearing devices"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Disconnected"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Connected"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Active"</string>
diff --git a/core/res/res/values-es-rUS/strings.xml b/core/res/res/values-es-rUS/strings.xml
index c9bb39c..54297a5 100644
--- a/core/res/res/values-es-rUS/strings.xml
+++ b/core/res/res/values-es-rUS/strings.xml
@@ -1804,6 +1804,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Modo de una mano"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Atenuación extra"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Dispositivos auditivos"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Desconectado"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Conectado"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Activo"</string>
diff --git a/core/res/res/values-es/strings.xml b/core/res/res/values-es/strings.xml
index 63fc276..5bd2bf5 100644
--- a/core/res/res/values-es/strings.xml
+++ b/core/res/res/values-es/strings.xml
@@ -1804,6 +1804,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Modo Una mano"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Atenuación extra"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Audífonos"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Desconectado"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Conectado"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Activo"</string>
diff --git a/core/res/res/values-et/strings.xml b/core/res/res/values-et/strings.xml
index c9b29c3a..0c928a6 100644
--- a/core/res/res/values-et/strings.xml
+++ b/core/res/res/values-et/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Ühekäerežiim"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Eriti tume"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Kuuldeseadmed"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Ühendus katkestatud"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Ühendatud"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktiivne"</string>
diff --git a/core/res/res/values-eu/strings.xml b/core/res/res/values-eu/strings.xml
index 88bb3c9..13f0452 100644
--- a/core/res/res/values-eu/strings.xml
+++ b/core/res/res/values-eu/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Esku bakarreko modua"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Are ilunago"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Entzumen-gailuak"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Deskonektatuta"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Konektatuta"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktibo"</string>
diff --git a/core/res/res/values-fa/strings.xml b/core/res/res/values-fa/strings.xml
index 0c3b755..2eaf4c0 100644
--- a/core/res/res/values-fa/strings.xml
+++ b/core/res/res/values-fa/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"حالت یک‌دستی"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"بسیار کم‌نور"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"دستگاه‌های کمک‌شنوایی"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"متصل نیست"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"وصل شد"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"فعال"</string>
diff --git a/core/res/res/values-fi/strings.xml b/core/res/res/values-fi/strings.xml
index b12fd5c..280658c 100644
--- a/core/res/res/values-fi/strings.xml
+++ b/core/res/res/values-fi/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Yhden käden moodi"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Erittäin himmeä"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Kuulolaitteet"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Yhteys katkaistu"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Yhdistetty"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktiivinen"</string>
diff --git a/core/res/res/values-fr-rCA/strings.xml b/core/res/res/values-fr-rCA/strings.xml
index b9c8b64..1740ce5 100644
--- a/core/res/res/values-fr-rCA/strings.xml
+++ b/core/res/res/values-fr-rCA/strings.xml
@@ -1804,6 +1804,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Mode Une main"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Très sombre"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Appareils auditifs"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Déconnecté"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Connecté"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Actif"</string>
diff --git a/core/res/res/values-fr/strings.xml b/core/res/res/values-fr/strings.xml
index 9952d04..0564661 100644
--- a/core/res/res/values-fr/strings.xml
+++ b/core/res/res/values-fr/strings.xml
@@ -1804,6 +1804,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Mode une main"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Luminosité ultra-réduite"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Appareils auditifs"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Déconnecté"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Connecté"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Actif"</string>
diff --git a/core/res/res/values-gl/strings.xml b/core/res/res/values-gl/strings.xml
index a2d29c9..73bed7f 100644
--- a/core/res/res/values-gl/strings.xml
+++ b/core/res/res/values-gl/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Modo dunha soa man"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Atenuación extra"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Dispositivos auditivos"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Desconectado"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Conectado"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Activo"</string>
diff --git a/core/res/res/values-gu/strings.xml b/core/res/res/values-gu/strings.xml
index bb07484..0c99096 100644
--- a/core/res/res/values-gu/strings.xml
+++ b/core/res/res/values-gu/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"એક-હાથે વાપરો મોડ"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"એક્સ્ટ્રા ડિમ"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"સાંભળવામાં સહાય કરતા ડિવાઇસ"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"ડિસ્કનેક્ટેડ છે"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"કનેક્ટેડ છે"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"સક્રિય"</string>
diff --git a/core/res/res/values-hi/strings.xml b/core/res/res/values-hi/strings.xml
index 538e86c..df211dc 100644
--- a/core/res/res/values-hi/strings.xml
+++ b/core/res/res/values-hi/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"वन-हैंडेड मोड"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"स्क्रीन की रोशनी को सामान्य लेवल से और कम करने की सुविधा"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"कान की मशीन"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"डिसकनेक्ट हो गया"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"कनेक्ट हो गया"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"चालू है"</string>
diff --git a/core/res/res/values-hr/strings.xml b/core/res/res/values-hr/strings.xml
index cde062a..f701483 100644
--- a/core/res/res/values-hr/strings.xml
+++ b/core/res/res/values-hr/strings.xml
@@ -1804,6 +1804,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Način rada jednom rukom"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Još tamnije"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Slušna pomagala"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Nije povezano"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Povezano"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktivno"</string>
diff --git a/core/res/res/values-hu/strings.xml b/core/res/res/values-hu/strings.xml
index 1acf7bc..e3d261e 100644
--- a/core/res/res/values-hu/strings.xml
+++ b/core/res/res/values-hu/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Egykezes mód"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Extrasötét"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Hallásjavító eszközök"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Leválasztva"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Csatlakozva"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktív"</string>
diff --git a/core/res/res/values-hy/strings.xml b/core/res/res/values-hy/strings.xml
index 041042f..de62af5 100644
--- a/core/res/res/values-hy/strings.xml
+++ b/core/res/res/values-hy/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Մեկ ձեռքի ռեժիմ"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Հավելյալ խամրեցում"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Լսողական սարքեր"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Անջատված է"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Միացված է"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Ակտիվ է"</string>
diff --git a/core/res/res/values-in/strings.xml b/core/res/res/values-in/strings.xml
index b02d5ee..18ae5e9 100644
--- a/core/res/res/values-in/strings.xml
+++ b/core/res/res/values-in/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Mode satu tangan"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Ekstra redup"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Alat bantu dengar"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Tidak terhubung"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Terhubung"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktif"</string>
diff --git a/core/res/res/values-is/strings.xml b/core/res/res/values-is/strings.xml
index d66721a..a74ff1c 100644
--- a/core/res/res/values-is/strings.xml
+++ b/core/res/res/values-is/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Einhent stilling"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Mjög dökkt"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Heyrnartæki"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Aftengt"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Tengt"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Virkt"</string>
diff --git a/core/res/res/values-it/strings.xml b/core/res/res/values-it/strings.xml
index 7506002..befd2b2 100644
--- a/core/res/res/values-it/strings.xml
+++ b/core/res/res/values-it/strings.xml
@@ -1804,6 +1804,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Modalità a una mano"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Attenuazione extra"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Protesi uditive"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Disconnesso"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Connesso"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Attivo"</string>
diff --git a/core/res/res/values-iw/strings.xml b/core/res/res/values-iw/strings.xml
index d58084d..0b6c80a 100644
--- a/core/res/res/values-iw/strings.xml
+++ b/core/res/res/values-iw/strings.xml
@@ -354,14 +354,10 @@
     <string name="permgroupdesc_sensors" msgid="2610631290633747752">"גישה אל נתוני חיישנים של הסימנים החיוניים שלך"</string>
     <string name="permgrouplab_notifications" msgid="5472972361980668884">"התראות"</string>
     <string name="permgroupdesc_notifications" msgid="4608679556801506580">"הצגת התראות"</string>
-    <!-- no translation found for permgrouplab_xr_tracking (7418994009794287471) -->
-    <skip />
-    <!-- no translation found for permgroupdesc_xr_tracking (6777198859446500821) -->
-    <skip />
-    <!-- no translation found for permgrouplab_xr_tracking_sensitive (1194833982988144536) -->
-    <skip />
-    <!-- no translation found for permgroupdesc_xr_tracking_sensitive (9178027369004805829) -->
-    <skip />
+    <string name="permgrouplab_xr_tracking" msgid="7418994009794287471">"‏נתונים של מעקב XR"</string>
+    <string name="permgroupdesc_xr_tracking" msgid="6777198859446500821">"‏גישה לנתוני XR לגביך ולגבי הסביבה הקרובה"</string>
+    <string name="permgrouplab_xr_tracking_sensitive" msgid="1194833982988144536">"‏נתונים רגישים של מעקב XR"</string>
+    <string name="permgroupdesc_xr_tracking_sensitive" msgid="9178027369004805829">"גישה לנתוני מעקב רגישים, כמו תנועות העיניים"</string>
     <string name="capability_title_canRetrieveWindowContent" msgid="7554282892101587296">"אחזור תוכן של חלון"</string>
     <string name="capability_desc_canRetrieveWindowContent" msgid="6195610527625237661">"בדיקת התוכן של חלון שאיתו מתבצעת אינטראקציה."</string>
     <string name="capability_title_canRequestTouchExploration" msgid="327598364696316213">"הפעלה של \'גילוי באמצעות מגע\'"</string>
@@ -657,38 +653,22 @@
     <string name="permdesc_imagesWrite" msgid="5195054463269193317">"מאפשרת לאפליקציה לשנות את אוסף התמונות שלך."</string>
     <string name="permlab_mediaLocation" msgid="7368098373378598066">"לקרוא מיקומים מאוסף המדיה שלך"</string>
     <string name="permdesc_mediaLocation" msgid="597912899423578138">"מאפשרת לאפליקציה לקרוא מיקומים מאוסף המדיה שלך."</string>
-    <!-- no translation found for permlab_eye_tracking_coarse (7989596289790269059) -->
-    <skip />
-    <!-- no translation found for permdesc_eye_tracking_coarse (870510233930553355) -->
-    <skip />
-    <!-- no translation found for permlab_eye_tracking_fine (6914457357027049512) -->
-    <skip />
-    <!-- no translation found for permdesc_eye_tracking_fine (5788889152304524730) -->
-    <skip />
-    <!-- no translation found for permlab_face_tracking (2272048395128283324) -->
-    <skip />
-    <!-- no translation found for permdesc_face_tracking (2622783922311211866) -->
-    <skip />
-    <!-- no translation found for permlab_hand_tracking (6478233866595566940) -->
-    <skip />
-    <!-- no translation found for permdesc_hand_tracking (8639715900104966456) -->
-    <skip />
-    <!-- no translation found for permlab_head_tracking (1309731456372087270) -->
-    <skip />
-    <!-- no translation found for permdesc_head_tracking (231597390513699188) -->
-    <skip />
-    <!-- no translation found for permlab_scene_understanding_coarse (6518646430502858641) -->
-    <skip />
-    <!-- no translation found for permdesc_scene_understanding_coarse (4508880777646198656) -->
-    <skip />
-    <!-- no translation found for permlab_scene_understanding_fine (409126403264393251) -->
-    <skip />
-    <!-- no translation found for permdesc_scene_understanding_fine (6223368011593524179) -->
-    <skip />
-    <!-- no translation found for permlab_xr_tracking_in_background (7117098718465619023) -->
-    <skip />
-    <!-- no translation found for permdesc_xr_tracking_in_background (939504041387836853) -->
-    <skip />
+    <string name="permlab_eye_tracking_coarse" msgid="7989596289790269059">"מעקב אחרי תנועות העיניים בקירוב"</string>
+    <string name="permdesc_eye_tracking_coarse" msgid="870510233930553355">"ההרשאה מאפשרת לאפליקציה לעקוב אחרי תנועות העיניים בקירוב."</string>
+    <string name="permlab_eye_tracking_fine" msgid="6914457357027049512">"מעקב אחרי הכיוון של המבט"</string>
+    <string name="permdesc_eye_tracking_fine" msgid="5788889152304524730">"ההרשאה מאפשרת לאפליקציה לגשת לנתונים מדויקים של תנועות עיניים."</string>
+    <string name="permlab_face_tracking" msgid="2272048395128283324">"מעקב אחרי תנועות הפנים"</string>
+    <string name="permdesc_face_tracking" msgid="2622783922311211866">"ההרשאה מאפשרת לאפליקציה לגשת לנתוני מעקב תנועות הפנים."</string>
+    <string name="permlab_hand_tracking" msgid="6478233866595566940">"מעקב אחר תנועות הידיים"</string>
+    <string name="permdesc_hand_tracking" msgid="8639715900104966456">"ההרשאה מאפשרת לאפליקציה לגשת לנתוני מעקב תנועות הידיים."</string>
+    <string name="permlab_head_tracking" msgid="1309731456372087270">"מעקב אחרי תנועות הראש"</string>
+    <string name="permdesc_head_tracking" msgid="231597390513699188">"ההרשאה מאפשרת לאפליקציה לגשת לנתוני מעקב תנועות הראש."</string>
+    <string name="permlab_scene_understanding_coarse" msgid="6518646430502858641">"גישה לנתונים מהסביבה הקרובה"</string>
+    <string name="permdesc_scene_understanding_coarse" msgid="4508880777646198656">"ההרשאה מאפשרת לאפליקציה לגשת לנתוני המעקב מהסביבה הקרובה."</string>
+    <string name="permlab_scene_understanding_fine" msgid="409126403264393251">"גישה לנתונים מהסביבה הקרובה ברמת פירוט גבוהה"</string>
+    <string name="permdesc_scene_understanding_fine" msgid="6223368011593524179">"ההרשאה מאפשרת לאפליקציה לגשת לנתוני מעקב מהסביבה הקרובה ברמת פירוט גבוהה מאוד."</string>
+    <string name="permlab_xr_tracking_in_background" msgid="7117098718465619023">"‏גישה לנתוני XR כשהאפליקציה לא בחזית"</string>
+    <string name="permdesc_xr_tracking_in_background" msgid="939504041387836853">"‏ההרשאה מאפשרת לאפליקציה לגשת לנתוני XR כשהיא לא בחזית."</string>
     <string name="biometric_app_setting_name" msgid="3339209978734534457">"שימוש במידע ביומטרי"</string>
     <string name="biometric_or_screen_lock_app_setting_name" msgid="5348462421758257752">"שימוש במידע ביומטרי בנעילת מסך"</string>
     <string name="biometric_dialog_default_title" msgid="55026799173208210">"אימות הזהות שלך"</string>
@@ -1824,6 +1804,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"מצב שימוש ביד אחת"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"מעומעם במיוחד"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"מכשירי שמיעה"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"מנותק"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"מחובר"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"מצב פעיל"</string>
diff --git a/core/res/res/values-ja/strings.xml b/core/res/res/values-ja/strings.xml
index 7ad10c8..2f8133a 100644
--- a/core/res/res/values-ja/strings.xml
+++ b/core/res/res/values-ja/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"片手モード"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"さらに輝度を下げる"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"補聴器"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"未接続"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"接続済み"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"有効"</string>
diff --git a/core/res/res/values-ka/strings.xml b/core/res/res/values-ka/strings.xml
index fcdfc01..ef15405 100644
--- a/core/res/res/values-ka/strings.xml
+++ b/core/res/res/values-ka/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"ცალი ხელის რეჟიმი"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"დამატებითი დაბინდვა"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"სმენის აპარატები"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"კავშირი გაწყვეტილია"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"დაკავშირებული"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"აქტიური"</string>
diff --git a/core/res/res/values-kk/strings.xml b/core/res/res/values-kk/strings.xml
index e60ce5d..b575630 100644
--- a/core/res/res/values-kk/strings.xml
+++ b/core/res/res/values-kk/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Бір қолмен басқару режимі"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Экранды қарайту"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Есту аппараттары"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Ажыратылды"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Қосылды"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Белсенді"</string>
diff --git a/core/res/res/values-km/strings.xml b/core/res/res/values-km/strings.xml
index ad10175..eeae49b 100644
--- a/core/res/res/values-km/strings.xml
+++ b/core/res/res/values-km/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"មុខងារប្រើដៃម្ខាង"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"ងងឹតខ្លាំង"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"ឧបករណ៍ជំនួយការស្ដាប់"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"បាន​ផ្ដាច់"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"បានភ្ជាប់"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"សកម្ម"</string>
diff --git a/core/res/res/values-kn/strings.xml b/core/res/res/values-kn/strings.xml
index 5711aa6..fd468b4 100644
--- a/core/res/res/values-kn/strings.xml
+++ b/core/res/res/values-kn/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"ಒಂದು ಕೈ ಮೋಡ್‌"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"ಇನ್ನಷ್ಟು ಮಬ್ಬು"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"ಶ್ರವಣ ಸಾಧನಗಳು"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"ಡಿಸ್‌ಕನೆಕ್ಟ್ ಆಗಿದೆ"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"ಕನೆಕ್ಟ್ ಆಗಿದೆ"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"ಸಕ್ರಿಯವಾಗಿದೆ"</string>
diff --git a/core/res/res/values-ko/strings.xml b/core/res/res/values-ko/strings.xml
index bb8c022..0a88670 100644
--- a/core/res/res/values-ko/strings.xml
+++ b/core/res/res/values-ko/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"한 손 모드"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"더 어둡게"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"청각 보조 기기"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"연결 끊김"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"연결됨"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"활성"</string>
diff --git a/core/res/res/values-ky/strings.xml b/core/res/res/values-ky/strings.xml
index 3fe442f..83a1c69 100644
--- a/core/res/res/values-ky/strings.xml
+++ b/core/res/res/values-ky/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Бир кол режими"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Кошумча караңгылатуу"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Угуу түзмөктөрү"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Ажыратылды"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Туташты"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Жигердүү"</string>
diff --git a/core/res/res/values-lo/strings.xml b/core/res/res/values-lo/strings.xml
index 1658a78..f32ede6 100644
--- a/core/res/res/values-lo/strings.xml
+++ b/core/res/res/values-lo/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"ໂໝດມືດຽວ"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"ຫຼຸດແສງເປັນພິເສດ"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"ອຸປະກອນຊ່ວຍຟັງ"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"ຕັດການເຊື່ອມຕໍ່ແລ້ວ"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"ເຊື່ອມຕໍ່ແລ້ວ"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"ນຳໃຊ້ຢູ່"</string>
diff --git a/core/res/res/values-lt/strings.xml b/core/res/res/values-lt/strings.xml
index 57db157..51311b37 100644
--- a/core/res/res/values-lt/strings.xml
+++ b/core/res/res/values-lt/strings.xml
@@ -1805,6 +1805,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Vienos rankos režimas"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Itin blanku"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Klausos įrenginiai"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Atjungta"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Prisijungta"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktyvus"</string>
diff --git a/core/res/res/values-lv/strings.xml b/core/res/res/values-lv/strings.xml
index 764e8c9..3b3609e 100644
--- a/core/res/res/values-lv/strings.xml
+++ b/core/res/res/values-lv/strings.xml
@@ -1804,6 +1804,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Vienas rokas režīms"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Papildu aptumšošana"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Dzirdes aparāti"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Atvienota"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Pievienota"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktīva"</string>
diff --git a/core/res/res/values-mk/strings.xml b/core/res/res/values-mk/strings.xml
index 4600935..0c92fd5 100644
--- a/core/res/res/values-mk/strings.xml
+++ b/core/res/res/values-mk/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Режим со една рака"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Дополнително затемнување"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Слушни помагала"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Не е поврзано"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Поврзано"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Активно"</string>
diff --git a/core/res/res/values-ml/strings.xml b/core/res/res/values-ml/strings.xml
index d9ec167..cbdbd2d 100644
--- a/core/res/res/values-ml/strings.xml
+++ b/core/res/res/values-ml/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"ഒറ്റക്കൈ മോഡ്"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"കൂടുതൽ ഡിം ചെയ്യൽ"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"ശ്രവണ ഉപകരണങ്ങൾ"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"വിച്‌ഛേദിച്ചു"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"കണക്റ്റ് ചെയ്‌തു"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"സജീവം"</string>
diff --git a/core/res/res/values-mn/strings.xml b/core/res/res/values-mn/strings.xml
index 05f4f05..4c72a86 100644
--- a/core/res/res/values-mn/strings.xml
+++ b/core/res/res/values-mn/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Нэг гарын горим"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Хэт бүүдгэр"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Сонсголын төхөөрөмжүүд"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Салсан"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Холбогдсон"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Идэвхтэй"</string>
diff --git a/core/res/res/values-mr/strings.xml b/core/res/res/values-mr/strings.xml
index df7688e..ea1e92b 100644
--- a/core/res/res/values-mr/strings.xml
+++ b/core/res/res/values-mr/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"एकहाती मोड"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"आणखी डिम"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"श्रवणयंत्रे"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"डिस्कनेक्ट केले आहे"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"कनेक्ट केले आहे"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"अ‍ॅक्टिव्ह"</string>
diff --git a/core/res/res/values-ms/strings.xml b/core/res/res/values-ms/strings.xml
index 7d77268..43acbac 100644
--- a/core/res/res/values-ms/strings.xml
+++ b/core/res/res/values-ms/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Mod sebelah tangan"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Amat malap"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Peranti pendengaran"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Diputuskan sambungan"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Disambungkan"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktif"</string>
diff --git a/core/res/res/values-my/strings.xml b/core/res/res/values-my/strings.xml
index b2b6011..2333539 100644
--- a/core/res/res/values-my/strings.xml
+++ b/core/res/res/values-my/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"လက်တစ်ဖက်သုံးမုဒ်"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"ပိုမှိန်ခြင်း"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"နားကြားကိရိယာ"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"ချိတ်ဆက်မထားပါ"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"ချိတ်ဆက်ထားသည်"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"သုံးနေသည်"</string>
diff --git a/core/res/res/values-nb/strings.xml b/core/res/res/values-nb/strings.xml
index 3022fca..3a337f6 100644
--- a/core/res/res/values-nb/strings.xml
+++ b/core/res/res/values-nb/strings.xml
@@ -276,7 +276,7 @@
     <string name="bugreport_option_full_title" msgid="7681035745950045690">"Fullstendig rapport"</string>
     <string name="bugreport_option_full_summary" msgid="1975130009258435885">"Bruk dette alternativet for minst mulig forstyrrelse på systemet når enheten din er treg eller ikke svarer, eller når du trenger alle rapportdelene. Det tas ikke noen skjermbilde, og du kan ikke legge til flere detaljer."</string>
     <string name="bugreport_countdown" msgid="6418620521782120755">"{count,plural, =1{Tar skjermbilde for feilrapporten om # sekund.}other{Tar skjermbilde for feilrapporten om # sekunder.}}"</string>
-    <string name="bugreport_screenshot_success_toast" msgid="7986095104151473745">"En skjermbilde er tatt med feilrapporten"</string>
+    <string name="bugreport_screenshot_success_toast" msgid="7986095104151473745">"Et skjermbilde er tatt med feilrapporten"</string>
     <string name="bugreport_screenshot_failure_toast" msgid="6736320861311294294">"Kunne ikke ta skjermbilde med feilrapporten"</string>
     <string name="global_action_toggle_silent_mode" msgid="8464352592860372188">"Stillemodus"</string>
     <string name="global_action_silent_mode_on_status" msgid="2371892537738632013">"Lyden er av"</string>
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Enhåndsmodus"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Ekstra dimmet"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Høreapparater"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Frakoblet"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Tilkoblet"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktiv"</string>
diff --git a/core/res/res/values-ne/strings.xml b/core/res/res/values-ne/strings.xml
index 93ead6d..ce64589 100644
--- a/core/res/res/values-ne/strings.xml
+++ b/core/res/res/values-ne/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"एक हाते मोड"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"अझै मधुरो"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"हियरिङ डिभाइसहरू"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"डिस्कनेक्ट गरिएको"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"कनेक्ट गरिएको"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"सक्रिय"</string>
diff --git a/core/res/res/values-nl/strings.xml b/core/res/res/values-nl/strings.xml
index fc12906..f7b6cc8 100644
--- a/core/res/res/values-nl/strings.xml
+++ b/core/res/res/values-nl/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Bediening met 1 hand"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Extra dimmen"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Hoortoestellen"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Verbinding verbroken"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Verbonden"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Actief"</string>
diff --git a/core/res/res/values-or/strings.xml b/core/res/res/values-or/strings.xml
index 3200f40..ef567e5 100644
--- a/core/res/res/values-or/strings.xml
+++ b/core/res/res/values-or/strings.xml
@@ -327,7 +327,7 @@
     <string name="permgroupdesc_contacts" msgid="9163927941244182567">"ଆପଣଙ୍କ ଯୋଗାଯୋଗ ଆକ୍ସେସ୍ କରେ"</string>
     <string name="permgrouplab_location" msgid="1858277002233964394">"ଲୋକେସନ"</string>
     <string name="permgroupdesc_location" msgid="1995955142118450685">"ଏହି ଡିଭାଇସ୍‌ର ଲୋକେସନ୍‍ ଆକ୍ସେସ୍‍ କରେ"</string>
-    <string name="permgrouplab_calendar" msgid="6426860926123033230">"କେଲେଣ୍ଡର"</string>
+    <string name="permgrouplab_calendar" msgid="6426860926123033230">"Calendar"</string>
     <string name="permgroupdesc_calendar" msgid="6762751063361489379">"ଆପଣଙ୍କ କ୍ୟାଲେଣ୍ଡର୍‍ ଆକ୍ସେସ୍‍ କରେ"</string>
     <string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
     <string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS ମେସେଜ୍‍ ପଠାନ୍ତୁ ଓ ଦେଖନ୍ତୁ"</string>
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"ଏକ-ହାତ ମୋଡ୍"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"ଅତ୍ୟଧିକ ଡିମ"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"ଶ୍ରବଣ ଡିଭାଇସଗୁଡ଼ିକ"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"ଡିସକନେକ୍ଟ କରାଯାଇଛି"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"କନେକ୍ଟ କରାଯାଇଛି"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"ସକ୍ରିୟ"</string>
diff --git a/core/res/res/values-pa/strings.xml b/core/res/res/values-pa/strings.xml
index cee65af..7f06227 100644
--- a/core/res/res/values-pa/strings.xml
+++ b/core/res/res/values-pa/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"ਇੱਕ ਹੱਥ ਮੋਡ"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"ਜ਼ਿਆਦਾ ਘੱਟ ਚਮਕ"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"ਸੁਣਨ ਵਾਲੇ ਡੀਵਾਈਸ"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"ਡਿਸਕਨੈਕਟ ਹੋ ਗਿਆ"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"ਕਨੈਕਟ ਹੈ"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"ਕਿਰਿਆਸ਼ੀਲ"</string>
diff --git a/core/res/res/values-pl/strings.xml b/core/res/res/values-pl/strings.xml
index 0c6eb46..73e4d24 100644
--- a/core/res/res/values-pl/strings.xml
+++ b/core/res/res/values-pl/strings.xml
@@ -1805,6 +1805,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Tryb jednej ręki"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Dodatkowe przyciemnienie"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Urządzenia słuchowe"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Rozłączone"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Połączone"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktywne"</string>
diff --git a/core/res/res/values-pt-rBR/strings.xml b/core/res/res/values-pt-rBR/strings.xml
index 4fe1c96..f15ab35 100644
--- a/core/res/res/values-pt-rBR/strings.xml
+++ b/core/res/res/values-pt-rBR/strings.xml
@@ -1804,6 +1804,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Modo para uma mão"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Tela ainda mais escura"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Aparelhos auditivos"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Desconectado"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Conectado"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Ativo"</string>
@@ -1990,7 +1992,7 @@
     <string name="zen_mode_rule_name_combination" msgid="7174598364351313725">"<xliff:g id="FIRST">%1$s</xliff:g> / <xliff:g id="REST">%2$s</xliff:g>"</string>
     <string name="toolbar_collapse_description" msgid="8009920446193610996">"Recolher"</string>
     <string name="zen_mode_feature_name" msgid="3785547207263754500">"Não perturbe"</string>
-    <string name="zen_mode_downtime_feature_name" msgid="5886005761431427128">"Intervalo"</string>
+    <string name="zen_mode_downtime_feature_name" msgid="5886005761431427128">"Descanso"</string>
     <string name="zen_mode_default_weeknights_name" msgid="7902108149994062847">"Durante a semana à noite"</string>
     <string name="zen_mode_default_weekends_name" msgid="4707200272709377930">"Fim de semana"</string>
     <string name="zen_mode_default_events_name" msgid="2280682960128512257">"Evento"</string>
diff --git a/core/res/res/values-pt-rPT/strings.xml b/core/res/res/values-pt-rPT/strings.xml
index e17b96f..e80b780 100644
--- a/core/res/res/values-pt-rPT/strings.xml
+++ b/core/res/res/values-pt-rPT/strings.xml
@@ -1804,6 +1804,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Modo para uma mão"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Mais escuro"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Dispositivos auditivos"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Desligado"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Ligado"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Ativo"</string>
diff --git a/core/res/res/values-pt/strings.xml b/core/res/res/values-pt/strings.xml
index 4fe1c96..f15ab35 100644
--- a/core/res/res/values-pt/strings.xml
+++ b/core/res/res/values-pt/strings.xml
@@ -1804,6 +1804,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Modo para uma mão"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Tela ainda mais escura"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Aparelhos auditivos"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Desconectado"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Conectado"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Ativo"</string>
@@ -1990,7 +1992,7 @@
     <string name="zen_mode_rule_name_combination" msgid="7174598364351313725">"<xliff:g id="FIRST">%1$s</xliff:g> / <xliff:g id="REST">%2$s</xliff:g>"</string>
     <string name="toolbar_collapse_description" msgid="8009920446193610996">"Recolher"</string>
     <string name="zen_mode_feature_name" msgid="3785547207263754500">"Não perturbe"</string>
-    <string name="zen_mode_downtime_feature_name" msgid="5886005761431427128">"Intervalo"</string>
+    <string name="zen_mode_downtime_feature_name" msgid="5886005761431427128">"Descanso"</string>
     <string name="zen_mode_default_weeknights_name" msgid="7902108149994062847">"Durante a semana à noite"</string>
     <string name="zen_mode_default_weekends_name" msgid="4707200272709377930">"Fim de semana"</string>
     <string name="zen_mode_default_events_name" msgid="2280682960128512257">"Evento"</string>
diff --git a/core/res/res/values-ro/strings.xml b/core/res/res/values-ro/strings.xml
index 596a3ed..f02923b 100644
--- a/core/res/res/values-ro/strings.xml
+++ b/core/res/res/values-ro/strings.xml
@@ -1804,6 +1804,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Modul cu o mână"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Luminozitate redusă suplimentar"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Aparate auditive"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Deconectat"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Conectat"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Activ"</string>
diff --git a/core/res/res/values-ru/strings.xml b/core/res/res/values-ru/strings.xml
index 5104ca1..e32ec41 100644
--- a/core/res/res/values-ru/strings.xml
+++ b/core/res/res/values-ru/strings.xml
@@ -1805,6 +1805,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Режим управления одной рукой"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Дополнительное уменьшение яркости"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Слуховые аппараты"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Отключено"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Подключено"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Активно"</string>
diff --git a/core/res/res/values-si/strings.xml b/core/res/res/values-si/strings.xml
index 8df50b7..35251bc 100644
--- a/core/res/res/values-si/strings.xml
+++ b/core/res/res/values-si/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"තනි අත් ප්‍රකාරය"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"තවත් අඳුරු"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"ශ්‍රවණ උපාංග"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"විසන්ධි විය"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"සම්බන්ධිතයි"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"සක්‍රිය"</string>
diff --git a/core/res/res/values-sk/strings.xml b/core/res/res/values-sk/strings.xml
index 1d5b4e5..391b0d7 100644
--- a/core/res/res/values-sk/strings.xml
+++ b/core/res/res/values-sk/strings.xml
@@ -1805,6 +1805,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Režim jednej ruky"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Mimoriadne stmavenie"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Načúvacie zariadenia"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Odpojené"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Pripojené"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktívne"</string>
diff --git a/core/res/res/values-sl/strings.xml b/core/res/res/values-sl/strings.xml
index 3f9592b..c84fd17 100644
--- a/core/res/res/values-sl/strings.xml
+++ b/core/res/res/values-sl/strings.xml
@@ -1805,6 +1805,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Enoročni način"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Zelo zatemnjen zaslon"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Slušni pripomočki"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Brez povezave"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Povezano"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktivno"</string>
diff --git a/core/res/res/values-sq/strings.xml b/core/res/res/values-sq/strings.xml
index fa3eeae..25d51a3 100644
--- a/core/res/res/values-sq/strings.xml
+++ b/core/res/res/values-sq/strings.xml
@@ -353,14 +353,10 @@
     <string name="permgroupdesc_sensors" msgid="2610631290633747752">"qasu tek të dhënat e sensorëve rreth shenjave të tua jetësore"</string>
     <string name="permgrouplab_notifications" msgid="5472972361980668884">"Njoftimet"</string>
     <string name="permgroupdesc_notifications" msgid="4608679556801506580">"shfaq njoftimet"</string>
-    <!-- no translation found for permgrouplab_xr_tracking (7418994009794287471) -->
-    <skip />
-    <!-- no translation found for permgroupdesc_xr_tracking (6777198859446500821) -->
-    <skip />
-    <!-- no translation found for permgrouplab_xr_tracking_sensitive (1194833982988144536) -->
-    <skip />
-    <!-- no translation found for permgroupdesc_xr_tracking_sensitive (9178027369004805829) -->
-    <skip />
+    <string name="permgrouplab_xr_tracking" msgid="7418994009794287471">"Të dhënat e gjurmimit për XR"</string>
+    <string name="permgroupdesc_xr_tracking" msgid="6777198859446500821">"të qaset në të dhënat për XR për ty dhe mjedisin rreth teje"</string>
+    <string name="permgrouplab_xr_tracking_sensitive" msgid="1194833982988144536">"të dhënat delikate të gjurmimit për XR"</string>
+    <string name="permgroupdesc_xr_tracking_sensitive" msgid="9178027369004805829">"të qaset në të dhënat delikate të gjurmimit, si p.sh. të vështrimit të syve"</string>
     <string name="capability_title_canRetrieveWindowContent" msgid="7554282892101587296">"Të nxjerrë përmbajtjen e dritares"</string>
     <string name="capability_desc_canRetrieveWindowContent" msgid="6195610527625237661">"Inspekton përmbajtjen e dritares me të cilën po ndërvepron."</string>
     <string name="capability_title_canRequestTouchExploration" msgid="327598364696316213">"Të aktivizojë veçorinë \"Eksploro me prekje\""</string>
@@ -656,38 +652,22 @@
     <string name="permdesc_imagesWrite" msgid="5195054463269193317">"Lejon aplikacionin të modifikojë koleksionin tënd të fotografive."</string>
     <string name="permlab_mediaLocation" msgid="7368098373378598066">"lexo vendndodhjet nga koleksioni yt i medias"</string>
     <string name="permdesc_mediaLocation" msgid="597912899423578138">"Lejon aplikacionin të lexojë vendndodhjet nga koleksioni yt i medias."</string>
-    <!-- no translation found for permlab_eye_tracking_coarse (7989596289790269059) -->
-    <skip />
-    <!-- no translation found for permdesc_eye_tracking_coarse (870510233930553355) -->
-    <skip />
-    <!-- no translation found for permlab_eye_tracking_fine (6914457357027049512) -->
-    <skip />
-    <!-- no translation found for permdesc_eye_tracking_fine (5788889152304524730) -->
-    <skip />
-    <!-- no translation found for permlab_face_tracking (2272048395128283324) -->
-    <skip />
-    <!-- no translation found for permdesc_face_tracking (2622783922311211866) -->
-    <skip />
-    <!-- no translation found for permlab_hand_tracking (6478233866595566940) -->
-    <skip />
-    <!-- no translation found for permdesc_hand_tracking (8639715900104966456) -->
-    <skip />
-    <!-- no translation found for permlab_head_tracking (1309731456372087270) -->
-    <skip />
-    <!-- no translation found for permdesc_head_tracking (231597390513699188) -->
-    <skip />
-    <!-- no translation found for permlab_scene_understanding_coarse (6518646430502858641) -->
-    <skip />
-    <!-- no translation found for permdesc_scene_understanding_coarse (4508880777646198656) -->
-    <skip />
-    <!-- no translation found for permlab_scene_understanding_fine (409126403264393251) -->
-    <skip />
-    <!-- no translation found for permdesc_scene_understanding_fine (6223368011593524179) -->
-    <skip />
-    <!-- no translation found for permlab_xr_tracking_in_background (7117098718465619023) -->
-    <skip />
-    <!-- no translation found for permdesc_xr_tracking_in_background (939504041387836853) -->
-    <skip />
+    <string name="permlab_eye_tracking_coarse" msgid="7989596289790269059">"të gjurmojë vështrimin e përafërt të syve"</string>
+    <string name="permdesc_eye_tracking_coarse" msgid="870510233930553355">"Lejon që aplikacioni të gjurmojë vështrimin e përafërt të syve"</string>
+    <string name="permlab_eye_tracking_fine" msgid="6914457357027049512">"të gjurmojë se ku po shikon ti"</string>
+    <string name="permdesc_eye_tracking_fine" msgid="5788889152304524730">"Lejon që aplikacioni të qaset në të dhënat e vështrimit të saktë të syve."</string>
+    <string name="permlab_face_tracking" msgid="2272048395128283324">"të gjurmojë fytyrën tënde"</string>
+    <string name="permdesc_face_tracking" msgid="2622783922311211866">"Lejo që aplikacioni të qaset në të dhënat e gjurmimit të fytyrës."</string>
+    <string name="permlab_hand_tracking" msgid="6478233866595566940">"të gjurmojë duart e tua"</string>
+    <string name="permdesc_hand_tracking" msgid="8639715900104966456">"Lejon që aplikacioni të qaset në të dhënat e gjurmimit të duarve."</string>
+    <string name="permlab_head_tracking" msgid="1309731456372087270">"të gjurmojë kokën tënde"</string>
+    <string name="permdesc_head_tracking" msgid="231597390513699188">"Lejo që aplikacioni të qaset në të dhënat e gjurmimit të kokës."</string>
+    <string name="permlab_scene_understanding_coarse" msgid="6518646430502858641">"të kuptojë mjedisin tënd"</string>
+    <string name="permdesc_scene_understanding_coarse" msgid="4508880777646198656">"Lejon që aplikacioni të qaset në të dhënat e gjurmimit për mjedisin drejtpërdrejt rreth teje."</string>
+    <string name="permlab_scene_understanding_fine" msgid="409126403264393251">"të kuptojë mjedisin tënd të drejtpërdrejtë me nivel të lartë të detajeve"</string>
+    <string name="permdesc_scene_understanding_fine" msgid="6223368011593524179">"Lejon që aplikacioni të qaset në të dhënat e gjurmimit për mjedisin drejtpërdrejt rreth teje me nivel shumë të lartë të detajeve."</string>
+    <string name="permlab_xr_tracking_in_background" msgid="7117098718465619023">"të qaset në të dhënat për XR kur nuk është në plan të parë"</string>
+    <string name="permdesc_xr_tracking_in_background" msgid="939504041387836853">"Lejon që aplikacioni të qaset në të dhënat për XR kur nuk është në plan të parë."</string>
     <string name="biometric_app_setting_name" msgid="3339209978734534457">"Përdor sistemet biometrike"</string>
     <string name="biometric_or_screen_lock_app_setting_name" msgid="5348462421758257752">"Përdor sistemet biometrike ose kyçjen e ekranit"</string>
     <string name="biometric_dialog_default_title" msgid="55026799173208210">"Verifiko që je ti"</string>
@@ -1823,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Modaliteti i përdorimit me një dorë"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Shumë më i zbehtë"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Pajisjet e dëgjimit"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Shkëputur"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Lidhur"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktive"</string>
diff --git a/core/res/res/values-sr/strings.xml b/core/res/res/values-sr/strings.xml
index d6ad76b..77ceff2 100644
--- a/core/res/res/values-sr/strings.xml
+++ b/core/res/res/values-sr/strings.xml
@@ -1804,6 +1804,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Режим једном руком"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Додатно затамни"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Слушни апарати"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Веза је прекинута"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Повезано"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Активно"</string>
diff --git a/core/res/res/values-sv/strings.xml b/core/res/res/values-sv/strings.xml
index 3d88850..1ee2564 100644
--- a/core/res/res/values-sv/strings.xml
+++ b/core/res/res/values-sv/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Enhandsläge"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Extradimmat"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Hörhjälpmedel"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Frånkopplad"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Ansluten"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktiv"</string>
diff --git a/core/res/res/values-sw/strings.xml b/core/res/res/values-sw/strings.xml
index 6d67618..36bf76d 100644
--- a/core/res/res/values-sw/strings.xml
+++ b/core/res/res/values-sw/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Hali ya kutumia kwa mkono mmoja"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Kipunguza mwangaza zaidi"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Vifaa vya kusaidia kusikia"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Haijaunganishwa"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Imeunganishwa"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Inatumika"</string>
diff --git a/core/res/res/values-ta/strings.xml b/core/res/res/values-ta/strings.xml
index 6a8179c..3fa3827 100644
--- a/core/res/res/values-ta/strings.xml
+++ b/core/res/res/values-ta/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"ஒற்றைக் கைப் பயன்முறை"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"மிகக் குறைவான வெளிச்சம்"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"செவித்துணைக் கருவிகள்"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"இணைப்புநீக்கப்பட்டது"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"இணைக்கப்பட்டுள்ளது"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"செயலில் உள்ளது"</string>
diff --git a/core/res/res/values-te/strings.xml b/core/res/res/values-te/strings.xml
index 11611ea..027161e 100644
--- a/core/res/res/values-te/strings.xml
+++ b/core/res/res/values-te/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"వన్-హ్యాండెడ్ మోడ్"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"ఎక్స్‌ట్రా డిమ్"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"వినికిడి పరికరాలు"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"డిస్‌కనెక్ట్ అయింది"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"కనెక్ట్ చేయబడింది"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"యాక్టివ్"</string>
diff --git a/core/res/res/values-th/strings.xml b/core/res/res/values-th/strings.xml
index d854025..f82adc6 100644
--- a/core/res/res/values-th/strings.xml
+++ b/core/res/res/values-th/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"โหมดมือเดียว"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"หรี่แสงเพิ่มเติม"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"เครื่องช่วยฟัง"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"เลิกเชื่อมต่อแล้ว"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"เชื่อมต่อแล้ว"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"ใช้งานอยู่"</string>
diff --git a/core/res/res/values-tl/strings.xml b/core/res/res/values-tl/strings.xml
index 78f44c8..328997d 100644
--- a/core/res/res/values-tl/strings.xml
+++ b/core/res/res/values-tl/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"One-Hand mode"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Extra dim"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Mga hearing device"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Nadiskonekta"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Nakakonekta"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Aktibo"</string>
diff --git a/core/res/res/values-tr/strings.xml b/core/res/res/values-tr/strings.xml
index b575d9f..5106e1a 100644
--- a/core/res/res/values-tr/strings.xml
+++ b/core/res/res/values-tr/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Tek El modu"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Ekstra loş"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"İşitme cihazları"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Bağlı değil"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Bağlı"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Etkin"</string>
diff --git a/core/res/res/values-uk/strings.xml b/core/res/res/values-uk/strings.xml
index 737c245..203cdfa 100644
--- a/core/res/res/values-uk/strings.xml
+++ b/core/res/res/values-uk/strings.xml
@@ -1805,6 +1805,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Режим керування однією рукою"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Додаткове зменшення яскравості"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Слухові апарати"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Від’єднано"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Під’єднано"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Активний"</string>
diff --git a/core/res/res/values-ur/strings.xml b/core/res/res/values-ur/strings.xml
index 82292bf..376efd1 100644
--- a/core/res/res/values-ur/strings.xml
+++ b/core/res/res/values-ur/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"ایک ہاتھ کی وضع"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"اضافی مدھم"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"سماعتی آلات"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"غیر منسلک ہے"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"منسلک ہے"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"فعال"</string>
diff --git a/core/res/res/values-uz/strings.xml b/core/res/res/values-uz/strings.xml
index 0e66165..a1b9e5d 100644
--- a/core/res/res/values-uz/strings.xml
+++ b/core/res/res/values-uz/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Ixcham rejim"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Juda xira"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Eshitish qurilmalari"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Uzildi"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Ulandi"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Faol"</string>
diff --git a/core/res/res/values-vi/strings.xml b/core/res/res/values-vi/strings.xml
index 754e66e..473568d 100644
--- a/core/res/res/values-vi/strings.xml
+++ b/core/res/res/values-vi/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Chế độ một tay"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Siêu tối"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Thiết bị trợ thính"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Đã ngắt kết nối"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Đã kết nối"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Đang hoạt động"</string>
diff --git a/core/res/res/values-zh-rCN/strings.xml b/core/res/res/values-zh-rCN/strings.xml
index 1f625ad..f91f457 100644
--- a/core/res/res/values-zh-rCN/strings.xml
+++ b/core/res/res/values-zh-rCN/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"单手模式"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"极暗"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"助听装置"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"已断开连接"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"已连接"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"活跃"</string>
diff --git a/core/res/res/values-zh-rHK/strings.xml b/core/res/res/values-zh-rHK/strings.xml
index fc2783c..9bcb173 100644
--- a/core/res/res/values-zh-rHK/strings.xml
+++ b/core/res/res/values-zh-rHK/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"單手模式"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"超暗"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"助聽器"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"已中斷連線"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"已連線"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"運作中"</string>
diff --git a/core/res/res/values-zh-rTW/strings.xml b/core/res/res/values-zh-rTW/strings.xml
index c53aaa1..9f8fd67 100644
--- a/core/res/res/values-zh-rTW/strings.xml
+++ b/core/res/res/values-zh-rTW/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"單手模式"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"超暗"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"助聽器"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"連線中斷"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"已連線"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"運作中"</string>
diff --git a/core/res/res/values-zu/strings.xml b/core/res/res/values-zu/strings.xml
index 079bf67..a0df4a1 100644
--- a/core/res/res/values-zu/strings.xml
+++ b/core/res/res/values-zu/strings.xml
@@ -1803,6 +1803,8 @@
     <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Imodi yesandla esisodwa"</string>
     <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Ukufiphaza okwengeziwe"</string>
     <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Amadivayizi okuzwa"</string>
+    <!-- no translation found for autoclick_feature_name (8149248738736949630) -->
+    <skip />
     <string name="hearing_device_status_disconnected" msgid="497547752953543832">"Inqamukile"</string>
     <string name="hearing_device_status_connected" msgid="2149385149669918764">"Ixhunyiwe"</string>
     <string name="hearing_device_status_active" msgid="4770378695482566032">"Kuyasebenza"</string>
diff --git a/core/res/res/values/dimens.xml b/core/res/res/values/dimens.xml
index 9acb242..a1961ae 100644
--- a/core/res/res/values/dimens.xml
+++ b/core/res/res/values/dimens.xml
@@ -268,6 +268,9 @@
      72dp (content margin) - 12dp (action padding) - 4dp (button inset) -->
     <dimen name="notification_2025_actions_margin_start">56dp</dimen>
 
+    <!-- Notification action button text size -->
+    <dimen name="notification_2025_action_text_size">16sp</dimen>
+
     <!-- The margin on the end of most content views (ignores the expander) -->
     <dimen name="notification_content_margin_end">16dp</dimen>
 
diff --git a/core/res/res/values/locale_config.xml b/core/res/res/values/locale_config.xml
index 77d2e87..0efa1bc 100644
--- a/core/res/res/values/locale_config.xml
+++ b/core/res/res/values/locale_config.xml
@@ -163,15 +163,18 @@
         <item>en-CM</item> <!-- English (Cameroon) -->
         <item>en-CX</item> <!-- English (Christmas Island) -->
         <item>en-CY</item> <!-- English (Cyprus) -->
+        <item>en-CZ</item> <!-- English (Czechia) -->
         <item>en-DE</item> <!-- English (Germany) -->
         <item>en-DG</item> <!-- English (Diego Garcia) -->
         <item>en-DK</item> <!-- English (Denmark) -->
         <item>en-DM</item> <!-- English (Dominica) -->
         <item>en-ER</item> <!-- English (Eritrea) -->
+        <item>en-ES</item> <!-- English (Spain) -->
         <item>en-FI</item> <!-- English (Finland) -->
         <item>en-FJ</item> <!-- English (Fiji) -->
         <item>en-FK</item> <!-- English (Falkland Islands (Islas Malvinas)) -->
         <item>en-FM</item> <!-- English (Micronesia) -->
+        <item>en-FR</item> <!-- English (France) -->
         <item>en-GB</item> <!-- English (United Kingdom) -->
         <item>en-GD</item> <!-- English (Grenada) -->
         <item>en-GG</item> <!-- English (Guernsey) -->
@@ -181,12 +184,14 @@
         <item>en-GU</item> <!-- English (Guam) -->
         <item>en-GY</item> <!-- English (Guyana) -->
         <item>en-HK</item> <!-- English (Hong Kong) -->
+        <item>en-HU</item> <!-- English (Hungary) -->
         <item>en-ID</item> <!-- English (Indonesia) -->
         <item>en-IE</item> <!-- English (Ireland) -->
         <item>en-IL</item> <!-- English (Israel) -->
         <item>en-IM</item> <!-- English (Isle of Man) -->
         <item>en-IN</item> <!-- English (India) -->
         <item>en-IO</item> <!-- English (British Indian Ocean Territory) -->
+        <item>en-IT</item> <!-- English (Italy) -->
         <item>en-JE</item> <!-- English (Jersey) -->
         <item>en-JM</item> <!-- English (Jamaica) -->
         <item>en-KE</item> <!-- English (Kenya) -->
@@ -210,15 +215,19 @@
         <item>en-NF</item> <!-- English (Norfolk Island) -->
         <item>en-NG</item> <!-- English (Nigeria) -->
         <item>en-NL</item> <!-- English (Netherlands) -->
+        <item>en-NO</item> <!-- English (Norway) -->
         <item>en-NR</item> <!-- English (Nauru) -->
         <item>en-NU</item> <!-- English (Niue) -->
         <item>en-NZ</item> <!-- English (New Zealand) -->
         <item>en-PG</item> <!-- English (Papua New Guinea) -->
         <item>en-PH</item> <!-- English (Philippines) -->
         <item>en-PK</item> <!-- English (Pakistan) -->
+        <item>en-PL</item> <!-- English (Poland) -->
         <item>en-PN</item> <!-- English (Pitcairn Islands) -->
         <item>en-PR</item> <!-- English (Puerto Rico) -->
+        <item>en-PT</item> <!-- English (Portugal) -->
         <item>en-PW</item> <!-- English (Palau) -->
+        <item>en-RO</item> <!-- English (Romania) -->
         <item>en-RW</item> <!-- English (Rwanda) -->
         <item>en-SB</item> <!-- English (Solomon Islands) -->
         <item>en-SC</item> <!-- English (Seychelles) -->
@@ -227,6 +236,7 @@
         <item>en-SG</item> <!-- English (Singapore) -->
         <item>en-SH</item> <!-- English (St. Helena) -->
         <item>en-SI</item> <!-- English (Slovenia) -->
+        <item>en-SK</item> <!-- English (Slovakia) -->
         <item>en-SL</item> <!-- English (Sierra Leone) -->
         <item>en-SS</item> <!-- English (South Sudan) -->
         <item>en-SX</item> <!-- English (Sint Maarten) -->
diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml
index 6a83bae..cb3dfc7 100644
--- a/core/res/res/values/strings.xml
+++ b/core/res/res/values/strings.xml
@@ -5063,8 +5063,6 @@
     <!-- Notification action button. Click it will open the bluetooth device details page for this hearing device. It will be shown when making a phone call with the hearing device. [CHAR LIMIT=none] -->
     <string name="hearing_device_notification_settings_button">Settings</string>
 
-    <!-- Text spoken when the current user is switched if accessibility is enabled. [CHAR LIMIT=none] -->
-    <string name="user_switched">Current user <xliff:g id="name" example="Bob">%1$s</xliff:g>.</string>
     <!-- Message shown when switching to a user [CHAR LIMIT=none] -->
     <string name="user_switching_message">Switching to <xliff:g id="name" example="Bob">%1$s</xliff:g>\u2026</string>
     <!-- Message when logging out a user on a split user system -->
diff --git a/core/tests/coretests/src/android/content/pm/OWNERS b/core/tests/coretests/src/android/content/pm/OWNERS
index 8673365..c4c40dc 100644
--- a/core/tests/coretests/src/android/content/pm/OWNERS
+++ b/core/tests/coretests/src/android/content/pm/OWNERS
@@ -1,5 +1,4 @@
 include /core/java/android/content/pm/OWNERS
 
 per-file AppSearchPersonTest.java = file:/core/java/android/content/pm/SHORTCUT_OWNERS
-per-file SigningDetailsTest.java = cbrubaker@google.com
 per-file SigningDetailsTest.java = mpgroover@google.com
diff --git a/core/tests/coretests/src/android/hardware/display/DisplayManagerGlobalTest.java b/core/tests/coretests/src/android/hardware/display/DisplayManagerGlobalTest.java
index 8ef105f..de5f0ff 100644
--- a/core/tests/coretests/src/android/hardware/display/DisplayManagerGlobalTest.java
+++ b/core/tests/coretests/src/android/hardware/display/DisplayManagerGlobalTest.java
@@ -177,8 +177,10 @@
     @RequiresFlagsEnabled(Flags.FLAG_DELAY_IMPLICIT_RR_REGISTRATION_UNTIL_RR_ACCESSED)
     public void test_refreshRateRegistration_implicitRRCallbacksEnabled()
             throws RemoteException {
+        DisplayManager.DisplayListener displayListener1 =
+                Mockito.mock(DisplayManager.DisplayListener.class);
         // Subscription without supplied events doesn't subscribe to RR events
-        mDisplayManagerGlobal.registerDisplayListener(mDisplayListener, mHandler,
+        mDisplayManagerGlobal.registerDisplayListener(displayListener1, mHandler,
                 ALL_DISPLAY_EVENTS, /* packageName= */ null,
                 /* isEventFilterExplicit */ false);
         Mockito.verify(mDisplayManager)
@@ -187,7 +189,9 @@
         // After registering to refresh rate changes, subscription without supplied events subscribe
         // to RR events
         mDisplayManagerGlobal.registerForRefreshRateChanges();
-        mDisplayManagerGlobal.registerDisplayListener(mDisplayListener, mHandler,
+        DisplayManager.DisplayListener displayListener2 =
+                Mockito.mock(DisplayManager.DisplayListener.class);
+        mDisplayManagerGlobal.registerDisplayListener(displayListener2, mHandler,
                 ALL_DISPLAY_EVENTS, /* packageName= */ null,
                 /* isEventFilterExplicit */ false);
         Mockito.verify(mDisplayManager)
@@ -203,7 +207,9 @@
         }
 
         // Subscription to RR when events are supplied doesn't happen
-        mDisplayManagerGlobal.registerDisplayListener(mDisplayListener, mHandler,
+        DisplayManager.DisplayListener displayListener3 =
+                Mockito.mock(DisplayManager.DisplayListener.class);
+        mDisplayManagerGlobal.registerDisplayListener(displayListener3, mHandler,
                 ALL_DISPLAY_EVENTS, /* packageName= */ null,
                 /* isEventFilterExplicit */ true);
         Mockito.verify(mDisplayManager)
@@ -214,7 +220,6 @@
         int subscribedListenersCount = 0;
         int nonSubscribedListenersCount = 0;
         for (DisplayManagerGlobal.DisplayListenerDelegate delegate: delegates) {
-
             if (delegate.isEventFilterExplicit()) {
                 assertEquals(ALL_DISPLAY_EVENTS, delegate.mInternalEventFlagsMask);
                 nonSubscribedListenersCount++;
diff --git a/core/tests/coretests/src/android/view/InsetsControllerTest.java b/core/tests/coretests/src/android/view/InsetsControllerTest.java
index 4516e9c..af87af0 100644
--- a/core/tests/coretests/src/android/view/InsetsControllerTest.java
+++ b/core/tests/coretests/src/android/view/InsetsControllerTest.java
@@ -1195,6 +1195,23 @@
         });
     }
 
+    @Test
+    public void testAnimatingTypes() throws Exception {
+        prepareControls();
+
+        final int types = navigationBars() | statusBars();
+        InstrumentationRegistry.getInstrumentation().runOnMainSync(() -> {
+            clearInvocations(mTestHost);
+            mController.hide(types);
+            // quickly jump to final state by cancelling it.
+            mController.cancelExistingAnimations();
+        });
+        InstrumentationRegistry.getInstrumentation().waitForIdleSync();
+
+        verify(mTestHost, times(1)).updateAnimatingTypes(eq(types));
+        verify(mTestHost, times(1)).updateAnimatingTypes(eq(0) /* animatingTypes */);
+    }
+
     private void waitUntilNextFrame() throws Exception {
         final CountDownLatch latch = new CountDownLatch(1);
         Choreographer.getMainThreadInstance().postCallback(Choreographer.CALLBACK_COMMIT,
diff --git a/core/tests/coretests/src/android/view/OrientationEventListenerFrameworkTest.java b/core/tests/coretests/src/android/view/OrientationEventListenerFrameworkTest.java
new file mode 100644
index 0000000..5f06a70
--- /dev/null
+++ b/core/tests/coretests/src/android/view/OrientationEventListenerFrameworkTest.java
@@ -0,0 +1,201 @@
+/*
+ * Copyright (C) 2025 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 android.view;
+
+import static com.android.window.flags.Flags.FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING;
+
+import static org.junit.Assert.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+
+import android.annotation.NonNull;
+import android.app.WindowConfiguration;
+import android.content.Context;
+import android.content.res.CompatibilityInfo;
+import android.hardware.Sensor;
+import android.hardware.SensorEvent;
+import android.hardware.SensorEventListener;
+import android.hardware.SensorManager;
+import android.hardware.input.InputSensorInfo;
+import android.platform.test.annotations.DisableFlags;
+import android.platform.test.annotations.EnableFlags;
+import android.platform.test.flag.junit.SetFlagsRule;
+
+import androidx.test.filters.SmallTest;
+import androidx.test.runner.AndroidJUnit4;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.ArgumentCaptor;
+
+import java.util.ArrayList;
+
+/**
+ * Test {@link OrientationEventListener}.
+ *
+ * <p>Build/Install/Run:
+ *  atest FrameworksCoreTests:OrientationEventListenerFrameworkTest
+ */
+@SmallTest
+@RunWith(AndroidJUnit4.class)
+public class OrientationEventListenerFrameworkTest {
+    @Rule
+    public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
+
+    private Context mContext;
+    private SensorManager mSensorManager;
+
+    @Before
+    public void setup() {
+        mContext = mock(Context.class);
+        mSensorManager = mock(SensorManager.class);
+        doReturn(mSensorManager).when(mContext).getSystemService(Context.SENSOR_SERVICE);
+    }
+
+    @After
+    public void tearDown() {
+        // Reset the override rotation for tests that use the default value.
+        CompatibilityInfo.setOverrideDisplayRotation(WindowConfiguration.ROTATION_UNDEFINED);
+    }
+
+    @Test
+    public void testConstructor() {
+        new TestOrientationEventListener(mContext);
+
+        new TestOrientationEventListener(mContext, SensorManager.SENSOR_DELAY_UI);
+    }
+
+    @Test
+    public void testEnableAndDisable() {
+        final TestOrientationEventListener listener = new TestOrientationEventListener(mContext);
+        listener.enable();
+        listener.disable();
+    }
+
+    @Test
+    @EnableFlags(FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING)
+    public void testSensorOrientationUpdate() {
+        final Sensor mockSensor = setupMockAccelerometerSensor();
+        final TestOrientationEventListener listener = new TestOrientationEventListener(mContext);
+
+        listener.enable();
+
+        sendSensorEventWithOrientation270(mockSensor);
+
+        assertEquals(1, listener.mReportedOrientations.size());
+        assertEquals(270, (int) listener.mReportedOrientations.get(0));
+    }
+
+    @Test
+    @EnableFlags(FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING)
+    public void testSensorOrientationUpdate_overriddenDisplayRotationReportedWhenSet() {
+        final Sensor mockSensor = setupMockAccelerometerSensor();
+        final TestOrientationEventListener listener = new TestOrientationEventListener(mContext);
+
+        listener.enable();
+
+        // This should change the reported sensor rotation.
+        CompatibilityInfo.setOverrideDisplayRotation(Surface.ROTATION_180);
+
+        sendSensorEventWithOrientation270(mockSensor);
+
+        assertEquals(1, listener.mReportedOrientations.size());
+        assertEquals(180, (int) listener.mReportedOrientations.get(0));
+    }
+
+    @Test
+    @EnableFlags(FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING)
+    public void testSensorOrientationUpdate_overriddenDisplayRotationIsNegativeFromSensor() {
+        final Sensor mockSensor = setupMockAccelerometerSensor();
+        final TestOrientationEventListener listener = new TestOrientationEventListener(mContext);
+
+        listener.enable();
+
+        // Display rotation is counted in the opposite direction from the sensor orientation, thus
+        // this call should change the reported sensor rotation to 90, as 360 - 270 = 90.
+        CompatibilityInfo.setOverrideDisplayRotation(Surface.ROTATION_270);
+
+        sendSensorEventWithOrientation270(mockSensor);
+
+        assertEquals(1, listener.mReportedOrientations.size());
+        assertEquals(90, (int) listener.mReportedOrientations.get(0));
+    }
+
+    @Test
+    @DisableFlags(FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING)
+    public void testSensorOrientationUpdate_notOverriddenWhenCameraFeatureDisabled() {
+        final Sensor mockSensor = setupMockAccelerometerSensor();
+        final TestOrientationEventListener listener = new TestOrientationEventListener(mContext);
+
+        listener.enable();
+
+        CompatibilityInfo.setOverrideDisplayRotation(Surface.ROTATION_180);
+
+        sendSensorEventWithOrientation270(mockSensor);
+
+        assertEquals(1, listener.mReportedOrientations.size());
+        // Sensor unchanged by override because the feature is disabled.
+        assertEquals(270, (int) listener.mReportedOrientations.get(0));
+    }
+
+    @NonNull
+    private Sensor setupMockAccelerometerSensor() {
+        final Sensor mockSensor = new Sensor(mock(InputSensorInfo.class));
+        doReturn(mockSensor).when(mSensorManager).getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
+        return mockSensor;
+    }
+
+    @NonNull
+    private SensorEventListener getRegisteredEventListener() {
+        // Get the SensorEventListenerImpl that has subscribed in `listener.enable()`.
+        final ArgumentCaptor<SensorEventListener> listenerArgCaptor = ArgumentCaptor
+                .forClass(SensorEventListener.class);
+        verify(mSensorManager).registerListener(listenerArgCaptor.capture(), any(), anyInt());
+        return listenerArgCaptor.getValue();
+    }
+
+    private void sendSensorEventWithOrientation270(@NonNull Sensor sensor) {
+        final SensorEventListener sensorEventListener = getRegisteredEventListener();
+        // Arbitrary values that return orientation 270.
+        final SensorEvent sensorEvent = new SensorEvent(sensor, 1, 1L,
+                new float[]{1.0f, 0.0f, 0.0f});
+        sensorEventListener.onSensorChanged(sensorEvent);
+    }
+
+    private static class TestOrientationEventListener extends OrientationEventListener {
+        final ArrayList<Integer> mReportedOrientations = new ArrayList<>();
+
+        TestOrientationEventListener(Context context) {
+            super(context);
+        }
+
+        TestOrientationEventListener(Context context, int rate) {
+            super(context, rate);
+        }
+
+        @Override
+        public void onOrientationChanged(int orientation) {
+            mReportedOrientations.add(orientation);
+        }
+    }
+}
diff --git a/core/tests/coretests/src/android/view/ViewRootImplTest.java b/core/tests/coretests/src/android/view/ViewRootImplTest.java
index c40137f..f5d1e7a 100644
--- a/core/tests/coretests/src/android/view/ViewRootImplTest.java
+++ b/core/tests/coretests/src/android/view/ViewRootImplTest.java
@@ -1054,7 +1054,7 @@
         ViewRootImpl viewRootImpl = mView.getViewRootImpl();
         sInstrumentation.runOnMainSync(() -> {
             mView.invalidate();
-            viewRootImpl.notifyInsetsAnimationRunningStateChanged(true);
+            viewRootImpl.updateAnimatingTypes(Type.systemBars());
             mView.invalidate();
         });
         sInstrumentation.waitForIdleSync();
diff --git a/core/tests/featureflagtests/OWNERS b/core/tests/featureflagtests/OWNERS
index 2ff4f5a..6784f28 100644
--- a/core/tests/featureflagtests/OWNERS
+++ b/core/tests/featureflagtests/OWNERS
@@ -1,2 +1 @@
-sbasi@google.com
-tmfang@google.com
\ No newline at end of file
+tmfang@google.com
diff --git a/data/etc/OWNERS b/data/etc/OWNERS
index 712042f..1251fce 100644
--- a/data/etc/OWNERS
+++ b/data/etc/OWNERS
@@ -1,6 +1,5 @@
 include /PACKAGE_MANAGER_OWNERS
 
-cbrubaker@google.com
 hackbod@android.com
 hackbod@google.com
 jeffv@google.com
diff --git a/data/keyboards/Vendor_0957_Product_0031.kl b/data/keyboards/Vendor_0957_Product_0031.kl
index b47ee58..dd9fbe5 100644
--- a/data/keyboards/Vendor_0957_Product_0031.kl
+++ b/data/keyboards/Vendor_0957_Product_0031.kl
@@ -15,7 +15,7 @@
 # Key Layout file for Google Reference RCU Remote with customizable button.
 #
 
-key 116   TV_POWER      WAKE
+key 116   POWER         WAKE
 key 217   ASSIST        WAKE
 key 423   MACRO_1       WAKE
 
diff --git a/drm/java/android/drm/OWNERS b/drm/java/android/drm/OWNERS
index 4387100..b65cce7 100644
--- a/drm/java/android/drm/OWNERS
+++ b/drm/java/android/drm/OWNERS
@@ -1,4 +1,3 @@
 # Bug component: 49079
 
-jtinker@google.com
 robertshih@google.com
diff --git a/graphics/java/android/framework_graphics.aconfig b/graphics/java/android/framework_graphics.aconfig
index fdbee3c..8753ad8 100644
--- a/graphics/java/android/framework_graphics.aconfig
+++ b/graphics/java/android/framework_graphics.aconfig
@@ -44,9 +44,9 @@
 }
 
 flag {
-  name: "gradient_drawable_shape_rounded_cap"
+  name: "gradient_drawable_shape_arc_for_rounded_cap"
   is_fixed_read_only: true
-  namespace: "core_graphics"
-  description: "Make GradientDrawable support drawing ring with rounded stroke cap."
+  namespace: "wear_frameworks"
+  description: "Make GradientDrawable support arc shape for drawing ring with rounded stroke cap."
   bug: "380000245"
 }
diff --git a/graphics/java/android/graphics/drawable/GradientDrawable.java b/graphics/java/android/graphics/drawable/GradientDrawable.java
index ff1dc93..3b717fc 100644
--- a/graphics/java/android/graphics/drawable/GradientDrawable.java
+++ b/graphics/java/android/graphics/drawable/GradientDrawable.java
@@ -16,8 +16,8 @@
 
 package android.graphics.drawable;
 
-import static com.android.graphics.flags.Flags.FLAG_GRADIENT_DRAWABLE_SHAPE_ROUNDED_CAP;
-import static com.android.graphics.flags.Flags.gradientDrawableShapeRoundedCap;
+import static com.android.graphics.flags.Flags.FLAG_GRADIENT_DRAWABLE_SHAPE_ARC_FOR_ROUNDED_CAP;
+import static com.android.graphics.flags.Flags.gradientDrawableShapeArcForRoundedCap;
 
 import android.annotation.ColorInt;
 import android.annotation.FlaggedApi;
@@ -132,7 +132,7 @@
     /**
      * Shape is an arc.
      */
-    @FlaggedApi(FLAG_GRADIENT_DRAWABLE_SHAPE_ROUNDED_CAP)
+    @FlaggedApi(FLAG_GRADIENT_DRAWABLE_SHAPE_ARC_FOR_ROUNDED_CAP)
     public static final int ARC = 4;
 
     /** @hide */
@@ -874,7 +874,7 @@
                 break;
             }
             case ARC:
-                if (gradientDrawableShapeRoundedCap()) {
+                if (gradientDrawableShapeArcForRoundedCap()) {
                     // TODO(b/394988176): Consider applying ARC drawing logic to RING shape.
                     float centerX = mRect.centerX();
                     float centerY = mRect.centerY();
@@ -2159,7 +2159,6 @@
         public int mInnerRadius = -1;
         @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P, trackingBug = 124050218)
         public int mThickness = -1;
-        @UnsupportedAppUsage(trackingBug = 380000245)
         @StrokeCap public int mStrokeCap = ROUND;
 
         public boolean mDither = false;
diff --git a/graphics/java/android/graphics/pdf/OWNERS b/graphics/java/android/graphics/pdf/OWNERS
index 057dc0d..24557b4 100644
--- a/graphics/java/android/graphics/pdf/OWNERS
+++ b/graphics/java/android/graphics/pdf/OWNERS
@@ -4,4 +4,3 @@
 djsollen@google.com
 sumir@google.com
 svetoslavganov@android.com
-svetoslavganov@google.com
diff --git a/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitController.java b/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitController.java
index b0fadb0..e141f70 100644
--- a/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitController.java
+++ b/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitController.java
@@ -107,7 +107,6 @@
 import androidx.window.extensions.layout.WindowLayoutComponentImpl;
 
 import com.android.internal.annotations.VisibleForTesting;
-import com.android.window.flags.Flags;
 
 import java.util.ArrayList;
 import java.util.Collections;
@@ -421,9 +420,6 @@
     public void setActivityStackAttributesCalculator(
             @NonNull Function<ActivityStackAttributesCalculatorParams, ActivityStackAttributes>
                     calculator) {
-        if (!Flags.activityEmbeddingOverlayPresentationFlag()) {
-            return;
-        }
         synchronized (mLock) {
             mActivityStackAttributesCalculator = calculator;
         }
@@ -431,9 +427,6 @@
 
     @Override
     public void clearActivityStackAttributesCalculator() {
-        if (!Flags.activityEmbeddingOverlayPresentationFlag()) {
-            return;
-        }
         synchronized (mLock) {
             mActivityStackAttributesCalculator = null;
         }
@@ -623,9 +616,6 @@
     @Override
     public void updateActivityStackAttributes(@NonNull ActivityStack.Token activityStackToken,
                                               @NonNull ActivityStackAttributes attributes) {
-        if (!Flags.activityEmbeddingOverlayPresentationFlag()) {
-            return;
-        }
         Objects.requireNonNull(activityStackToken);
         Objects.requireNonNull(attributes);
 
@@ -652,9 +642,6 @@
     @Nullable
     public ParentContainerInfo getParentContainerInfo(
             @NonNull ActivityStack.Token activityStackToken) {
-        if (!Flags.activityEmbeddingOverlayPresentationFlag()) {
-            return null;
-        }
         Objects.requireNonNull(activityStackToken);
         synchronized (mLock) {
             final TaskFragmentContainer container = getContainer(activityStackToken.getRawToken());
@@ -670,9 +657,6 @@
     @Override
     @Nullable
     public ActivityStack.Token getActivityStackToken(@NonNull String tag) {
-        if (!Flags.activityEmbeddingOverlayPresentationFlag()) {
-            return null;
-        }
         Objects.requireNonNull(tag);
         synchronized (mLock) {
             final TaskFragmentContainer taskFragmentContainer =
@@ -3152,8 +3136,7 @@
                 final TaskFragmentContainer launchedInTaskFragment;
                 if (launchingActivity != null) {
                     final String overlayTag = options.getString(KEY_OVERLAY_TAG);
-                    if (Flags.activityEmbeddingOverlayPresentationFlag()
-                            && overlayTag != null) {
+                    if (overlayTag != null) {
                         launchedInTaskFragment = createOrUpdateOverlayTaskFragmentIfNeeded(wct,
                                 options, intent, launchingActivity);
                     } else {
diff --git a/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitPresenter.java b/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitPresenter.java
index 7ab9e2e..f2c1115 100644
--- a/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitPresenter.java
+++ b/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitPresenter.java
@@ -62,7 +62,6 @@
 
 import com.android.internal.R;
 import com.android.internal.annotations.VisibleForTesting;
-import com.android.window.flags.Flags;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -465,9 +464,6 @@
     void setTaskFragmentIsolatedNavigation(@NonNull WindowContainerTransaction wct,
                                            @NonNull TaskFragmentContainer container,
                                            boolean isolatedNavigationEnabled) {
-        if (!Flags.activityEmbeddingOverlayPresentationFlag() && container.isOverlay()) {
-            return;
-        }
         if (container.isIsolatedNavigationEnabled() == isolatedNavigationEnabled) {
             return;
         }
@@ -488,9 +484,6 @@
     void setTaskFragmentPinned(@NonNull WindowContainerTransaction wct,
                                @NonNull TaskFragmentContainer container,
                                boolean pinned) {
-        if (!Flags.activityEmbeddingOverlayPresentationFlag() && container.isOverlay()) {
-            return;
-        }
         if (container.isPinned() == pinned) {
             return;
         }
@@ -692,7 +685,7 @@
         final TaskContainer taskContainer = container.getTaskContainer();
         final int windowingMode = taskContainer.getWindowingModeForTaskFragment(relativeBounds);
         updateTaskFragmentWindowingModeIfRegistered(wct, container, windowingMode);
-        if (container.isOverlay() && isOverlayTransitionSupported()) {
+        if (container.isOverlay()) {
             // Use the overlay transition for the overlay container if it's supported.
             final TaskFragmentAnimationParams params = createOverlayAnimationParams(relativeBounds,
                     taskContainer.getBounds(), container);
@@ -704,10 +697,6 @@
         setTaskFragmentDimOnTask(wct, fragmentToken, dimOnTask);
     }
 
-    private static boolean isOverlayTransitionSupported() {
-        return Flags.activityEmbeddingOverlayPresentationFlag();
-    }
-
     @NonNull
     private static TaskFragmentAnimationParams createOverlayAnimationParams(
             @NonNull Rect relativeBounds, @NonNull Rect parentContainerBounds,
diff --git a/libs/WindowManager/Jetpack/tests/unittest/src/androidx/window/extensions/embedding/OverlayPresentationTest.java b/libs/WindowManager/Jetpack/tests/unittest/src/androidx/window/extensions/embedding/OverlayPresentationTest.java
index 5b97e7e..4334a9c 100644
--- a/libs/WindowManager/Jetpack/tests/unittest/src/androidx/window/extensions/embedding/OverlayPresentationTest.java
+++ b/libs/WindowManager/Jetpack/tests/unittest/src/androidx/window/extensions/embedding/OverlayPresentationTest.java
@@ -58,7 +58,6 @@
 import static org.mockito.Mockito.never;
 
 import android.app.Activity;
-import android.app.ActivityOptions;
 import android.content.ComponentName;
 import android.content.Intent;
 import android.content.pm.ActivityInfo;
@@ -70,7 +69,6 @@
 import android.os.Handler;
 import android.os.IBinder;
 import android.platform.test.annotations.Presubmit;
-import android.platform.test.flag.junit.SetFlagsRule;
 import android.util.Size;
 import android.window.TaskFragmentAnimationParams;
 import android.window.TaskFragmentInfo;
@@ -85,8 +83,6 @@
 import androidx.window.extensions.layout.WindowLayoutComponentImpl;
 import androidx.window.extensions.layout.WindowLayoutInfo;
 
-import com.android.window.flags.Flags;
-
 import com.google.testing.junit.testparameterinjector.TestParameter;
 import com.google.testing.junit.testparameterinjector.TestParameterInjector;
 
@@ -121,9 +117,6 @@
     private static final Intent PLACEHOLDER_INTENT = new Intent().setComponent(
             new ComponentName("test", "placeholder"));
 
-    @Rule
-    public final SetFlagsRule mSetFlagRule = new SetFlagsRule();
-
     private SplitController.ActivityStartMonitor mMonitor;
 
     private Intent mIntent;
@@ -168,8 +161,6 @@
         doReturn(activityConfig).when(mActivityResources).getConfiguration();
         doReturn(mHandler).when(mSplitController).getHandler();
         mActivity = createMockActivity();
-
-        mSetFlagRule.enableFlags(Flags.FLAG_ACTIVITY_EMBEDDING_OVERLAY_PRESENTATION_FLAG);
     }
 
     /** Creates a mock activity in the organizer process. */
@@ -187,44 +178,6 @@
     }
 
     @Test
-    public void testStartActivity_overlayFeatureDisabled_notInvokeCreateOverlayContainer() {
-        mSetFlagRule.disableFlags(Flags.FLAG_ACTIVITY_EMBEDDING_OVERLAY_PRESENTATION_FLAG);
-
-        final Bundle optionsBundle = ActivityOptions.makeBasic().toBundle();
-        optionsBundle.putString(KEY_OVERLAY_TAG, "test");
-        mMonitor.onStartActivity(mActivity, mIntent, optionsBundle);
-
-        verify(mSplitController, never()).createOrUpdateOverlayTaskFragmentIfNeeded(any(), any(),
-                any(), any());
-    }
-
-    @Test
-    public void testSetIsolatedNavigation_overlayFeatureDisabled_earlyReturn() {
-        mSetFlagRule.disableFlags(Flags.FLAG_ACTIVITY_EMBEDDING_OVERLAY_PRESENTATION_FLAG);
-
-        final TaskFragmentContainer container = createTestOverlayContainer(TASK_ID, "test");
-
-        mSplitPresenter.setTaskFragmentIsolatedNavigation(mTransaction, container,
-                !container.isIsolatedNavigationEnabled());
-
-        verify(mSplitPresenter, never()).setTaskFragmentIsolatedNavigation(any(),
-                any(IBinder.class), anyBoolean());
-    }
-
-    @Test
-    public void testSetPinned_overlayFeatureDisabled_earlyReturn() {
-        mSetFlagRule.disableFlags(Flags.FLAG_ACTIVITY_EMBEDDING_OVERLAY_PRESENTATION_FLAG);
-
-        final TaskFragmentContainer container = createTestOverlayContainer(TASK_ID, "test");
-
-        mSplitPresenter.setTaskFragmentPinned(mTransaction, container,
-                !container.isPinned());
-
-        verify(mSplitPresenter, never()).setTaskFragmentPinned(any(), any(IBinder.class),
-                anyBoolean());
-    }
-
-    @Test
     public void testGetAllNonFinishingOverlayContainers() {
         assertThat(mSplitController.getAllNonFinishingOverlayContainers()).isEmpty();
 
diff --git a/libs/WindowManager/Shell/multivalentTests/src/com/android/wm/shell/bubbles/BubbleTaskViewListenerTest.kt b/libs/WindowManager/Shell/multivalentTests/src/com/android/wm/shell/bubbles/BubbleTaskViewListenerTest.kt
index 3aefcd5..9087da3 100644
--- a/libs/WindowManager/Shell/multivalentTests/src/com/android/wm/shell/bubbles/BubbleTaskViewListenerTest.kt
+++ b/libs/WindowManager/Shell/multivalentTests/src/com/android/wm/shell/bubbles/BubbleTaskViewListenerTest.kt
@@ -552,7 +552,9 @@
 
     private fun createAppBubble(usePendingIntent: Boolean = false): Bubble {
         val target = Intent(context, TestActivity::class.java)
+        val component = ComponentName(context, TestActivity::class.java)
         target.setPackage(context.packageName)
+        target.setComponent(component)
         if (usePendingIntent) {
             // Robolectric doesn't seem to play nice with PendingIntents, have to mock it.
             val pendingIntent = mock<PendingIntent>()
diff --git a/libs/WindowManager/Shell/multivalentTests/src/com/android/wm/shell/bubbles/bar/BubbleBarLayerViewTest.kt b/libs/WindowManager/Shell/multivalentTests/src/com/android/wm/shell/bubbles/bar/BubbleBarLayerViewTest.kt
index 7b583137..14c152102 100644
--- a/libs/WindowManager/Shell/multivalentTests/src/com/android/wm/shell/bubbles/bar/BubbleBarLayerViewTest.kt
+++ b/libs/WindowManager/Shell/multivalentTests/src/com/android/wm/shell/bubbles/bar/BubbleBarLayerViewTest.kt
@@ -19,7 +19,9 @@
 import android.animation.AnimatorTestRule
 import android.content.Context
 import android.content.pm.LauncherApps
+import android.graphics.Insets
 import android.graphics.PointF
+import android.graphics.Rect
 import android.os.Handler
 import android.os.UserManager
 import android.view.IWindowManager
@@ -61,6 +63,7 @@
 import com.android.wm.shell.shared.TransactionPool
 import com.android.wm.shell.shared.animation.PhysicsAnimatorTestUtils
 import com.android.wm.shell.shared.bubbles.BubbleBarLocation
+import com.android.wm.shell.shared.bubbles.DeviceConfig
 import com.android.wm.shell.sysui.ShellCommandHandler
 import com.android.wm.shell.sysui.ShellController
 import com.android.wm.shell.sysui.ShellInit
@@ -80,6 +83,10 @@
 @SmallTest
 @RunWith(AndroidJUnit4::class)
 class BubbleBarLayerViewTest {
+    companion object {
+        const val SCREEN_WIDTH = 2000
+        const val SCREEN_HEIGHT = 1000
+    }
 
     @get:Rule val animatorTestRule: AnimatorTestRule = AnimatorTestRule(this)
 
@@ -111,6 +118,16 @@
 
         bubblePositioner = BubblePositioner(context, windowManager)
         bubblePositioner.setShowingInBubbleBar(true)
+        val deviceConfig =
+            DeviceConfig(
+                windowBounds = Rect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT),
+                isLargeScreen = true,
+                isSmallTablet = false,
+                isLandscape = true,
+                isRtl = false,
+                insets = Insets.of(10, 20, 30, 40)
+            )
+        bubblePositioner.update(deviceConfig)
 
         testBubblesList = mutableListOf()
         val bubbleData = mock<BubbleData>()
@@ -313,6 +330,48 @@
         assertThat(uiEventLoggerFake.logs[0]).hasBubbleInfo(bubble)
     }
 
+    @Test
+    fun testUpdateExpandedView_updateLocation() {
+        bubblePositioner.bubbleBarLocation = BubbleBarLocation.RIGHT
+        val bubble = createBubble("first")
+
+        getInstrumentation().runOnMainSync {
+            bubbleBarLayerView.showExpandedView(bubble)
+        }
+        waitForExpandedViewAnimation()
+
+        val previousX = bubble.bubbleBarExpandedView!!.x
+
+        bubblePositioner.bubbleBarLocation = BubbleBarLocation.LEFT
+        getInstrumentation().runOnMainSync {
+            bubbleBarLayerView.updateExpandedView()
+        }
+
+        assertThat(bubble.bubbleBarExpandedView!!.x).isNotEqualTo(previousX)
+    }
+
+    @Test
+    fun testUpdatedExpandedView_updateLocation_skipWhileAnimating() {
+        bubblePositioner.bubbleBarLocation = BubbleBarLocation.RIGHT
+        val bubble = createBubble("first")
+
+        getInstrumentation().runOnMainSync {
+            bubbleBarLayerView.showExpandedView(bubble)
+        }
+        waitForExpandedViewAnimation()
+
+        val previousX = bubble.bubbleBarExpandedView!!.x
+        bubble.bubbleBarExpandedView!!.isAnimating = true
+
+        bubblePositioner.bubbleBarLocation = BubbleBarLocation.LEFT
+        getInstrumentation().runOnMainSync {
+            bubbleBarLayerView.updateExpandedView()
+        }
+
+        // Expanded view is not updated while animating
+        assertThat(bubble.bubbleBarExpandedView!!.x).isEqualTo(previousX)
+    }
+
     private fun createBubble(key: String): Bubble {
         val bubbleTaskView = FakeBubbleTaskViewFactory(context, mainExecutor).create()
         val bubbleBarExpandedView =
diff --git a/libs/WindowManager/Shell/res/layout/caption_window_decor.xml b/libs/WindowManager/Shell/res/layout/caption_window_decor.xml
index f3d2198..819d4ab 100644
--- a/libs/WindowManager/Shell/res/layout/caption_window_decor.xml
+++ b/libs/WindowManager/Shell/res/layout/caption_window_decor.xml
@@ -37,20 +37,17 @@
         style="@style/CaptionButtonStyle"
         android:id="@+id/minimize_window"
         android:layout_gravity="center_vertical|end"
-        android:contentDescription="@string/minimize_button_text"
         android:background="@drawable/decor_minimize_button_dark"
         android:duplicateParentState="true"/>
     <Button
         style="@style/CaptionButtonStyle"
         android:id="@+id/maximize_window"
         android:layout_gravity="center_vertical|end"
-        android:contentDescription="@string/maximize_button_text"
         android:background="@drawable/decor_maximize_button_dark"
         android:duplicateParentState="true"/>
     <Button
         style="@style/CaptionButtonStyle"
         android:id="@+id/close_window"
-        android:contentDescription="@string/close_button_text"
         android:background="@drawable/decor_close_button_dark"
         android:duplicateParentState="true"/>
 </com.android.wm.shell.windowdecor.WindowDecorLinearLayout>
\ No newline at end of file
diff --git a/libs/WindowManager/Shell/res/layout/desktop_mode_window_decor_handle_menu_action_button.xml b/libs/WindowManager/Shell/res/layout/desktop_mode_window_decor_handle_menu_action_button.xml
index 379f4e9..0163c01 100644
--- a/libs/WindowManager/Shell/res/layout/desktop_mode_window_decor_handle_menu_action_button.xml
+++ b/libs/WindowManager/Shell/res/layout/desktop_mode_window_decor_handle_menu_action_button.xml
@@ -29,7 +29,7 @@
 
     <ImageView
         android:id="@+id/image"
-        android:contentDescription="@+id/label"
+        android:importantForAccessibility="no"
         style="@style/DesktopModeHandleMenuActionButtonImage"/>
 
     <com.android.wm.shell.windowdecor.MarqueedTextView
diff --git a/libs/WindowManager/Shell/res/layout/desktop_mode_window_decor_maximize_menu.xml b/libs/WindowManager/Shell/res/layout/desktop_mode_window_decor_maximize_menu.xml
index d50a14c..c2aa146 100644
--- a/libs/WindowManager/Shell/res/layout/desktop_mode_window_decor_maximize_menu.xml
+++ b/libs/WindowManager/Shell/res/layout/desktop_mode_window_decor_maximize_menu.xml
@@ -79,7 +79,7 @@
             android:layout_marginEnd="4dp">
 
             <Button
-                android:layout_width="94dp"
+                android:layout_width="108dp"
                 android:layout_height="60dp"
                 android:id="@+id/maximize_menu_size_toggle_button"
                 style="?android:attr/buttonBarButtonStyle"
@@ -126,7 +126,7 @@
                 <Button
                     android:id="@+id/maximize_menu_snap_left_button"
                     style="?android:attr/buttonBarButtonStyle"
-                    android:layout_width="41dp"
+                    android:layout_width="48dp"
                     android:layout_height="@dimen/desktop_mode_maximize_menu_button_height"
                     android:layout_marginEnd="4dp"
                     android:background="@drawable/desktop_mode_maximize_menu_button_background"
@@ -137,7 +137,7 @@
                 <Button
                     android:id="@+id/maximize_menu_snap_right_button"
                     style="?android:attr/buttonBarButtonStyle"
-                    android:layout_width="41dp"
+                    android:layout_width="48dp"
                     android:layout_height="@dimen/desktop_mode_maximize_menu_button_height"
                     android:background="@drawable/desktop_mode_maximize_menu_button_background"
                     android:importantForAccessibility="yes"
diff --git a/libs/WindowManager/Shell/res/layout/open_by_default_settings_dialog.xml b/libs/WindowManager/Shell/res/layout/open_by_default_settings_dialog.xml
index f6256e6..ed5b339 100644
--- a/libs/WindowManager/Shell/res/layout/open_by_default_settings_dialog.xml
+++ b/libs/WindowManager/Shell/res/layout/open_by_default_settings_dialog.xml
@@ -72,7 +72,7 @@
                     android:layout_height="wrap_content"
                     android:textSize="12sp"
                     android:textFontWeight="400"
-                    android:lineHeight="16dp"
+                    android:lineHeight="28dp"
                     android:layout_gravity="center_horizontal"
                     android:layout_marginBottom="16dp"
                     android:textColor="@androidprv:color/materialColorOnSurfaceVariant"
@@ -113,12 +113,13 @@
                 <Button
                     android:id="@+id/open_by_default_settings_dialog_confirm_button"
                     android:layout_width="wrap_content"
-                    android:layout_height="36dp"
+                    android:layout_height="wrap_content"
+                    android:minHeight="48dp"
                     android:text="@string/open_by_default_dialog_dismiss_button_text"
                     android:layout_gravity="end"
                     android:layout_marginHorizontal="24dp"
-                    android:layout_marginTop="32dp"
-                    android:layout_marginBottom="24dp"
+                    android:layout_marginTop="26dp"
+                    android:layout_marginBottom="18dp"
                     android:textSize="14sp"
                     android:textFontWeight="500"
                     android:textColor="@androidprv:color/materialColorOnPrimary"
diff --git a/libs/WindowManager/Shell/res/values-af/strings.xml b/libs/WindowManager/Shell/res/values-af/strings.xml
index 0f42645..4dffce5 100644
--- a/libs/WindowManager/Shell/res/values-af/strings.xml
+++ b/libs/WindowManager/Shell/res/values-af/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Links 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Links 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Volskerm regs"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Ruil apps om"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Volskerm bo"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Bo 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Bo 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Herbegin"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Moenie weer wys nie"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Dubbeltik om\nhierdie app te skuif"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maksimeer"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Maak klein"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Maak toe"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Terug"</string>
     <string name="handle_text" msgid="4419667835599523257">"Apphandvatsel"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Appikoon"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Verander grootte van linkerkantse venster"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Verander grootte van regterkantse venster"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maksimeer of stel venstergrootte terug"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maksimeer of stel venstergrootte terug"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimeer appvenster"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Maak By Verstek Oop-instellings"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Kies hoe om webskakels vir hierdie app oop te maak"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"In die app"</string>
diff --git a/libs/WindowManager/Shell/res/values-am/strings.xml b/libs/WindowManager/Shell/res/values-am/strings.xml
index be02f43..0881e77 100644
--- a/libs/WindowManager/Shell/res/values-am/strings.xml
+++ b/libs/WindowManager/Shell/res/values-am/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"ግራ 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"ግራ 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"የቀኝ ሙሉ ማያ ገፅ"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"መተግበሪያዎችን ይቀያይሩ"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"የላይ ሙሉ ማያ ገፅ"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"ከላይ 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"ከላይ 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"እንደገና ያስጀምሩ"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"ዳግም አታሳይ"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"ይህን መተግበሪያ\nለማንቀሳቀስ ሁለቴ መታ ያድርጉ"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"አስፋ"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"አሳንስ"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"ዝጋ"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"ተመለስ"</string>
     <string name="handle_text" msgid="4419667835599523257">"የመተግበሪያ መያዣ"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"የመተግበሪያ አዶ"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"መስኮትን ወደ ግራ መጠን ቀይር"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"መስኮትን ወደ ቀኝ መጠን ቀይር"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"የመስኮት መጠንን አሳድግ ወይም ወደነበረበት መልስ"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"የመስኮት መጠንን አሳድግ ወይም ወደነበረበት መልስ"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"የመተግበሪያ መስኮትን አሳንስ"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"በነባሪ ቅንብሮች ክፈት"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"ለዚህ የድር መተግበሪያ አገናኙን እንዴት እንደሚከፍቱ ይምረጡ"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"በመተግበሪያው ውስጥ"</string>
diff --git a/libs/WindowManager/Shell/res/values-ar/strings.xml b/libs/WindowManager/Shell/res/values-ar/strings.xml
index 1680922..9cc49aa 100644
--- a/libs/WindowManager/Shell/res/values-ar/strings.xml
+++ b/libs/WindowManager/Shell/res/values-ar/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"ضبط حجم النافذة اليسرى ليكون ٥٠%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"ضبط حجم النافذة اليسرى ليكون ٣٠%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"عرض النافذة اليمنى بملء الشاشة"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"تبديل التطبيقات"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"عرض النافذة العلوية بملء الشاشة"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"ضبط حجم النافذة العلوية ليكون ٧٠%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"ضبط حجم النافذة العلوية ليكون ٥٠%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"إعادة التشغيل"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"عدم عرض مربّع حوار التأكيد مجددًا"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"انقر مرّتَين لنقل\nهذا التطبيق."</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"تكبير"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"تصغير"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"إغلاق"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"رجوع"</string>
     <string name="handle_text" msgid="4419667835599523257">"مقبض التطبيق"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"رمز التطبيق"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"تغيير حجم النافذة بمحاذاتها إلى اليمين"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"تغيير حجم النافذة بمحاذاتها إلى اليسار"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"تكبير حجم النافذة أو استعادته"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"تكبير حجم النافذة أو استعادته"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"تصغير نافذة التطبيق"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"إعدادات الفتح تلقائيًا"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"اختيار طريقة فتح روابط الويب لهذا التطبيق"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"في التطبيق"</string>
diff --git a/libs/WindowManager/Shell/res/values-as/strings.xml b/libs/WindowManager/Shell/res/values-as/strings.xml
index 0bc4a0a..c59753c 100644
--- a/libs/WindowManager/Shell/res/values-as/strings.xml
+++ b/libs/WindowManager/Shell/res/values-as/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"বাওঁফালৰ স্ক্ৰীনখন ৫০% কৰক"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"বাওঁফালৰ স্ক্ৰীনখন ৩০% কৰক"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"সোঁফালৰ স্ক্ৰীনখন সম্পূৰ্ণ স্ক্ৰীন কৰক"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"এপ্‌সমূহ সলনাসলনি কৰক"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"শীৰ্ষ স্ক্ৰীনখন সম্পূৰ্ণ স্ক্ৰীন কৰক"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"শীর্ষ স্ক্ৰীনখন ৭০% কৰক"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"শীর্ষ স্ক্ৰীনখন ৫০% কৰক"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"ৰিষ্টাৰ্ট কৰক"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"পুনৰাই নেদেখুৱাব"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"এই এপ্‌টো\nস্থানান্তৰ কৰিবলৈ দুবাৰ টিপক"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"সৰ্বাধিক মাত্ৰালৈ বঢ়াওক"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"মিনিমাইজ কৰক"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"বন্ধ কৰক"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"উভতি যাওক"</string>
     <string name="handle_text" msgid="4419667835599523257">"এপৰ হেণ্ডেল"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"এপৰ চিহ্ন"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"সোঁফাললৈ ৱিণ্ড’ৰ আকাৰ সলনি কৰক"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"বাওঁফাললৈ ৱিণ্ড’ৰ আকাৰ সলনি কৰক"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"ৱিণ্ড’ৰ আকাৰ মেক্সিমাইজ বা পুনঃস্থাপন কৰক"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"ৱিণ্ড’ৰ আকাৰ মেক্সিমাইজ বা পুনঃস্থাপন কৰক"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"এপ্‌ ৱিণ্ড’ মিনিমাইজ কৰক"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"ডিফ’ল্ট ছেটিং খোলক"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"এই এপ্‌টোৰ বাবে কিদৰে ৱেব লিংক খুলিব পাৰি সেয়া বাছনি কৰক"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"এপ্‌টোত"</string>
diff --git a/libs/WindowManager/Shell/res/values-az/strings.xml b/libs/WindowManager/Shell/res/values-az/strings.xml
index 2ccae4b..63e610b 100644
--- a/libs/WindowManager/Shell/res/values-az/strings.xml
+++ b/libs/WindowManager/Shell/res/values-az/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Sol 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Sol 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Sağ tam ekran"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Tətbiqləri dəyişin"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Yuxarı tam ekran"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Yuxarı 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Yuxarı 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Yenidən başladın"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Yenidən göstərməyin"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Tətbiqi köçürmək üçün\niki dəfə toxunun"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Böyüdün"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Kiçildin"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Bağlayın"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Geriyə"</string>
     <string name="handle_text" msgid="4419667835599523257">"Tətbiq ləqəbi"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Tətbiq ikonası"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Pəncərə ölçüsünü sola dəyişin"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Pəncərə ölçüsünü sağa dəyişin"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Pəncərə ölçüsünü artırın və ya bərpa edin"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Pəncərə ölçüsünü artırın və ya bərpa edin"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Tətbiq pəncərəsini kiçildin"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Defolt ayarlarla açın"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Bu tətbiq üçün veb-linklərin necə açılacağını seçin"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Tətbiqdə"</string>
diff --git a/libs/WindowManager/Shell/res/values-b+sr+Latn/strings.xml b/libs/WindowManager/Shell/res/values-b+sr+Latn/strings.xml
index b79b860..7cb6f87 100644
--- a/libs/WindowManager/Shell/res/values-b+sr+Latn/strings.xml
+++ b/libs/WindowManager/Shell/res/values-b+sr+Latn/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Levi ekran 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Levi ekran 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Režim celog ekrana za donji ekran"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Zamenite mesta aplikacijama"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Režim celog ekrana za gornji ekran"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Gornji ekran 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Gornji ekran 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Restartuj"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Ne prikazuj ponovo"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Dvaput dodirnite da biste\npremestili ovu aplikaciju"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Uvećajte"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Umanjite"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Zatvorite"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Nazad"</string>
     <string name="handle_text" msgid="4419667835599523257">"Identifikator aplikacije"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Ikona aplikacije"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Promenite veličinu prozora nalevo"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Promenite veličinu prozora nadesno"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Uvećajte ili vratite veličinu prozora"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Uvećajte ili vratite veličinu prozora"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Umanjite prozor aplikacije"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Podešavanje Podrazumevano otvaraj"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Odaberite način otvaranja veb-linkova za ovu aplikaciju"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"U aplikaciji"</string>
diff --git a/libs/WindowManager/Shell/res/values-be/strings.xml b/libs/WindowManager/Shell/res/values-be/strings.xml
index d26c37b..4f3da2b 100644
--- a/libs/WindowManager/Shell/res/values-be/strings.xml
+++ b/libs/WindowManager/Shell/res/values-be/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Левы экран – 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Левы экран – 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Правы экран – поўнаэкранны рэжым"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Пераключыць праграмы"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Верхні экран – поўнаэкранны рэжым"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Верхні экран – 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Верхні экран – 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Перазапусціць"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Больш не паказваць"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Каб перамясціць праграму,\nнацісніце двойчы"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Разгарнуць"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Згарнуць"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Закрыць"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Назад"</string>
     <string name="handle_text" msgid="4419667835599523257">"Маркер праграмы"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Значок праграмы"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Змяніць памер акна і перамясціць да левага краю"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Змяніць памер акна і перамясціць да правага краю"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Разгарнуць акно ці аднавіць яго памер"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Разгарнуць акно ці аднавіць яго памер"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Згарнуць акно праграмы"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Налады параметра \"Адкрываць стандартна\""</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Выберыце, як гэта праграма будзе адкрываць вэб-спасылкі"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"У праграме"</string>
diff --git a/libs/WindowManager/Shell/res/values-bg/strings.xml b/libs/WindowManager/Shell/res/values-bg/strings.xml
index 9cc9db8..3f867a22 100644
--- a/libs/WindowManager/Shell/res/values-bg/strings.xml
+++ b/libs/WindowManager/Shell/res/values-bg/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Ляв екран: 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Ляв екран: 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Десен екран: Показване на цял екран"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Размяна на приложенията"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Горен екран: Показване на цял екран"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Горен екран: 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Горен екран: 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Рестартиране"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Да не се показва отново"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Докоснете двукратно, за да\nпреместите това приложение"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Увеличаване"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Намаляване"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Затваряне"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Назад"</string>
     <string name="handle_text" msgid="4419667835599523257">"Манипулатор за приложението"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Икона на приложението"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Преоразмеряване на прозореца наляво"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Преоразмеряване на прозореца надясно"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Увеличаване или възстановяване на размера на прозореца"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Увеличаване или възстановяване на размера на прозореца"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Намаляване на прозореца на приложението"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Отваряне на настройките по подразбиране"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Изберете как да се отварят уеб връзките за това приложение"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"В приложението"</string>
diff --git a/libs/WindowManager/Shell/res/values-bn/strings.xml b/libs/WindowManager/Shell/res/values-bn/strings.xml
index c1264d4..3967d4b 100644
--- a/libs/WindowManager/Shell/res/values-bn/strings.xml
+++ b/libs/WindowManager/Shell/res/values-bn/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"৫০% বাকি আছে"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"৩০% বাকি আছে"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"ডান দিকের অংশ নিয়ে পূর্ণ স্ক্রিন"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"অ্যাপ পাল্টান"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"উপর দিকের অংশ নিয়ে পূর্ণ স্ক্রিন"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"শীর্ষ ৭০%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"শীর্ষ ৫০%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"রিস্টার্ট করুন"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"আর দেখতে চাই না"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"এই অ্যাপ সরাতে\nডবল ট্যাপ করুন"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"বড় করুন"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"ছোট করুন"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"বন্ধ করুন"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"ফিরে যান"</string>
     <string name="handle_text" msgid="4419667835599523257">"অ্যাপের হ্যান্ডেল"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"অ্যাপ আইকন"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"বাঁদিকে উইন্ডো রিসাইজ করুন"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"ডানদিকে উইন্ডো রিসাইজ করুন"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"উইন্ডো সাইজ বড় বা রিস্টোর করুন"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"উইন্ডো সাইজ বড় বা রিস্টোর করুন"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"অ্যাপ উইন্ডো ছোট করুন"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"ডিফল্ট হিসেবে থাকা সেটিংস খুলুন"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"এই অ্যাপের জন্য কীভাবে ওয়েব লিঙ্ক খুলবেন তা বেছে নিন"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"অ্যাপের মধ্যে"</string>
diff --git a/libs/WindowManager/Shell/res/values-bs/strings.xml b/libs/WindowManager/Shell/res/values-bs/strings.xml
index 7c912b6..6b59d91 100644
--- a/libs/WindowManager/Shell/res/values-bs/strings.xml
+++ b/libs/WindowManager/Shell/res/values-bs/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Lijevo 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Lijevo 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Desno cijeli ekran"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Zamjena aplikacija"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Gore cijeli ekran"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Gore 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Gore 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Ponovo pokreni"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Ne prikazuj ponovo"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Dodirnite dvaput da\npomjerite aplikaciju"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maksimiziranje"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimiziranje"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Zatvaranje"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Nazad"</string>
     <string name="handle_text" msgid="4419667835599523257">"Ručica aplikacije"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Ikona aplikacije"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Promjena veličine prozora i poravnanje lijevo"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Promjena veličine prozora i poravnanje desno"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maksimiziranje ili vraćanje veličine prozora"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maksimiziranje ili vraćanje veličine prozora"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimiziranje prozora aplikacije"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Otvaranje prema zadanim postavkama"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Odaberite način otvaranja web linkova za ovu aplikaciju"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"U aplikaciji"</string>
diff --git a/libs/WindowManager/Shell/res/values-ca/strings.xml b/libs/WindowManager/Shell/res/values-ca/strings.xml
index 2c2a177..955e5cc 100644
--- a/libs/WindowManager/Shell/res/values-ca/strings.xml
+++ b/libs/WindowManager/Shell/res/values-ca/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Pantalla esquerra al 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Pantalla esquerra al 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Pantalla dreta completa"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Canvia les aplicacions"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Pantalla superior completa"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Pantalla superior al 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Pantalla superior al 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Reinicia"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"No ho tornis a mostrar"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Fes doble toc per\nmoure aquesta aplicació"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maximitza"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimitza"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Tanca"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Enrere"</string>
     <string name="handle_text" msgid="4419667835599523257">"Identificador de l\'aplicació"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Icona de l\'aplicació"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Canvia la mida de la finestra a l\'esquerra"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Canvia la mida de la finestra a la dreta"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maximitza o restaura la mida de la finestra"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maximitza o restaura la mida de la finestra"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimitza la finestra de l\'aplicació"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Configuració d\'obertura predeterminada"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Tria com vols obrir els enllaços web per a aquesta aplicació"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"A l\'aplicació"</string>
diff --git a/libs/WindowManager/Shell/res/values-cs/strings.xml b/libs/WindowManager/Shell/res/values-cs/strings.xml
index e47d1f6..673f7fc 100644
--- a/libs/WindowManager/Shell/res/values-cs/strings.xml
+++ b/libs/WindowManager/Shell/res/values-cs/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"50 % vlevo"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"30 % vlevo"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Pravá část na celou obrazovku"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Zaměnit aplikace"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Horní část na celou obrazovku"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"70 % nahoře"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"50 % nahoře"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Restartovat"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Tuto zprávu příště nezobrazovat"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Dvojitým klepnutím\npřesunete aplikaci"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maximalizovat"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimalizovat"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Zavřít"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Zpět"</string>
     <string name="handle_text" msgid="4419667835599523257">"Popisovač aplikace"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Ikona aplikace"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Přichytit okno vlevo"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Přichytit okno vpravo"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maximalizovat nebo obnovit velikost okna"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maximalizovat nebo obnovit velikost okna"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimalizovat okno aplikace"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Otevírat podle výchozího nastavení"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Určete, jak se v této aplikaci mají otevírat webové odkazy"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"V aplikaci"</string>
diff --git a/libs/WindowManager/Shell/res/values-da/strings.xml b/libs/WindowManager/Shell/res/values-da/strings.xml
index f5656d5..635df33 100644
--- a/libs/WindowManager/Shell/res/values-da/strings.xml
+++ b/libs/WindowManager/Shell/res/values-da/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Venstre 50 %"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Venstre 30 %"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Vis højre del i fuld skærm"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Byt apps"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Vis øverste del i fuld skærm"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Øverste 70 %"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Øverste 50 %"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Genstart"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Vis ikke igen"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Tryk to gange\nfor at flytte appen"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maksimér"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimer"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Luk"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Tilbage"</string>
     <string name="handle_text" msgid="4419667835599523257">"Apphåndtag"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Appikon"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Juster størrelsen på vinduet til venstre"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Juster størrelsen på vinduet til højre"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maksimer eller gendan vinduesstørrelse"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maksimer eller gendan vinduesstørrelse"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimer appvindue"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Indstillinger for automatisk åbning"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Vælg, hvordan denne app skal åben weblinks"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"I appen"</string>
diff --git a/libs/WindowManager/Shell/res/values-de/strings.xml b/libs/WindowManager/Shell/res/values-de/strings.xml
index 3762b4b..5be8b0b 100644
--- a/libs/WindowManager/Shell/res/values-de/strings.xml
+++ b/libs/WindowManager/Shell/res/values-de/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"50 % links"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"30 % links"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Vollbild rechts"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Apps austauschen"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Vollbild oben"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"70 % oben"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"50 % oben"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Neu starten"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Nicht mehr anzeigen"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Zum Verschieben\ndoppeltippen"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maximieren"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimieren"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Schließen"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Zurück"</string>
     <string name="handle_text" msgid="4419667835599523257">"App-Ziehpunkt"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"App-Symbol"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Fenstergröße nach links anpassen"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Fenstergröße nach rechts anpassen"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Fenstergröße maximieren oder wiederherstellen"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Fenstergröße maximieren oder wiederherstellen"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"App-Fenster minimieren"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Einstellungen für die Option „Standardmäßig öffnen“"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Festlegen, wie Weblinks für diese App geöffnet werden"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"In der App"</string>
diff --git a/libs/WindowManager/Shell/res/values-el/strings.xml b/libs/WindowManager/Shell/res/values-el/strings.xml
index 8e715d5..bd3cf05 100644
--- a/libs/WindowManager/Shell/res/values-el/strings.xml
+++ b/libs/WindowManager/Shell/res/values-el/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Αριστερή 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Αριστερή 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Δεξιά πλήρης οθόνη"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Εναλλαγή εφαρμογών"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Πάνω πλήρης οθόνη"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Πάνω 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Πάνω 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Επανεκκίνηση"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Να μην εμφανιστεί ξανά"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Πατήστε δύο φορές για\nμετακίνηση αυτής της εφαρμογής"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Μεγιστοποίηση"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Ελαχιστοποίηση"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Κλείσιμο"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Πίσω"</string>
     <string name="handle_text" msgid="4419667835599523257">"Λαβή εφαρμογής"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Εικονίδιο εφαρμογής"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Αλλαγή μεγέθους παραθύρου προς τα αριστερά"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Αλλαγή μεγέθους παραθύρου προς τα δεξιά"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Μεγιστοποίηση ή επαναφορά μεγέθους παραθύρου"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Μεγιστοποίηση ή επαναφορά μεγέθους παραθύρου"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Ελαχιστοποίηση παραθύρου εφαρμογής"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Άνοιγμα ρυθμίσεων από προεπιλογή"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Επιλογή τρόπου ανοίγματος συνδέσμων ιστού για την εφαρμογή"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Στην εφαρμογή"</string>
diff --git a/libs/WindowManager/Shell/res/values-en-rAU/strings.xml b/libs/WindowManager/Shell/res/values-en-rAU/strings.xml
index 75d2bf1..b137d80 100644
--- a/libs/WindowManager/Shell/res/values-en-rAU/strings.xml
+++ b/libs/WindowManager/Shell/res/values-en-rAU/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Left 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Left 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Right full screen"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Swap apps"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Top full screen"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Top 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Top 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Restart"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Don\'t show again"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Double-tap to\nmove this app"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maximise"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimise"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Close"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Back"</string>
     <string name="handle_text" msgid="4419667835599523257">"App handle"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"App icon"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Resize window to left"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Resize window to right"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maximise or restore window size"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maximise or restore window size"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimise app window"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Open by default settings"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Choose how to open web links for this app"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"In the app"</string>
diff --git a/libs/WindowManager/Shell/res/values-en-rCA/strings.xml b/libs/WindowManager/Shell/res/values-en-rCA/strings.xml
index e552f95..9b9294d 100644
--- a/libs/WindowManager/Shell/res/values-en-rCA/strings.xml
+++ b/libs/WindowManager/Shell/res/values-en-rCA/strings.xml
@@ -43,7 +43,8 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Left 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Left 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Right full screen"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Swap Apps"</string>
+    <string name="accessibility_action_divider_swap_vertical" msgid="3644891227133372072">"Swap top app with bottom"</string>
+    <string name="accessibility_action_divider_swap_horizontal" msgid="2722197605446631628">"Swap left app with right"</string>
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Top full screen"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Top 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Top 50%"</string>
@@ -112,9 +113,10 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Restart"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Don’t show again"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Double-tap to\nmove this app"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maximize"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimize"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Close"</string>
+    <string name="maximize_button_text" msgid="8106849394538234709">"Maximize <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+    <string name="restore_button_text" msgid="5377571986086775288">"Restore <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+    <string name="minimize_button_text" msgid="5213953162664451152">"Minimize <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
+    <string name="close_button_text" msgid="4544839489310949894">"Close <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="back_button_text" msgid="1469718707134137085">"Back"</string>
     <string name="handle_text" msgid="4419667835599523257">"App handle"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"App Icon"</string>
@@ -150,8 +152,10 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Resize window to left"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Resize window to right"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maximize or restore window size"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maximize or restore window size"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimize app window"</string>
+    <string name="app_header_talkback_action_maximize_button_text" msgid="8776156791095878638">"Maximize app window size"</string>
+    <string name="app_header_talkback_action_restore_button_text" msgid="2153022340772980863">"Restore window size"</string>
+    <string name="app_header_talkback_action_minimize_button_text" msgid="7491054416186901764">"Minimize app window"</string>
+    <string name="app_header_talkback_action_close_button_text" msgid="5159612596378268926">"Close app window"</string>
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Open by default settings"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Choose how to open web links for this app"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"In the app"</string>
diff --git a/libs/WindowManager/Shell/res/values-en-rGB/strings.xml b/libs/WindowManager/Shell/res/values-en-rGB/strings.xml
index 75d2bf1..b137d80 100644
--- a/libs/WindowManager/Shell/res/values-en-rGB/strings.xml
+++ b/libs/WindowManager/Shell/res/values-en-rGB/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Left 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Left 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Right full screen"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Swap apps"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Top full screen"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Top 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Top 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Restart"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Don\'t show again"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Double-tap to\nmove this app"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maximise"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimise"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Close"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Back"</string>
     <string name="handle_text" msgid="4419667835599523257">"App handle"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"App icon"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Resize window to left"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Resize window to right"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maximise or restore window size"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maximise or restore window size"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimise app window"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Open by default settings"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Choose how to open web links for this app"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"In the app"</string>
diff --git a/libs/WindowManager/Shell/res/values-en-rIN/strings.xml b/libs/WindowManager/Shell/res/values-en-rIN/strings.xml
index 75d2bf1..b137d80 100644
--- a/libs/WindowManager/Shell/res/values-en-rIN/strings.xml
+++ b/libs/WindowManager/Shell/res/values-en-rIN/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Left 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Left 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Right full screen"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Swap apps"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Top full screen"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Top 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Top 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Restart"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Don\'t show again"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Double-tap to\nmove this app"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maximise"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimise"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Close"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Back"</string>
     <string name="handle_text" msgid="4419667835599523257">"App handle"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"App icon"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Resize window to left"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Resize window to right"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maximise or restore window size"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maximise or restore window size"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimise app window"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Open by default settings"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Choose how to open web links for this app"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"In the app"</string>
diff --git a/libs/WindowManager/Shell/res/values-es-rUS/strings.xml b/libs/WindowManager/Shell/res/values-es-rUS/strings.xml
index c358ae4..ebfdc6d 100644
--- a/libs/WindowManager/Shell/res/values-es-rUS/strings.xml
+++ b/libs/WindowManager/Shell/res/values-es-rUS/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Izquierda: 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Izquierda: 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Pantalla derecha completa"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Intercambiar apps"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Pantalla superior completa"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Superior: 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Superior: 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Reiniciar"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"No volver a mostrar"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Presiona dos veces\npara mover esta app"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maximizar"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimizar"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Cerrar"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Atrás"</string>
     <string name="handle_text" msgid="4419667835599523257">"Controlador de la app"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Ícono de la app"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Ajustar el tamaño de la ventana hacia la izquierda"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Ajustar el tamaño de la ventana hacia la derecha"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maximizar o restablecer el tamaño de la ventana"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maximizar o restablecer el tamaño de la ventana"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimizar ventana de la app"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Abrir con la configuración predeterminada"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Elige cómo abrir vínculos web para esta app"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"En la app"</string>
diff --git a/libs/WindowManager/Shell/res/values-es/strings.xml b/libs/WindowManager/Shell/res/values-es/strings.xml
index 275d88d..dfa7869 100644
--- a/libs/WindowManager/Shell/res/values-es/strings.xml
+++ b/libs/WindowManager/Shell/res/values-es/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Izquierda 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Izquierda 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Pantalla derecha completa"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Cambiar aplicaciones"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Pantalla superior completa"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Superior 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Superior 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Reiniciar"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"No volver a mostrar"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Toca dos veces para\nmover esta aplicación"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maximizar"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimizar"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Cerrar"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Atrás"</string>
     <string name="handle_text" msgid="4419667835599523257">"Controlador de la aplicación"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Icono de la aplicación"</string>
@@ -134,7 +142,7 @@
     <string name="collapse_menu_text" msgid="7515008122450342029">"Cerrar menú"</string>
     <string name="desktop_mode_app_header_chip_text" msgid="8300164817452574565">"<xliff:g id="APP_NAME">%1$s</xliff:g> (vista para ordenadores)"</string>
     <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maximizar pantalla"</string>
-    <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Cambiar tamaño"</string>
+    <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Dividir pantalla"</string>
     <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"La aplicación no se puede mover aquí"</string>
     <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Inmersivo"</string>
     <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Restaurar"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Cambiar tamaño de la ventana a la izquierda"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Cambiar tamaño de la ventana a la derecha"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maximizar o restaurar tamaño de la ventana"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maximizar o restaurar tamaño de la ventana"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimizar ventana de la aplicación"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Abrir con los ajustes predeterminados"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Elige cómo quieres abrir los enlaces web de esta aplicación"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"En la aplicación"</string>
diff --git a/libs/WindowManager/Shell/res/values-et/strings.xml b/libs/WindowManager/Shell/res/values-et/strings.xml
index 3a330b3..294b7fe 100644
--- a/libs/WindowManager/Shell/res/values-et/strings.xml
+++ b/libs/WindowManager/Shell/res/values-et/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Vasak: 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Vasak: 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Parem täisekraan"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Rakenduste vahetamine"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Ülemine täisekraan"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Ülemine: 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Ülemine: 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Taaskäivita"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Ära kuva uuesti"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Rakenduse teisaldamiseks\ntopeltpuudutage"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maksimeeri"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimeeri"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Sule"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Tagasi"</string>
     <string name="handle_text" msgid="4419667835599523257">"Rakenduse element"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Rakenduse ikoon"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Akna suuruse muutmine, vasakule"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Akna suuruse muutmine, paremale"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Akna suuruse maksimeerimine või taastamine"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Akna suuruse maksimeerimine või taastamine"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Rakenduse akna minimeerimine"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Avamisviisi vaikeseaded"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Valige, kuidas avada selle rakenduse puhul veebilinke"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Rakenduses"</string>
diff --git a/libs/WindowManager/Shell/res/values-eu/strings.xml b/libs/WindowManager/Shell/res/values-eu/strings.xml
index c0766a2..a8f9212 100644
--- a/libs/WindowManager/Shell/res/values-eu/strings.xml
+++ b/libs/WindowManager/Shell/res/values-eu/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Ezarri ezkerraldea % 50en"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Ezarri ezkerraldea % 30en"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Ezarri eskuinaldea pantaila osoan"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Aldatu aplikazioz"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Ezarri goialdea pantaila osoan"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Ezarri goialdea % 70en"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Ezarri goialdea % 50en"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Berrabiarazi"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Ez erakutsi berriro"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Sakatu birritan\naplikazioa mugitzeko"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maximizatu"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimizatu"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Itxi"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Atzera"</string>
     <string name="handle_text" msgid="4419667835599523257">"Aplikazioaren kontrol-puntua"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Aplikazioaren ikonoa"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Aldatu leihoaren tamaina eta eraman ezkerrera"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Aldatu leihoaren tamaina eta eraman eskuinera"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maximizatu edo leheneratu leihoaren tamaina"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maximizatu edo leheneratu leihoaren tamaina"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimizatu aplikazioaren leihoa"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Modu lehenetsian irekitzearen ezarpenak"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Aukeratu nola ireki sareko estekak aplikazio honetan"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Aplikazioan"</string>
diff --git a/libs/WindowManager/Shell/res/values-fa/strings.xml b/libs/WindowManager/Shell/res/values-fa/strings.xml
index ace8b33..59affd7 100644
--- a/libs/WindowManager/Shell/res/values-fa/strings.xml
+++ b/libs/WindowManager/Shell/res/values-fa/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"٪۵۰ چپ"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"٪۳۰ چپ"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"تمام‌صفحه راست"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"جابه‌جا کردن برنامه‌ها"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"تمام‌صفحه بالا"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"٪۷۰ بالا"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"٪۵۰ بالا"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"بازراه‌اندازی"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"دوباره نشان داده نشود"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"برای جابه‌جا کردن این برنامه\nدو تک‌ضرب بزنید"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"بزرگ کردن"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"کوچک کردن"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"بستن"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"برگشتن"</string>
     <string name="handle_text" msgid="4419667835599523257">"دستگیره برنامه"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"نماد برنامه"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"تغییر اندازه پنجره به چپ"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"تغییر اندازه پنجره به راست"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"بیشینه‌سازی یا بازیابی اندازه پنجره"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"بیشینه‌سازی یا بازیابی اندازه پنجره"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"کمینه‌سازی پنجره برنامه"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"تنظیمات باز کردن به‌طور پیش‌فرض"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"انتخاب روش باز کردن پیوندهای وب مربوط به این برنامه"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"در برنامه"</string>
diff --git a/libs/WindowManager/Shell/res/values-fi/strings.xml b/libs/WindowManager/Shell/res/values-fi/strings.xml
index aed3fdc..b1d8431 100644
--- a/libs/WindowManager/Shell/res/values-fi/strings.xml
+++ b/libs/WindowManager/Shell/res/values-fi/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Vasen 50 %"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Vasen 30 %"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Oikea koko näytölle"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Vaihda sovellusta"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Yläosa koko näytölle"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Yläosa 70 %"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Yläosa 50 %"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Käynnistä uudelleen"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Älä näytä uudelleen"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Kaksoisnapauta, jos\nhaluat siirtää sovellusta"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Suurenna"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Pienennä"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Sulje"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Takaisin"</string>
     <string name="handle_text" msgid="4419667835599523257">"Sovelluksen tunnus"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Sovelluskuvake"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Muuta vasemmanpuoleisen ikkunan kokoa"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Muuta vasemmanpuoleisen ikkunan kokoa"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Suurenna ikkuna tai palauta ikkunan koko"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Suurenna ikkuna tai palauta ikkunan koko"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Pienennä sovellusikkuna"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Avaa oletusasetusten mukaan"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Valitse, miten verkkolinkit avataan tässä sovelluksessa"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Sovelluksessa"</string>
diff --git a/libs/WindowManager/Shell/res/values-fr-rCA/strings.xml b/libs/WindowManager/Shell/res/values-fr-rCA/strings.xml
index dc2025f..c58f4b0 100644
--- a/libs/WindowManager/Shell/res/values-fr-rCA/strings.xml
+++ b/libs/WindowManager/Shell/res/values-fr-rCA/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"50 % à la gauche"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"30 % à la gauche"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Plein écran à la droite"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Permuter des applis"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Plein écran dans le haut"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"70 % dans le haut"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"50 % dans le haut"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Redémarrer"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Ne plus afficher"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Toucher deux fois pour\ndéplacer cette appli"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Agrandir"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Réduire"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Fermer"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Retour"</string>
     <string name="handle_text" msgid="4419667835599523257">"Poignée de l\'appli"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Icône de l\'appli"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Redimensionner la fenêtre vers la gauche"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Redimensionner la fenêtre vers la droite"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Agrandir ou restaurer la taille de la fenêtre"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Agrandir ou restaurer la taille de la fenêtre"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Réduire la fenêtre de l\'appli"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Ouvrir les paramètres par défaut"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Choisissez comment ouvrir les liens Web pour cette appli"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Dans l\'appli"</string>
diff --git a/libs/WindowManager/Shell/res/values-fr/strings.xml b/libs/WindowManager/Shell/res/values-fr/strings.xml
index 377413e..e8db4c9 100644
--- a/libs/WindowManager/Shell/res/values-fr/strings.xml
+++ b/libs/WindowManager/Shell/res/values-fr/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Écran de gauche à 50 %"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Écran de gauche à 30 %"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Écran de droite en plein écran"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Échanger les applis"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Écran du haut en plein écran"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Écran du haut à 70 %"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Écran du haut à 50 %"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Redémarrer"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Ne plus afficher"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Appuyez deux fois\npour déplacer cette appli"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Agrandir"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Réduire"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Fermer"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Retour"</string>
     <string name="handle_text" msgid="4419667835599523257">"Poignée de l\'appli"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Icône d\'application"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Redimensionner la fenêtre vers la gauche"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Redimensionner la fenêtre vers la droite"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Agrandir ou restaurer la taille de la fenêtre"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Agrandir ou restaurer la taille de la fenêtre"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Réduire la fenêtre de l\'application"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Ouvrir les paramètres par défaut"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Choisir comment ouvrir les liens Web pour cette appli"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Dans l\'application"</string>
diff --git a/libs/WindowManager/Shell/res/values-gl/strings.xml b/libs/WindowManager/Shell/res/values-gl/strings.xml
index 3022f62..ba1c4a4 100644
--- a/libs/WindowManager/Shell/res/values-gl/strings.xml
+++ b/libs/WindowManager/Shell/res/values-gl/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"50 % á esquerda"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"30 % á esquerda"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Pantalla completa á dereita"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Cambiar as aplicacións"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Pantalla completa arriba"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"70 % arriba"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"50 % arriba"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Reiniciar"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Non mostrar outra vez"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Toca dúas veces para\nmover esta aplicación"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maximizar"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimizar"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Pechar"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Atrás"</string>
     <string name="handle_text" msgid="4419667835599523257">"Controlador da aplicación"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Icona de aplicación"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Axustar o tamaño da ventá á esquerda"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Axustar o tamaño da ventá á dereita"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maximizar ou restaurar o tamaño da ventá"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maximizar ou restaurar o tamaño da ventá"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimizar a ventá da aplicación"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Abrir coa configuración predeterminada"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Escoller como abrir as ligazóns web para esta aplicación"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Na aplicación"</string>
diff --git a/libs/WindowManager/Shell/res/values-gu/strings.xml b/libs/WindowManager/Shell/res/values-gu/strings.xml
index 196784b..cd75508 100644
--- a/libs/WindowManager/Shell/res/values-gu/strings.xml
+++ b/libs/WindowManager/Shell/res/values-gu/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"ડાબે 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"ડાબે 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"જમણી સ્ક્રીન સ્ક્રીન"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"ઍપને સ્વૉપ કરો"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"શીર્ષ પૂર્ણ સ્ક્રીન"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"શીર્ષ 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"શીર્ષ 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"ફરી શરૂ કરો"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"ફરીથી બતાવશો નહીં"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"આ ઍપને ખસેડવા માટે\nબે વાર ટૅપ કરો"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"મોટું કરો"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"નાનું કરો"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"બંધ કરો"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"પાછળ"</string>
     <string name="handle_text" msgid="4419667835599523257">"ઍપનું હૅન્ડલ"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"ઍપનું આઇકન"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"ડાબી બાજુ વિન્ડોનું કદ બદલો"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"જમણી બાજુ વિન્ડોનું કદ બદલો"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"વિન્ડોનું કદ મહત્તમ કરો અથવા રિસ્ટોર કરો"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"વિન્ડોનું કદ મહત્તમ કરો અથવા રિસ્ટોર કરો"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"ઍપની વિન્ડોને નાની કરો"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"\'ડિફૉલ્ટ તરીકે ખોલો\' સેટિંગ"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"આ ઍપ માટે વેબ લિંક ખોલવાની રીત પસંદ કરો"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"ઍપમાં"</string>
diff --git a/libs/WindowManager/Shell/res/values-hi/strings.xml b/libs/WindowManager/Shell/res/values-hi/strings.xml
index 945bc93..d0be7d5 100644
--- a/libs/WindowManager/Shell/res/values-hi/strings.xml
+++ b/libs/WindowManager/Shell/res/values-hi/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"बाईं स्क्रीन को 50% बनाएं"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"बाईं स्क्रीन को 30% बनाएं"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"दाईं स्क्रीन को फ़ुल स्क्रीन बनाएं"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"ऐप्लिकेशन स्वैप करें"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"ऊपर की स्क्रीन को फ़ुल स्क्रीन बनाएं"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"ऊपर की स्क्रीन को 70% बनाएं"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"ऊपर की स्क्रीन को 50% बनाएं"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"रीस्टार्ट करें"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"फिर से न दिखाएं"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"ऐप्लिकेशन की जगह बदलने के लिए\nदो बार टैप करें"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"बड़ा करें"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"विंडो छोटी करें"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"बंद करें"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"वापस जाएं"</string>
     <string name="handle_text" msgid="4419667835599523257">"ऐप्लिकेशन का हैंडल"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"ऐप्लिकेशन आइकॉन"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"विंडो का साइज़ बाईं ओर से बदलें"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"विंडो का साइज़ दाईं ओर से बढ़ाएं"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"विंडो को बड़ा करें या उसका साइज़ पहले जैसा करें"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"विंडो को बड़ा करें या उसका साइज़ पहले जैसा करें"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"ऐप्लिकेशन की विंडो को छोटा करें"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"डिफ़ॉल्ट सेटिंग के हिसाब से खोलें"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"इस ऐप्लिकेशन के लिए वेब लिंक खोलने का तरीका चुनें"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"ऐप्लिकेशन में"</string>
diff --git a/libs/WindowManager/Shell/res/values-hr/strings.xml b/libs/WindowManager/Shell/res/values-hr/strings.xml
index b1187dc..d3e7599 100644
--- a/libs/WindowManager/Shell/res/values-hr/strings.xml
+++ b/libs/WindowManager/Shell/res/values-hr/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Lijevi zaslon na 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Lijevi zaslon na 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Desni zaslon u cijeli zaslon"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Zamijeni aplikacije"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Gornji zaslon u cijeli zaslon"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Gornji zaslon na 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Gornji zaslon na 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Pokreni ponovno"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Ne prikazuj ponovno"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Dvaput dodirnite da biste\npremjestili ovu aplikaciju"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maksimiziraj"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimiziraj"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Zatvori"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Natrag"</string>
     <string name="handle_text" msgid="4419667835599523257">"Pokazivač aplikacije"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Ikona aplikacije"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Promijeni veličinu prozora ulijevo"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Promijeni veličinu prozora udesno"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maksimiziraj ili vrati veličinu prozora"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maksimiziraj ili vrati veličinu prozora"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimiziraj prozor aplikacije"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Otvori prema zadanim postavkama"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Odaberite način otvaranja web-veza za ovu aplikaciju"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"U aplikaciji"</string>
diff --git a/libs/WindowManager/Shell/res/values-hu/strings.xml b/libs/WindowManager/Shell/res/values-hu/strings.xml
index a7aedc4..2f7a218 100644
--- a/libs/WindowManager/Shell/res/values-hu/strings.xml
+++ b/libs/WindowManager/Shell/res/values-hu/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Bal oldali 50%-ra"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Bal oldali 30%-ra"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Jobb oldali teljes képernyőre"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Váltás az alkalmazások között"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Felső teljes képernyőre"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Felső 70%-ra"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Felső 50%-ra"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Újraindítás"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Ne jelenjen meg többé"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Koppintson duplán\naz alkalmazás áthelyezéséhez"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Teljes méret"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Kis méret"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Bezárás"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Vissza"</string>
     <string name="handle_text" msgid="4419667835599523257">"App fogópontja"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Alkalmazásikon"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Ablak átméretezése balra"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Ablak átméretezése jobbra"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Ablak teljes méretre állítása vagy visszaállítása"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Ablak teljes méretre állítása vagy visszaállítása"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Alkalmazásablak kis méretre állítása"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Alapértelmezett beállítások megnyitása"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Az app webes linkjeinek megnyitásához használt módszer"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Az alkalmazásban"</string>
diff --git a/libs/WindowManager/Shell/res/values-hy/strings.xml b/libs/WindowManager/Shell/res/values-hy/strings.xml
index 00b2f91..2898dcc 100644
--- a/libs/WindowManager/Shell/res/values-hy/strings.xml
+++ b/libs/WindowManager/Shell/res/values-hy/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Ձախ էկրանը՝ 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Ձախ էկրանը՝ 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Աջ էկրանը՝ լիաէկրան"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Հավելվածները տեղերով փոխել"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Վերևի էկրանը՝ լիաէկրան"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Վերևի էկրանը՝ 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Վերևի էկրանը՝ 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Վերագործարկել"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Այլևս ցույց չտալ"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Կրկնակի հպեք՝\nհավելվածը տեղափոխելու համար"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Ծավալել"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Ծալել"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Փակել"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Հետ"</string>
     <string name="handle_text" msgid="4419667835599523257">"Հավելվածի կեղծանուն"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Հավելվածի պատկերակ"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Ձգել պատուհանը դեպի ձախ"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Ձգել պատուհանը դեպի աջ"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Ծավալել կամ վերականգնել պատուհանի չափսը"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Ծավալել կամ վերականգնել պատուհանի չափսը"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Ծալել հավելվածի պատուհանը"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Բացել կարգավորումներն ըստ կանխադրման"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Ընտրեք՝ ինչպես բացել այս հավելվածի վեբ հղումները"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Հավելվածում"</string>
diff --git a/libs/WindowManager/Shell/res/values-in/strings.xml b/libs/WindowManager/Shell/res/values-in/strings.xml
index 54ccf84..617f9c9 100644
--- a/libs/WindowManager/Shell/res/values-in/strings.xml
+++ b/libs/WindowManager/Shell/res/values-in/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Kiri 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Kiri 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Layar penuh di kanan"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Ganti Aplikasi"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Layar penuh di atas"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Atas 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Atas 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Mulai ulang"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Jangan tampilkan lagi"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Ketuk dua kali untuk\nmemindahkan aplikasi ini"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maksimalkan"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimalkan"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Tutup"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Kembali"</string>
     <string name="handle_text" msgid="4419667835599523257">"Penanganan aplikasi"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Ikon Aplikasi"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Ubah ukuran jendela ke kiri"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Ubah ukuran jendela ke kanan"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maksimalkan atau pulihkan ukuran jendela"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maksimalkan atau pulihkan ukuran jendela"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimalkan jendela aplikasi"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Buka dengan setelan default"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Pilih cara membuka link web untuk aplikasi ini"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Di aplikasi"</string>
diff --git a/libs/WindowManager/Shell/res/values-is/strings.xml b/libs/WindowManager/Shell/res/values-is/strings.xml
index 56b1790..797a4cc 100644
--- a/libs/WindowManager/Shell/res/values-is/strings.xml
+++ b/libs/WindowManager/Shell/res/values-is/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Vinstri 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Vinstri 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Hægri á öllum skjánum"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Skipta á milli forrita"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Efri á öllum skjánum"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Efri 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Efri 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Endurræsa"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Ekki sýna þetta aftur"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Ýttu tvisvar til\nað færa þetta forrit"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Stækka"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minnka"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Loka"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Til baka"</string>
     <string name="handle_text" msgid="4419667835599523257">"Handfang forrits"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Tákn forrits"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Breyta stærð glugga til vinstri"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Breyta stærð glugga til hægri"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Hámarka eða endurheimta stærð glugga"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Hámarka eða endurheimta stærð glugga"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Lágmarka stærð forritsglugga"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Stillingar sjálfvirkrar opnunar"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Veldu hvernig veftenglar opnast í forritinu"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Í forritinu"</string>
diff --git a/libs/WindowManager/Shell/res/values-it/strings.xml b/libs/WindowManager/Shell/res/values-it/strings.xml
index 30159c7..85f0f8c 100644
--- a/libs/WindowManager/Shell/res/values-it/strings.xml
+++ b/libs/WindowManager/Shell/res/values-it/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Schermata sinistra al 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Schermata sinistra al 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Schermata destra a schermo intero"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Scambia app"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Schermata superiore a schermo intero"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Schermata superiore al 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Schermata superiore al 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Riavvia"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Non mostrare più"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Tocca due volte per\nspostare questa app"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Ingrandisci"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Riduci a icona"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Chiudi"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Indietro"</string>
     <string name="handle_text" msgid="4419667835599523257">"Punto di manipolazione app"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Icona dell\'app"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Ridimensiona la finestra a sinistra"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Ridimensiona la finestra a destra"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Ingrandisci o ripristina le dimensioni della finestra"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Ingrandisci o ripristina le dimensioni della finestra"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Riduci a icona la finestra dell\'app"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Apri in base alle impostazioni predefinite"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Scegli come aprire i link web per questa app"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"All\'interno dell\'app"</string>
diff --git a/libs/WindowManager/Shell/res/values-iw/strings.xml b/libs/WindowManager/Shell/res/values-iw/strings.xml
index 5a19f14..36ac620 100644
--- a/libs/WindowManager/Shell/res/values-iw/strings.xml
+++ b/libs/WindowManager/Shell/res/values-iw/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"שמאלה 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"שמאלה 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"מסך ימני מלא"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"מעבר בין אפליקציות"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"מסך עליון מלא"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"עליון 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"עליון 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"הפעלה מחדש"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"לא להציג שוב"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"אפשר ללחוץ לחיצה כפולה כדי\nלהעביר את האפליקציה למקום אחר"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"הגדלה"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"מזעור"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"סגירה"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"חזרה"</string>
     <string name="handle_text" msgid="4419667835599523257">"נקודת אחיזה לאפליקציה"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"סמל האפליקציה"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"שינוי גודל החלון שמשמאל"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"שינוי גודל החלון שמימין"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"שחזור של גודל החלון או הגדלת החלון"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"שחזור של גודל החלון או הגדלת החלון"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"מזעור החלון של האפליקציה"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"הגדרות לפתיחה כברירת מחדל"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"כאן בוחרים איך לפתוח באפליקציה הזו קישורים לדפי אינטרנט"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"באפליקציה"</string>
diff --git a/libs/WindowManager/Shell/res/values-ja/strings.xml b/libs/WindowManager/Shell/res/values-ja/strings.xml
index ac0df9c..3a12680 100644
--- a/libs/WindowManager/Shell/res/values-ja/strings.xml
+++ b/libs/WindowManager/Shell/res/values-ja/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"左 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"左 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"右全画面"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"アプリを切り替える"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"上部全画面"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"上 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"上 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"再起動"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"次回から表示しない"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"ダブルタップすると\nこのアプリを移動できます"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"最大化"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"最小化"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"閉じる"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"戻る"</string>
     <string name="handle_text" msgid="4419667835599523257">"アプリハンドル"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"アプリのアイコン"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"ウィンドウを左側にサイズ変更する"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"ウィンドウを右側にサイズ変更する"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"ウィンドウを最大化する、またはウィンドウを元のサイズに戻す"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"ウィンドウを最大化する、またはウィンドウを元のサイズに戻す"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"アプリ ウィンドウを最小化する"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"デフォルトの設定で開く"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"このアプリのウェブリンクを開く方法を選択"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"アプリ内"</string>
diff --git a/libs/WindowManager/Shell/res/values-ka/strings.xml b/libs/WindowManager/Shell/res/values-ka/strings.xml
index 84fab6f..2fbe1a7 100644
--- a/libs/WindowManager/Shell/res/values-ka/strings.xml
+++ b/libs/WindowManager/Shell/res/values-ka/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"მარცხენა ეკრანი — 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"მარცხენა ეკრანი — 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"მარჯვენა ნაწილის სრულ ეკრანზე გაშლა"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"აპების გადართვა"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"ზედა ნაწილის სრულ ეკრანზე გაშლა"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"ზედა ეკრანი — 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"ზედა ეკრანი — 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"გადატვირთვა"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"აღარ გამოჩნდეს"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"ამ აპის გადასატანად\nორმაგად შეეხეთ მას"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"მაქსიმალურად გაშლა"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"ჩაკეცვა"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"დახურვა"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"უკან"</string>
     <string name="handle_text" msgid="4419667835599523257">"აპის იდენტიფიკატორი"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"აპის ხატულა"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"ფანჯრის ზომის შეცვლა მარცხნივ"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"ფანჯრის ზომის შეცვლა მარჯვნივ"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"ფანჯრის მაქსიმალურ ზომამდე გაზრდა ან აღდგენა"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"ფანჯრის მაქსიმალურ ზომამდე გაზრდა ან აღდგენა"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"აპის ფანჯრის ზომის შემცირება"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"პარამეტრების ნაგულისხმევად გახსნა"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"ამ აპისთვის ვებ ბმულების გახსნის წესის არჩევა"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"აპში"</string>
diff --git a/libs/WindowManager/Shell/res/values-kk/strings.xml b/libs/WindowManager/Shell/res/values-kk/strings.xml
index be9e9c1..c494b16 100644
--- a/libs/WindowManager/Shell/res/values-kk/strings.xml
+++ b/libs/WindowManager/Shell/res/values-kk/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"50% сол жақта"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"30% сол жақта"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Оң жағын толық экранға шығару"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Қолданбаларды ауыстыру"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Жоғарғы жағын толық экранға шығару"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"70% жоғарғы жақта"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"50% жоғарғы жақта"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Өшіріп қосу"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Қайта көрсетілмесін"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Бұл қолданбаны басқа орынға\nжылжыту үшін екі рет түртіңіз."</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Жаю"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Кішірейту"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Жабу"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Артқа"</string>
     <string name="handle_text" msgid="4419667835599523257">"Қолданба идентификаторы"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Қолданба белгішесі"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Терезе өлшемін сол жаққа өзгерту"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Терезе өлшемін оң жаққа өзгерту"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Терезе өлшемін ұлғайту не қалпына келтіру"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Терезе өлшемін ұлғайту не қалпына келтіру"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Қолданба терезесін кішірейту"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Әдепкісінше ашу параметрлері"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Осы қолданбадағы веб-сілтемелерді ашу жолын таңдаңыз"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Қолданбада"</string>
diff --git a/libs/WindowManager/Shell/res/values-km/strings.xml b/libs/WindowManager/Shell/res/values-km/strings.xml
index c835650..234c355 100644
--- a/libs/WindowManager/Shell/res/values-km/strings.xml
+++ b/libs/WindowManager/Shell/res/values-km/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"ឆ្វេង 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"ឆ្វេង 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"អេក្រង់ពេញខាងស្តាំ"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"ប្ដូរកម្មវិធី"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"អេក្រង់ពេញខាងលើ"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"ខាងលើ 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"ខាងលើ 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"ចាប់ផ្ដើម​ឡើង​វិញ"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"កុំ​បង្ហាញ​ម្ដង​ទៀត"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"ចុចពីរដងដើម្បី\nផ្លាស់ទីកម្មវិធីនេះ"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"ពង្រីក"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"បង្រួម"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"បិទ"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"ថយក្រោយ"</string>
     <string name="handle_text" msgid="4419667835599523257">"ឈ្មោះអ្នកប្រើប្រាស់កម្មវិធី"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"រូប​កម្មវិធី"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"ប្ដូរទំហំវិនដូទៅឆ្វេង"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"ប្ដូរទំហំវិនដូទៅស្ដាំ"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"ស្ដារ ឬបង្កើនទំហំវិនដូជាអតិបរមា"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"ស្ដារ ឬបង្កើនទំហំវិនដូជាអតិបរមា"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"បង្រួមវិនដូកម្មវិធី"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"ការកំណត់បើកតាមលំនាំដើម"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"ជ្រើសរើសរបៀបបើកតំណបណ្ដាញសម្រាប់កម្មវិធីនេះ"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"នៅក្នុងកម្មវិធី"</string>
diff --git a/libs/WindowManager/Shell/res/values-kn/strings.xml b/libs/WindowManager/Shell/res/values-kn/strings.xml
index 143208a..61ee3c3 100644
--- a/libs/WindowManager/Shell/res/values-kn/strings.xml
+++ b/libs/WindowManager/Shell/res/values-kn/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"50% ಎಡಕ್ಕೆ"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"30% ಎಡಕ್ಕೆ"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"ಬಲ ಫುಲ್ ಸ್ಕ್ರೀನ್"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"ಆ್ಯಪ್‌ಗಳನ್ನು ಸ್ವ್ಯಾಪ್ ಮಾಡಿ"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"ಮೇಲಿನ ಫುಲ್ ಸ್ಕ್ರೀನ್"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"70% ಮೇಲಕ್ಕೆ"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"50% ಮೇಲಕ್ಕೆ"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"ಮರುಪ್ರಾರಂಭಿಸಿ"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"ಮತ್ತೊಮ್ಮೆ ತೋರಿಸಬೇಡಿ"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"ಈ ಆ್ಯಪ್ ಅನ್ನು ಸರಿಸಲು\nಡಬಲ್-ಟ್ಯಾಪ್ ಮಾಡಿ"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"ಹಿಗ್ಗಿಸಿ"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"ಕುಗ್ಗಿಸಿ"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"ಮುಚ್ಚಿರಿ"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"ಹಿಂದಕ್ಕೆ"</string>
     <string name="handle_text" msgid="4419667835599523257">"ಆ್ಯಪ್ ಹ್ಯಾಂಡಲ್"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"ಆ್ಯಪ್ ಐಕಾನ್"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"ಮರುಗಾತ್ರಗೊಳಿಸಿ ವಿಂಡೋವನ್ನು ಎಡಕ್ಕೆ ಸರಿಸಿ"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"ಮರುಗಾತ್ರಗೊಳಿಸಿ ವಿಂಡೋವನ್ನು ಬಲಕ್ಕೆ ಸರಿಸಿ"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"ವಿಂಡೋ ಗಾತ್ರವನ್ನು ಗರಿಷ್ಠಗೊಳಿಸಿ ಅಥವಾ ಮರುಸ್ಥಾಪಿಸಿ"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"ವಿಂಡೋ ಗಾತ್ರವನ್ನು ಗರಿಷ್ಠಗೊಳಿಸಿ ಅಥವಾ ಮರುಸ್ಥಾಪಿಸಿ"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"ಆ್ಯಪ್ ವಿಂಡೋವನ್ನು ಮಿನಿಮೈಜ್ ಮಾಡಿ"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"ಡೀಫಾಲ್ಟ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳಿಂದ ತೆರೆಯಿರಿ"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"ಈ ಆ್ಯಪ್‌ಗೆ ವೆಬ್ ಲಿಂಕ್‌ಗಳನ್ನು ಹೇಗೆ ತೆರೆಯಬೇಕು ಎಂಬುದನ್ನು ಆಯ್ಕೆಮಾಡಿ"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"ಆ್ಯಪ್‌ನಲ್ಲಿ"</string>
diff --git a/libs/WindowManager/Shell/res/values-ko/strings.xml b/libs/WindowManager/Shell/res/values-ko/strings.xml
index dcdbaba..2b36ba1 100644
--- a/libs/WindowManager/Shell/res/values-ko/strings.xml
+++ b/libs/WindowManager/Shell/res/values-ko/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"왼쪽 화면 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"왼쪽 화면 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"오른쪽 화면 전체화면"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"앱 전환"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"위쪽 화면 전체화면"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"위쪽 화면 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"위쪽 화면 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"다시 시작"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"다시 표시 안함"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"두 번 탭하여\n이 앱 이동"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"최대화"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"최소화"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"닫기"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"뒤로"</string>
     <string name="handle_text" msgid="4419667835599523257">"앱 핸들"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"앱 아이콘"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"창 크기 왼쪽으로 조절"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"창 크기 오른쪽으로 조절"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"창 최대화 또는 크기 복원"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"창 최대화 또는 크기 복원"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"앱 창 최소화"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"기본값으로 열기 설정"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"이 앱에서 웹 링크를 여는 방법을 선택하세요"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"앱에서"</string>
diff --git a/libs/WindowManager/Shell/res/values-ky/strings.xml b/libs/WindowManager/Shell/res/values-ky/strings.xml
index fe1bcd4..bb3c2fd 100644
--- a/libs/WindowManager/Shell/res/values-ky/strings.xml
+++ b/libs/WindowManager/Shell/res/values-ky/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Сол жактагы экранды 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Сол жактагы экранды 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Оң жактагы экранды толук экран режимине өткөрүү"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Колдонмолорду алмаштыруу"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Үстүнкү экранды толук экран режимине өткөрүү"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Үстүнкү экранды 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Үстүнкү экранды 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Өчүрүп күйгүзүү"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Экинчи көрүнбөсүн"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Бул колдонмону жылдыруу үчүн\nэки жолу таптаңыз"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Чоңойтуу"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Кичирейтүү"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Жабуу"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Артка"</string>
     <string name="handle_text" msgid="4419667835599523257">"Колдонмонун маркери"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Колдонмонун сүрөтчөсү"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Терезенин өлчөмүн солго өзгөртүү"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Терезенин өлчөмүн оңго өзгөртүү"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Терезенин өлчөмүн чоңойтуу же калыбына келтирүү"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Терезенин өлчөмүн чоңойтуу же калыбына келтирүү"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Колдонмонун терезесин кичирейтүү"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Демейки шартта ачылуучу шилтемелердин параметрлери"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Колдонмодо шилтемелер кантип ачыларын тандаңыз"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Колдонмодо"</string>
diff --git a/libs/WindowManager/Shell/res/values-lo/strings.xml b/libs/WindowManager/Shell/res/values-lo/strings.xml
index dd9df35..8850923 100644
--- a/libs/WindowManager/Shell/res/values-lo/strings.xml
+++ b/libs/WindowManager/Shell/res/values-lo/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"ຊ້າຍ 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"ຊ້າຍ 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"ເຕັມໜ້າຈໍຂວາ"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"ສະຫຼັບແອັບ"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"ເຕັມໜ້າຈໍເທິງສຸດ"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"ເທິງສຸດ 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"ເທິງສຸດ 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"ຣີສະຕາດ"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"ບໍ່ຕ້ອງສະແດງອີກ"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"ແຕະສອງເທື່ອເພື່ອ\nຍ້າຍແອັບນີ້"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"ຂະຫຍາຍໃຫຍ່ສຸດ"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"ຫຍໍ້ລົງ"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"ປິດ"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"ກັບຄືນ"</string>
     <string name="handle_text" msgid="4419667835599523257">"ຊື່ຜູ້ໃຊ້ແອັບ"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"ໄອຄອນແອັບ"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"ປັບຂະໜາດໜ້າຈໍໄປທາງຊ້າຍ"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"ປັບຂະໜາດໜ້າຈໍໄປທາງຂວາ"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"ຂະຫຍາຍ ຫຼື ຄືນຄ່າຂະໜາດໜ້າຈໍ"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"ຂະຫຍາຍ ຫຼື ຄືນຄ່າຂະໜາດໜ້າຈໍ"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"ຫຍໍ້ໜ້າຈໍແອັບ"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"ເປີດຕາມການຕັ້ງຄ່າເລີ່ມຕົ້ນ"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"ເລືອກວິທີເປີດລິ້ງເວັບສຳລັບແອັບນີ້"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"ໃນແອັບ"</string>
diff --git a/libs/WindowManager/Shell/res/values-lt/strings.xml b/libs/WindowManager/Shell/res/values-lt/strings.xml
index 7ebd43d..8ed826a 100644
--- a/libs/WindowManager/Shell/res/values-lt/strings.xml
+++ b/libs/WindowManager/Shell/res/values-lt/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Kairysis ekranas 50 %"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Kairysis ekranas 30 %"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Dešinysis ekranas viso ekrano režimu"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Programų keitimas"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Viršutinis ekranas viso ekrano režimu"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Viršutinis ekranas 70 %"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Viršutinis ekranas 50 %"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Paleisti iš naujo"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Daugiau neberodyti"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Dukart palieskite, kad\nperkeltumėte šią programą"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Padidinti"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Sumažinti"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Uždaryti"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Atgal"</string>
     <string name="handle_text" msgid="4419667835599523257">"Programos kreipinys"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Programos piktograma"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Pakeisti lango dydį kairėje"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Pakeisti lango dydį dešinėje"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Padidinti arba atkurti lango dydį"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Padidinti arba atkurti lango dydį"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Sumažinti programos langą"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Atidaryti pagal numatytuosius nustatymus"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Pasirinkite, kaip atidaryti šios programos žiniatinklio nuorodas"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Programoje"</string>
diff --git a/libs/WindowManager/Shell/res/values-lv/strings.xml b/libs/WindowManager/Shell/res/values-lv/strings.xml
index 8c4360b..1227055 100644
--- a/libs/WindowManager/Shell/res/values-lv/strings.xml
+++ b/libs/WindowManager/Shell/res/values-lv/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Pa kreisi 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Pa kreisi 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Labā daļa pa visu ekrānu"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Apmainīt lietotnes"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Augšdaļa pa visu ekrānu"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Augšdaļa 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Augšdaļa 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Restartēt"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Vairs nerādīt"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Veiciet dubultskārienu,\nlai pārvietotu šo lietotni"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maksimizēt"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimizēt"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Aizvērt"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Atpakaļ"</string>
     <string name="handle_text" msgid="4419667835599523257">"Lietotnes turis"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Lietotnes ikona"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Mainīt loga lielumu uz kreiso pusi"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Mainīt loga lielumu uz labo pusi"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maksimizēt vai atjaunot loga lielumu"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maksimizēt vai atjaunot loga lielumu"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimizēt lietotnes logu"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Atvērt pēc noklusējuma iestatījumiem"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Izvēlieties, kā atvērt šajā lietotnē norādītās saites"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Lietotnē"</string>
diff --git a/libs/WindowManager/Shell/res/values-mk/strings.xml b/libs/WindowManager/Shell/res/values-mk/strings.xml
index 653e66a..eb51374 100644
--- a/libs/WindowManager/Shell/res/values-mk/strings.xml
+++ b/libs/WindowManager/Shell/res/values-mk/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Левиот 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Левиот 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Десниот на цел екран"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Менувајте апликации"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Горниот на цел екран"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Горниот 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Горниот 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Рестартирај"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Не прикажувај повторно"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Допрете двапати за да ја\nпоместите апликацијава"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Зголеми"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Минимизирај"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Затвори"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Назад"</string>
     <string name="handle_text" msgid="4419667835599523257">"Прекар на апликацијата"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Икона на апликацијата"</string>
@@ -128,7 +136,7 @@
     <string name="open_in_browser_text" msgid="9181692926376072904">"Отвори во прелистувач"</string>
     <string name="open_in_app_text" msgid="2874590745116268525">"Отвори во апликацијата"</string>
     <string name="new_window_text" msgid="6318648868380652280">"Нов прозорец"</string>
-    <string name="manage_windows_text" msgid="5567366688493093920">"Управувајте со прозорци"</string>
+    <string name="manage_windows_text" msgid="5567366688493093920">"Управувајте со прозорците"</string>
     <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Промени го соодносот"</string>
     <string name="close_text" msgid="4986518933445178928">"Затворете"</string>
     <string name="collapse_menu_text" msgid="7515008122450342029">"Затворете го менито"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Променете ја големината на прозорецот налево"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Променете ја големината на прозорецот надесно"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Максимизирајте или вратете ја големината на прозорецот"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Максимизирајте или вратете ја големината на прозорецот"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Минимизирајте го прозорецот на апликацијата"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Отвори според стандардните поставки"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Изберете како да се отвораат линковите за апликацијава"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Во апликацијата"</string>
diff --git a/libs/WindowManager/Shell/res/values-ml/strings.xml b/libs/WindowManager/Shell/res/values-ml/strings.xml
index 8887665..c48cbce 100644
--- a/libs/WindowManager/Shell/res/values-ml/strings.xml
+++ b/libs/WindowManager/Shell/res/values-ml/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"ഇടത് 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"ഇടത് 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"വലത് പൂർണ്ണ സ്ക്രീൻ"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"ആപ്പുകൾ സ്വാപ്പ് ചെയ്യുക"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"മുകളിൽ പൂർണ്ണ സ്ക്രീൻ"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"മുകളിൽ 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"മുകളിൽ 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"റീസ്റ്റാർട്ട് ചെയ്യൂ"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"വീണ്ടും കാണിക്കരുത്"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"ഈ ആപ്പ് നീക്കാൻ\nഡബിൾ ടാപ്പ് ചെയ്യുക"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"വലുതാക്കുക"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"ചെറുതാക്കുക"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"അടയ്ക്കുക"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"മടങ്ങുക"</string>
     <string name="handle_text" msgid="4419667835599523257">"ആപ്പ് ഹാൻഡിൽ"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"ആപ്പ് ഐക്കൺ"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"ഇടത്തേക്ക് ആപ്പ് വിൻഡോ വലുപ്പം മാറ്റുക"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"വലത്തേക്ക് ആപ്പ് വിൻഡോ വലുപ്പം മാറ്റുക"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"വിന്‍ഡോ വലുപ്പം വലുതാക്കുക അല്ലെങ്കിൽ പഴയത് പുനഃസ്ഥാപിക്കുക"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"വിന്‍ഡോ വലുപ്പം വലുതാക്കുക അല്ലെങ്കിൽ പഴയത് പുനഃസ്ഥാപിക്കുക"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"ആപ്പ് വിന്‍ഡോ ചെറുതാക്കുക"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"ഡിഫോൾട്ട് ക്രമീകരണം ഉപയോഗിച്ച് തുറക്കുക"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"ഈ ആപ്പിനായി വെബ് ലിങ്കുകൾ എങ്ങനെ തുറക്കണമെന്ന് തിരഞ്ഞെടുക്കൂ"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"ആപ്പിൽ"</string>
diff --git a/libs/WindowManager/Shell/res/values-mn/strings.xml b/libs/WindowManager/Shell/res/values-mn/strings.xml
index df922e0..fca2f7c 100644
--- a/libs/WindowManager/Shell/res/values-mn/strings.xml
+++ b/libs/WindowManager/Shell/res/values-mn/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Зүүн 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Зүүн 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Баруун талын бүтэн дэлгэц"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Аппуудыг солих"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Дээд талын бүтэн дэлгэц"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Дээд 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Дээд 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Дахин эхлүүлэх"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Дахиж бүү харуул"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Энэ аппыг зөөхийн тулд\nхоёр товшино уу"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Томруулах"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Багасгах"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Хаах"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Буцах"</string>
     <string name="handle_text" msgid="4419667835599523257">"Аппын бариул"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Aппын дүрс тэмдэг"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Цонхны хэмжээг зүүн тал руу өөрчлөх"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Цонхны хэмжээг баруун тал руу өөрчлөх"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Цонхны хэмжээг томруулах эсвэл сэргээх"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Цонхны хэмжээг томруулах эсвэл сэргээх"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Аппын цонхыг жижгэрүүлэх"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Өгөгдмөл тохиргоогоор нээх"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Энэ аппад веб холбоосыг хэрхэн нээхийг сонгоно уу"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Аппад"</string>
diff --git a/libs/WindowManager/Shell/res/values-mr/strings.xml b/libs/WindowManager/Shell/res/values-mr/strings.xml
index f316311..8881187 100644
--- a/libs/WindowManager/Shell/res/values-mr/strings.xml
+++ b/libs/WindowManager/Shell/res/values-mr/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"डावी 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"डावी 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"उजवी फुल स्क्रीन"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"अ‍ॅप्स स्वॅप करा"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"शीर्ष फुल स्क्रीन"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"शीर्ष 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"शीर्ष 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"रीस्टार्ट करा"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"पुन्हा दाखवू नका"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"हे ॲप हलवण्यासाठी\nदोनदा टॅप करा"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"मोठे करा"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"लहान करा"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"बंद करा"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"मागे जा"</string>
     <string name="handle_text" msgid="4419667835599523257">"अ‍ॅपचे हँडल"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"अ‍ॅप आयकन"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"अ‍ॅप विंडोचा डावीकडे आकार बदला"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"अ‍ॅप विंडोचा उजवीकडे आकार बदला"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"विंडोचा आकार मोठा करा किंवा रिस्टोअर करा"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"विंडोचा आकार मोठा करा किंवा रिस्टोअर करा"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"अ‍ॅप विंडो लहान करा"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"बाय डीफॉल्ट सेटिंग्ज उघडा"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"या अ‍ॅपसाठीच्या वेब लिंक कशा उघडाव्यात हे निवडा"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"ॲपमध्ये"</string>
diff --git a/libs/WindowManager/Shell/res/values-ms/strings.xml b/libs/WindowManager/Shell/res/values-ms/strings.xml
index 81e00c5..f0cd560 100644
--- a/libs/WindowManager/Shell/res/values-ms/strings.xml
+++ b/libs/WindowManager/Shell/res/values-ms/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Kiri 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Kiri 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Skrin penuh kanan"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Tukar Apl"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Skrin penuh atas"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Atas 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Atas 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Mulakan semula"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Jangan tunjukkan lagi"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Ketik dua kali untuk\nalih apl ini"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maksimumkan"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimumkan"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Tutup"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Kembali"</string>
     <string name="handle_text" msgid="4419667835599523257">"Pengendalian apl"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Ikon Apl"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Ubah saiz tetingkap ke sebelah kiri"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Ubah saiz tetingkap ke sebelah kanan"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maksimumkan atau pulihkan saiz tetingkap"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maksimumkan atau pulihkan saiz tetingkap"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimumkan tetingkap apl"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Buka tetapan secara lalai"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Pilih cara membuka pautan web untuk apl ini"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Pada apl"</string>
diff --git a/libs/WindowManager/Shell/res/values-my/strings.xml b/libs/WindowManager/Shell/res/values-my/strings.xml
index 8697af8..3451701 100644
--- a/libs/WindowManager/Shell/res/values-my/strings.xml
+++ b/libs/WindowManager/Shell/res/values-my/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"ဘယ်ဘက် မျက်နှာပြင် ၅၀%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"ဘယ်ဘက် မျက်နှာပြင် ၃၀%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"ညာဘက် မျက်နှာပြင်အပြည့်"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"အက်ပ်ပြောင်းရန်"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"အပေါ်ဘက် မျက်နှာပြင်အပြည့်"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"အပေါ်ဘက် မျက်နှာပြင် ၇၀%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"အပေါ်ဘက် မျက်နှာပြင် ၅၀%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"ပြန်စရန်"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"နောက်ထပ်မပြပါနှင့်"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"ဤအက်ပ်ကို ရွှေ့ရန်\nနှစ်ချက်တို့ပါ"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"ချဲ့ရန်"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"ချုံ့ရန်"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"ပိတ်ရန်"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"နောက်သို့"</string>
     <string name="handle_text" msgid="4419667835599523257">"အက်ပ်သုံးသူအမည်"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"အက်ပ်သင်္ကေတ"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"ဝင်းဒိုးကို ဘယ်ဘက်သို့ အရွယ်ပြင်ရန်"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"ဝင်းဒိုးကို ညာဘက်သို့ အရွယ်ပြင်ရန်"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"ဝင်းဒိုးအရွယ်အစားကို ချဲ့ရန် (သို့) ပြန်ပြောင်းရန်"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"ဝင်းဒိုးအရွယ်အစားကို ချဲ့ရန် (သို့) ပြန်ပြောင်းရန်"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"အက်ပ်ဝင်းဒိုးကို ချုံ့ရန်"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"မူရင်းဆက်တင်ဖြင့် ဖွင့်ရန်"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"ဤအက်ပ်အတွက် ဝဘ်လင့်ခ်များ မည်သို့ဖွင့်မည်ကို ရွေးပါ"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"အက်ပ်တွင်"</string>
diff --git a/libs/WindowManager/Shell/res/values-nb/strings.xml b/libs/WindowManager/Shell/res/values-nb/strings.xml
index 43de636..3a4100c 100644
--- a/libs/WindowManager/Shell/res/values-nb/strings.xml
+++ b/libs/WindowManager/Shell/res/values-nb/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Sett størrelsen på den venstre delen av skjermen til 50 %"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Sett størrelsen på den venstre delen av skjermen til 30 %"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Utvid den høyre delen av skjermen til hele skjermen"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Bytt apper"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Utvid den øverste delen av skjermen til hele skjermen"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Sett størrelsen på den øverste delen av skjermen til 70 %"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Sett størrelsen på den øverste delen av skjermen til 50 %"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Start på nytt"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Ikke vis dette igjen"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Dobbelttrykk for\nå flytte denne appen"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maksimer"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimer"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Lukk"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Tilbake"</string>
     <string name="handle_text" msgid="4419667835599523257">"Apphåndtak"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Appikon"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Endre størrelsen på vinduet til venstre"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Endre størrelsen på vinduet til høyre"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maksimer eller gjenopprett størrelsen på vinduet"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maksimer eller gjenopprett størrelsen på vinduet"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimer appvinduet"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Innstillinger for åpning som standard"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Velg hvordan nettlinker skal åpnes for denne appen"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"I appen"</string>
diff --git a/libs/WindowManager/Shell/res/values-ne/strings.xml b/libs/WindowManager/Shell/res/values-ne/strings.xml
index 23b49b7..cc31e38 100644
--- a/libs/WindowManager/Shell/res/values-ne/strings.xml
+++ b/libs/WindowManager/Shell/res/values-ne/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"बायाँ भाग ५०%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"बायाँ भाग ३०%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"दायाँ भाग फुल स्क्रिन"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"एपहरू अदलबदल गर्नुहोस्"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"माथिल्लो भाग फुल स्क्रिन"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"माथिल्लो भाग ७०%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"माथिल्लो भाग ५०%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"रिस्टार्ट गर्नुहोस्"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"फेरि नदेखाउनुहोस्"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"यो एप सार्न डबल\nट्याप गर्नुहोस्"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"ठुलो बनाउनुहोस्"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"मिनिमाइज गर्नुहोस्"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"बन्द गर्नुहोस्"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"पछाडि"</string>
     <string name="handle_text" msgid="4419667835599523257">"एपको ह्यान्डल"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"एपको आइकन"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"विन्डोको आकार बदलेर बायाँतिर लैजानुहोस्"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"विन्डोको आकार बदलेर दायाँतिर लैजानुहोस्"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"विन्डोको आकार म्याक्सिमाइज गर्नुहोस् वा रिस्टोर गर्नुहोस्"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"विन्डोको आकार म्याक्सिमाइज गर्नुहोस् वा रिस्टोर गर्नुहोस्"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"एपको विन्डो मिनिमाइज गर्नुहोस्"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"डिफल्ट सेटिङअनुसार खोल्नुहोस्"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"यो एपका वेब लिंकहरू खोल्ने तरिका छनौट गर्नुहोस्"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"एपमा"</string>
diff --git a/libs/WindowManager/Shell/res/values-nl/strings.xml b/libs/WindowManager/Shell/res/values-nl/strings.xml
index 8396b3e..4234ddf 100644
--- a/libs/WindowManager/Shell/res/values-nl/strings.xml
+++ b/libs/WindowManager/Shell/res/values-nl/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Linkerscherm 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Linkerscherm 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Rechterscherm op volledig scherm"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Apps wisselen"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Bovenste scherm op volledig scherm"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Bovenste scherm 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Bovenste scherm 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Opnieuw opstarten"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Niet opnieuw tonen"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Dubbeltik om\ndeze app te verplaatsen"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maximaliseren"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimaliseren"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Sluiten"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Terug"</string>
     <string name="handle_text" msgid="4419667835599523257">"App-handgreep"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"App-icoon"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Formaat van venster naar links aanpassen"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Formaat van venster naar rechts aanpassen"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Formaat van venster maximaliseren of herstellen"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Formaat van venster maximaliseren of herstellen"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"App-venster minimaliseren"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Instellingen voor Standaard openen"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Kies hoe je weblinks voor deze app wilt openen"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"In de app"</string>
diff --git a/libs/WindowManager/Shell/res/values-or/strings.xml b/libs/WindowManager/Shell/res/values-or/strings.xml
index 9e1ee43..6390d37 100644
--- a/libs/WindowManager/Shell/res/values-or/strings.xml
+++ b/libs/WindowManager/Shell/res/values-or/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"ବାମ ପଟକୁ 50% କରନ୍ତୁ"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"ବାମ ପଟେ 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"ଡାହାଣ ପଟକୁ ପୂର୍ଣ୍ଣ ସ୍କ୍ରୀନ୍‍ କରନ୍ତୁ"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"ଆପ୍ସ ସ୍ୱାପ କରନ୍ତୁ"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"ଉପର ଆଡ଼କୁ ପୂର୍ଣ୍ଣ ସ୍କ୍ରୀନ୍‍ କରନ୍ତୁ"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"ଉପର ଆଡ଼କୁ 70% କରନ୍ତୁ"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"ଉପର ଆଡ଼କୁ 50% କରନ୍ତୁ"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"ରିଷ୍ଟାର୍ଟ କରନ୍ତୁ"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"ପୁଣି ଦେଖାନ୍ତୁ ନାହିଁ"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"ଏହି ଆପକୁ ମୁଭ\nକରିବା ପାଇଁ ଦୁଇଥର-ଟାପ କରନ୍ତୁ"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"ବଡ଼ କରନ୍ତୁ"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"ଛୋଟ କରନ୍ତୁ"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"ବନ୍ଦ କରନ୍ତୁ"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"ପଛକୁ ଫେରନ୍ତୁ"</string>
     <string name="handle_text" msgid="4419667835599523257">"ଆପର ହେଣ୍ଡେଲ"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"ଆପ ଆଇକନ"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"ବାମପଟକୁ ୱିଣ୍ଡୋ ରିସାଇଜ କରନ୍ତୁ"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"ଡାହାଣପଟକୁ ୱିଣ୍ଡୋ ରିସାଇଜ କରନ୍ତୁ"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"ୱିଣ୍ଡୋ ସାଇଜକୁ ମେକ୍ସିମାଇଜ କିମ୍ବା ରିଷ୍ଟୋର କରନ୍ତୁ"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"ୱିଣ୍ଡୋ ସାଇଜକୁ ମେକ୍ସିମାଇଜ କିମ୍ବା ରିଷ୍ଟୋର କରନ୍ତୁ"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"ଆପ ୱିଣ୍ଡୋକୁ ମିନିମାଇଜ କରନ୍ତୁ"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"ଡିଫଲ୍ଟ ସେଟିଂସକୁ ଖୋଲନ୍ତୁ"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"ଏହି ଆପ ପାଇଁ ୱେବ ଲିଙ୍କଗୁଡ଼ିକୁ କିପରି ଖୋଲିବେ, ତାହା ବାଛନ୍ତୁ"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"ଆପରେ"</string>
diff --git a/libs/WindowManager/Shell/res/values-pa/strings.xml b/libs/WindowManager/Shell/res/values-pa/strings.xml
index 3bc730b..d2b837c 100644
--- a/libs/WindowManager/Shell/res/values-pa/strings.xml
+++ b/libs/WindowManager/Shell/res/values-pa/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"ਖੱਬੇ 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"ਖੱਬੇ 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"ਸੱਜੇ ਪੂਰੀ ਸਕ੍ਰੀਨ"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"ਐਪਾਂ ਨੂੰ ਸਵੈਪ ਕਰੋ"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"ਉੱਪਰ ਪੂਰੀ ਸਕ੍ਰੀਨ"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"ਉੱਪਰ 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"ਉੱਪਰ 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"ਮੁੜ-ਸ਼ੁਰੂ ਕਰੋ"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"ਦੁਬਾਰਾ ਨਾ ਦਿਖਾਓ"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"ਇਸ ਐਪ ਦਾ ਟਿਕਾਣਾ ਬਦਲਣ ਲਈ\nਡਬਲ ਟੈਪ ਕਰੋ"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"ਵੱਡਾ ਕਰੋ"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"ਛੋਟਾ ਕਰੋ"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"ਬੰਦ ਕਰੋ"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"ਪਿੱਛੇ"</string>
     <string name="handle_text" msgid="4419667835599523257">"ਐਪ ਹੈਂਡਲ"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"ਐਪ ਪ੍ਰਤੀਕ"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"ਵਿੰਡੋ ਦਾ ਆਕਾਰ ਬਦਲ ਕੇ ਖੱਬੇ ਪਾਸੇ ਕਰੋ"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"ਵਿੰਡੋ ਦਾ ਆਕਾਰ ਬਦਲ ਕੇ ਸੱਜੇ ਪਾਸੇ ਕਰੋ"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"ਵਿੰਡੋ ਦਾ ਆਕਾਰ ਵਧਾਓ ਜਾਂ ਮੁੜ-ਬਹਾਲ ਕਰੋ"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"ਵਿੰਡੋ ਦਾ ਆਕਾਰ ਵਧਾਓ ਜਾਂ ਮੁੜ-ਬਹਾਲ ਕਰੋ"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"ਐਪ ਵਿੰਡੋ ਨੂੰ ਛੋਟਾ ਕਰੋ"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"ਪੂਰਵ-ਨਿਰਧਾਰਿਤ ਸੈਟਿੰਗਾਂ ਮੁਤਾਬਕ ਖੋਲ੍ਹੋ"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"ਇਸ ਐਪ ਲਈ ਵੈੱਬ ਲਿੰਕਾਂ ਨੂੰ ਖੋਲ੍ਹਣ ਦਾ ਤਰੀਕਾ ਚੁਣੋ"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"ਐਪ ਵਿੱਚ"</string>
diff --git a/libs/WindowManager/Shell/res/values-pl/strings.xml b/libs/WindowManager/Shell/res/values-pl/strings.xml
index 3a55cf3..59deb01 100644
--- a/libs/WindowManager/Shell/res/values-pl/strings.xml
+++ b/libs/WindowManager/Shell/res/values-pl/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"50% lewej części ekranu"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"30% lewej części ekranu"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Prawa część ekranu na pełnym ekranie"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Zamień aplikacje"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Górna część ekranu na pełnym ekranie"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"70% górnej części ekranu"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"50% górnej części ekranu"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Uruchom ponownie"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Nie pokazuj ponownie"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Aby przenieść aplikację,\nkliknij dwukrotnie"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maksymalizuj"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimalizuj"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Zamknij"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Wstecz"</string>
     <string name="handle_text" msgid="4419667835599523257">"Uchwyt aplikacji"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Ikona aplikacji"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Zmień rozmiar okna do lewej"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Zmień rozmiar okna do prawej"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Zmaksymalizuj lub przywróć rozmiar okna"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Zmaksymalizuj lub przywróć rozmiar okna"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Zminimalizuj okno aplikacji"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Ustawienia domyślnego otwierania"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Wybierz, gdzie chcesz otwierać linki z tej aplikacji"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"W aplikacji"</string>
diff --git a/libs/WindowManager/Shell/res/values-pt-rBR/strings.xml b/libs/WindowManager/Shell/res/values-pt-rBR/strings.xml
index 3e019ec..593f830 100644
--- a/libs/WindowManager/Shell/res/values-pt-rBR/strings.xml
+++ b/libs/WindowManager/Shell/res/values-pt-rBR/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Esquerda a 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Esquerda a 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Lado direito em tela cheia"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Trocar apps"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Parte superior em tela cheia"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Parte superior a 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Parte superior a 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Reiniciar"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Não mostrar novamente"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Toque duas vezes para\nmover o app"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maximizar"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimizar"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Fechar"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Voltar"</string>
     <string name="handle_text" msgid="4419667835599523257">"Identificador do app"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Ícone do app"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Redimensionar janela para a esquerda"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Redimensionar janela para a direita"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maximizar ou restaurar o tamanho da janela"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maximizar ou restaurar o tamanho da janela"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimizar janela do app"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Configurações \"Abrir por padrão\""</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Escolha como abrir links da Web para este app"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"No app"</string>
diff --git a/libs/WindowManager/Shell/res/values-pt-rPT/strings.xml b/libs/WindowManager/Shell/res/values-pt-rPT/strings.xml
index 3eaf0f5..fcf5916 100644
--- a/libs/WindowManager/Shell/res/values-pt-rPT/strings.xml
+++ b/libs/WindowManager/Shell/res/values-pt-rPT/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"50% no ecrã esquerdo"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"30% no ecrã esquerdo"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Ecrã direito inteiro"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Trocar apps"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Ecrã superior inteiro"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"70% no ecrã superior"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"50% no ecrã superior"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Reiniciar"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Não mostrar de novo"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Toque duas vezes\npara mover esta app"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maximizar"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimizar"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Fechar"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Anterior"</string>
     <string name="handle_text" msgid="4419667835599523257">"Indicador da app"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Ícone da app"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Redimensionar janela para a esquerda"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Redimensionar janela para a direita"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maximizar ou restaurar tamanho da janela"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maximizar ou restaurar tamanho da janela"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimizar janela da app"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Definições de Abrir por predefinição"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Escolha como abrir links da Web para esta app"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Na app"</string>
diff --git a/libs/WindowManager/Shell/res/values-pt/strings.xml b/libs/WindowManager/Shell/res/values-pt/strings.xml
index 3e019ec..593f830 100644
--- a/libs/WindowManager/Shell/res/values-pt/strings.xml
+++ b/libs/WindowManager/Shell/res/values-pt/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Esquerda a 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Esquerda a 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Lado direito em tela cheia"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Trocar apps"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Parte superior em tela cheia"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Parte superior a 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Parte superior a 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Reiniciar"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Não mostrar novamente"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Toque duas vezes para\nmover o app"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maximizar"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimizar"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Fechar"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Voltar"</string>
     <string name="handle_text" msgid="4419667835599523257">"Identificador do app"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Ícone do app"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Redimensionar janela para a esquerda"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Redimensionar janela para a direita"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maximizar ou restaurar o tamanho da janela"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maximizar ou restaurar o tamanho da janela"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimizar janela do app"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Configurações \"Abrir por padrão\""</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Escolha como abrir links da Web para este app"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"No app"</string>
diff --git a/libs/WindowManager/Shell/res/values-ro/strings.xml b/libs/WindowManager/Shell/res/values-ro/strings.xml
index 0195aca..81db82a 100644
--- a/libs/WindowManager/Shell/res/values-ro/strings.xml
+++ b/libs/WindowManager/Shell/res/values-ro/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Partea stângă: 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Partea stângă: 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Partea dreaptă pe ecran complet"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Comută între aplicații"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Partea de sus pe ecran complet"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Partea de sus: 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Partea de sus: 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Repornește"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Nu mai afișa"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Atinge de două ori\nca să muți aplicația"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maximizează"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimizează"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Închide"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Înapoi"</string>
     <string name="handle_text" msgid="4419667835599523257">"Handle de aplicație"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Pictograma aplicației"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Redimensionează fereastra la stânga"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Redimensionează fereastra la dreapta"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maximizează sau restabilește dimensiunea ferestrei"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maximizează sau restabilește dimensiunea ferestrei"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimizează fereastra aplicației"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Setări de deschidere în mod prestabilit"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Alege modul de deschidere a linkurilor web pentru aplicație"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"În aplicație"</string>
diff --git a/libs/WindowManager/Shell/res/values-ru/strings.xml b/libs/WindowManager/Shell/res/values-ru/strings.xml
index adc6f32..aa6f484 100644
--- a/libs/WindowManager/Shell/res/values-ru/strings.xml
+++ b/libs/WindowManager/Shell/res/values-ru/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Левый на 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Левый на 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Правый во весь экран"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Поменять приложения местами"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Верхний во весь экран"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Верхний на 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Верхний на 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Перезапустить"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Больше не показывать"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Дважды нажмите, чтобы\nпереместить приложение."</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Развернуть"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Свернуть"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Закрыть"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Назад"</string>
     <string name="handle_text" msgid="4419667835599523257">"Обозначение приложения"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Значок приложения"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Растянуть окно влево"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Растянуть окно вправо"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Развернуть окно или восстановить его размер"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Развернуть окно или восстановить его размер"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Свернуть окно приложения"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Настройки, регулирующие, как по умолчанию открываются ссылки"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Выберите, где будут открываться ссылки из этого приложения"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"В приложении"</string>
diff --git a/libs/WindowManager/Shell/res/values-si/strings.xml b/libs/WindowManager/Shell/res/values-si/strings.xml
index 26bd937..efa978a 100644
--- a/libs/WindowManager/Shell/res/values-si/strings.xml
+++ b/libs/WindowManager/Shell/res/values-si/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"වම් 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"වම් 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"දකුණු පූර්ණ තිරය"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"යෙදුම් හුවමාරු කරන්න"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"ඉහළම පූර්ණ තිරය"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"ඉහළම 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"ඉහළම 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"යළි අරඹන්න"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"නැවත නොපෙන්වන්න"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"මෙම යෙදුම ගෙන යාමට\nදෙවරක් තට්ටු කරන්න"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"විහිදන්න"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"කුඩා කරන්න"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"වසන්න"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"ආපසු"</string>
     <string name="handle_text" msgid="4419667835599523257">"යෙදුම් හසුරුව"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"යෙදුම් නිරූපකය"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"කවුළුව වමට ප්‍රතිප්‍රමාණ කරන්න"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"කවුළුව දකුණට ප්‍රතිප්‍රමාණ කරන්න"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"කවුළු ප්‍රමාණය උපරිම කරන්න හෝ ප්‍රතිසාධනය කරන්න"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"කවුළු ප්‍රමාණය උපරිම කරන්න හෝ ප්‍රතිසාධනය කරන්න"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"යෙදුම් කවුළුව අවම කරන්න"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"පෙරනිමි සැකසීම් මඟින් විවෘත කරන්න"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"මෙම යෙදුම සඳහා වෙබ් සබැඳි විවෘත කරන ආකාරය තෝරා ගන්න"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"යෙදුම තුළ"</string>
diff --git a/libs/WindowManager/Shell/res/values-sk/strings.xml b/libs/WindowManager/Shell/res/values-sk/strings.xml
index 8b6999e..fac26b4 100644
--- a/libs/WindowManager/Shell/res/values-sk/strings.xml
+++ b/libs/WindowManager/Shell/res/values-sk/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Ľavá – 50 %"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Ľavá – 30 %"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Pravá– na celú obrazovku"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Vymeniť aplikácie"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Horná – na celú obrazovku"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Horná – 70 %"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Horná – 50 %"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Reštartovať"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Už nezobrazovať"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Túto aplikáciu\npresuniete dvojitým klepnutím"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maximalizovať"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimalizovať"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Zavrieť"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Späť"</string>
     <string name="handle_text" msgid="4419667835599523257">"Rukoväť aplikácie"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Ikona aplikácie"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Zmeniť veľkosť okna vľavo"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Zmeniť veľkosť okna vpravo"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maximalizovať alebo obnoviť veľkosť okna"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maximalizovať alebo obnoviť veľkosť okna"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimalizovať okno aplikácie"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Otvárať podľa predvolených nastavení"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Vyberte, ako sa majú v tejto aplikácii otvárať webové odkazy"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"V aplikácii"</string>
diff --git a/libs/WindowManager/Shell/res/values-sl/strings.xml b/libs/WindowManager/Shell/res/values-sl/strings.xml
index 5f1f6ef..f8dacc4 100644
--- a/libs/WindowManager/Shell/res/values-sl/strings.xml
+++ b/libs/WindowManager/Shell/res/values-sl/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Levi 50 %"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Levi 30 %"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Desni v celozaslonski način"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Zamenjava aplikacij"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Zgornji v celozaslonski način"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Zgornji 70 %"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Zgornji 50 %"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Znova zaženi"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Ne prikaži več"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Dvakrat se dotaknite\nza premik te aplikacije"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maksimiraj"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimiraj"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Zapri"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Nazaj"</string>
     <string name="handle_text" msgid="4419667835599523257">"Identifikator aplikacije"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Ikona aplikacije"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Sprememba velikosti okna na levi"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Sprememba velikosti okna na desni"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Povečava ali obnovitev velikosti okna"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Povečava ali obnovitev velikosti okna"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Pomanjšava okna aplikacije"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Nastavitve privzetega odpiranja"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Izberite način odpiranja spletnih povezav za to aplikacijo"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"V aplikaciji"</string>
diff --git a/libs/WindowManager/Shell/res/values-sq/strings.xml b/libs/WindowManager/Shell/res/values-sq/strings.xml
index 45a1c00..c64df85 100644
--- a/libs/WindowManager/Shell/res/values-sq/strings.xml
+++ b/libs/WindowManager/Shell/res/values-sq/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Majtas 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Majtas 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Ekrani i plotë djathtas"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Ndërro aplikacionet"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Ekrani i plotë lart"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Lart 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Lart 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Rinis"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Mos e shfaq përsëri"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Trokit dy herë për të\nlëvizur këtë aplikacion"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Maksimizo"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimizo"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Mbyll"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Pas"</string>
     <string name="handle_text" msgid="4419667835599523257">"Emërtimi i aplikacionit"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Ikona e aplikacionit"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Ndrysho përmasat e dritares në të majtë"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Ndrysho përmasat e dritares në të djathtë"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maksimizo ose restauro madhësinë e dritares"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maksimizo ose restauro madhësinë e dritares"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimizo dritaren e aplikacionit"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Hap sipas cilësimeve të parazgjedhura"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Zgjidh si do t\'i hapësh lidhjet e uebit për këtë aplikacion"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Në aplikacion"</string>
diff --git a/libs/WindowManager/Shell/res/values-sr/strings.xml b/libs/WindowManager/Shell/res/values-sr/strings.xml
index 40ca9a4..d2462a7 100644
--- a/libs/WindowManager/Shell/res/values-sr/strings.xml
+++ b/libs/WindowManager/Shell/res/values-sr/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Леви екран 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Леви екран 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Режим целог екрана за доњи екран"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Замените места апликацијама"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Режим целог екрана за горњи екран"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Горњи екран 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Горњи екран 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Рестартуј"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Не приказуј поново"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Двапут додирните да бисте\nпреместили ову апликацију"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Увећајте"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Умањите"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Затворите"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Назад"</string>
     <string name="handle_text" msgid="4419667835599523257">"Идентификатор апликације"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Икона апликације"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Промените величину прозора налево"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Промените величину прозора надесно"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Увећајте или вратите величину прозора"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Увећајте или вратите величину прозора"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Умањите прозор апликације"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Подешавање Подразумевано отварај"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Одаберите начин отварања веб-линкова за ову апликацију"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"У апликацији"</string>
diff --git a/libs/WindowManager/Shell/res/values-sv/strings.xml b/libs/WindowManager/Shell/res/values-sv/strings.xml
index 4e126e8..0105e15 100644
--- a/libs/WindowManager/Shell/res/values-sv/strings.xml
+++ b/libs/WindowManager/Shell/res/values-sv/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Vänster 50 %"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Vänster 30 %"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Helskärm på höger skärm"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Byt appar"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Helskärm på övre skärm"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Övre 70 %"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Övre 50 %"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Starta om"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Visa inte igen"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Tryck snabbt två gånger\nför att flytta denna app"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Utöka"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Minimera"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Stäng"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Tillbaka"</string>
     <string name="handle_text" msgid="4419667835599523257">"Apphandtag"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Appikon"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Ändra storlek på fönstret åt vänster"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Ändra storlek på fönstret åt höger"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Maximera eller återställ fönsterstorleken"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Maximera eller återställ fönsterstorleken"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Minimera appfönstret"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Inställningar för Öppna som standard"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Välj hur webblänkar ska öppnas för den här appen"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"I appen"</string>
diff --git a/libs/WindowManager/Shell/res/values-sw/strings.xml b/libs/WindowManager/Shell/res/values-sw/strings.xml
index 8bfdfc6..b4415cb 100644
--- a/libs/WindowManager/Shell/res/values-sw/strings.xml
+++ b/libs/WindowManager/Shell/res/values-sw/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Kushoto 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Kushoto 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Skrini nzima ya kulia"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Badilisha Programu"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Skrini nzima ya juu"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Juu 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Juu 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Zima kisha uwashe"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Usionyeshe tena"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Gusa mara mbili ili\nusogeze programu hii"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Panua"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Punguza"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Funga"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Rudi nyuma"</string>
     <string name="handle_text" msgid="4419667835599523257">"Utambulisho wa programu"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Aikoni ya Programu"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Badilisha ukubwa wa dirisha kushoto"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Badilisha ukubwa wa dirisha kulia"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Panua au urejeshe ukubwa wa dirisha"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Panua au urejeshe ukubwa wa dirisha"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Punguza dirisha la programu"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Fungua kwa mipangilio chaguomsingi"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Chagua jinsi ya kufungua viungo vya wavuti vya programu hii"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Kwenye programu"</string>
diff --git a/libs/WindowManager/Shell/res/values-ta/strings.xml b/libs/WindowManager/Shell/res/values-ta/strings.xml
index 4d9093c..ccc9f94 100644
--- a/libs/WindowManager/Shell/res/values-ta/strings.xml
+++ b/libs/WindowManager/Shell/res/values-ta/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"இடது புறம் 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"இடது புறம் 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"வலது புறம் முழுத் திரை"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"ஆப்ஸை மாற்றும்"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"மேற்புறம் முழுத் திரை"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"மேலே 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"மேலே 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"மீண்டும் தொடங்கு"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"மீண்டும் காட்டாதே"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"இந்த ஆப்ஸை நகர்த்த\nஇருமுறை தட்டவும்"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"பெரிதாக்கும்"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"சிறிதாக்கும்"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"மூடும்"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"பின்செல்லும்"</string>
     <string name="handle_text" msgid="4419667835599523257">"ஆப்ஸ் ஹேண்டில்"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"ஆப்ஸ் ஐகான்"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"சாளரத்தை இடதுபுறமாக அளவு மாற்றும்"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"சாளரத்தை வலதுபுறமாக அளவு மாற்றும்"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"சாளரத்தின் அளவைப் பெரிதாக்கும்/மீட்டெடுக்கும்"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"சாளரத்தின் அளவைப் பெரிதாக்கும்/மீட்டெடுக்கும்"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"ஆப்ஸ் சாளரத்தைச் சிறிதாக்கும்"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"இயல்பாக அமைப்புகளைத் திறக்கும்"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"இந்த ஆப்ஸில் வலை இணைப்புகளைத் திறக்கும் வழிமுறையைத் தேர்வுசெய்யுங்கள்"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"ஆப்ஸில்"</string>
diff --git a/libs/WindowManager/Shell/res/values-te/strings.xml b/libs/WindowManager/Shell/res/values-te/strings.xml
index f7cf43e..96ce40a 100644
--- a/libs/WindowManager/Shell/res/values-te/strings.xml
+++ b/libs/WindowManager/Shell/res/values-te/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"ఎడమవైపు 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"ఎడమవైపు 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"కుడివైపు ఫుల్-స్క్రీన్‌"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"యాప్‌లను మార్చండి"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"ఎగువ ఫుల్-స్క్రీన్‌"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"ఎగువ 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"ఎగువ 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"రీస్టార్ట్ చేయండి"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"మళ్లీ చూపవద్దు"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"ఈ యాప్‌ను తరలించడానికి\nడబుల్-ట్యాప్ చేయండి"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"గరిష్టీకరించండి"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"కుదించండి"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"మూసివేయండి"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"వెనుకకు"</string>
     <string name="handle_text" msgid="4419667835599523257">"యాప్ హ్యాండిల్"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"యాప్ చిహ్నం"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"విండో ఎడమ వైపునకు సైజ్‌ను మార్చండి"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"విండో కుడి వైపునకు సైజ్‌ను మార్చండి"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"విండో సైజ్‌ను మ్యాగ్జిమైజ్ చేయండి లేదా రీస్టోర్ చేయండి"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"విండో సైజ్‌ను మ్యాగ్జిమైజ్ చేయండి లేదా రీస్టోర్ చేయండి"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"యాప్ విండోను కుదించండి"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"ఆటోమేటిక్ సెట్టింగ్‌ల ద్వారా తెరవండి"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"ఈ యాప్‌నకు సంబంధించిన వెబ్ లింక్‌లను ఎలా తెరవాలో ఎంచుకోండి"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"యాప్‌లో"</string>
diff --git a/libs/WindowManager/Shell/res/values-th/strings.xml b/libs/WindowManager/Shell/res/values-th/strings.xml
index 77cd2e2..16372d2 100644
--- a/libs/WindowManager/Shell/res/values-th/strings.xml
+++ b/libs/WindowManager/Shell/res/values-th/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"ซ้าย 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"ซ้าย 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"เต็มหน้าจอทางขวา"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"สลับแอป"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"เต็มหน้าจอด้านบน"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"ด้านบน 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"ด้านบน 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"รีสตาร์ท"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"ไม่ต้องแสดงข้อความนี้อีก"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"แตะสองครั้ง\nเพื่อย้ายแอปนี้"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"ขยายใหญ่สุด"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"ย่อ"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"ปิด"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"กลับ"</string>
     <string name="handle_text" msgid="4419667835599523257">"แฮนเดิลแอป"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"ไอคอนแอป"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"ปรับขนาดหน้าต่างไปทางซ้าย"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"ปรับขนาดหน้าต่างไปทางขวา"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"ขยายหรือคืนค่าขนาดหน้าต่าง"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"ขยายหรือคืนค่าขนาดหน้าต่าง"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"ย่อหน้าต่างแอป"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"เปิดตามการตั้งค่าเริ่มต้น"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"เลือกวิธีเปิดเว็บลิงก์สำหรับแอปนี้"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"ในแอป"</string>
diff --git a/libs/WindowManager/Shell/res/values-tl/strings.xml b/libs/WindowManager/Shell/res/values-tl/strings.xml
index 056bc22..ad38be8 100644
--- a/libs/WindowManager/Shell/res/values-tl/strings.xml
+++ b/libs/WindowManager/Shell/res/values-tl/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Gawing 50% ang nasa kaliwa"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Gawing 30% ang nasa kaliwa"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"I-full screen ang nasa kanan"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Pagpalitin ang Mga App"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"I-full screen ang nasa itaas"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Gawing 70% ang nasa itaas"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Gawing 50% ang nasa itaas"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"I-restart"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Huwag nang ipakita ulit"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"I-double tap para\nilipat ang app na ito"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"I-maximize"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"I-minimize"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Isara"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Bumalik"</string>
     <string name="handle_text" msgid="4419667835599523257">"Handle ng app"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Icon ng App"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"I-resize pakaliwa ang window"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"I-resize pakanan ang window"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"I-maximize o i-restore ang laki ng window"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"I-maximize o i-restore ang laki ng window"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"I-minimize ang window ng app"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Buksan sa pamamagitan ng mga default na setting"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Piliin kung paano magbukas ng web link para sa app na ito"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Sa app"</string>
diff --git a/libs/WindowManager/Shell/res/values-tr/strings.xml b/libs/WindowManager/Shell/res/values-tr/strings.xml
index 017f6bb..2bc0a96 100644
--- a/libs/WindowManager/Shell/res/values-tr/strings.xml
+++ b/libs/WindowManager/Shell/res/values-tr/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Solda %50"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Solda %30"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Sağda tam ekran"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Uygulamaların Yerini Değiştir"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Üstte tam ekran"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Üstte %70"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Üstte %50"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Yeniden başlat"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Bir daha gösterme"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Bu uygulamayı taşımak için\niki kez dokunun"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Ekranı Kapla"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Küçült"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Kapat"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Geri"</string>
     <string name="handle_text" msgid="4419667835599523257">"Uygulama tanıtıcısı"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Uygulama Simgesi"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Pencereyi sola yeniden boyutlandır"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Pencereyi sağa yeniden boyutlandır"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Pencereyi ekranı kaplayacak şekilde büyüt veya önceki boyutuna döndür"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Pencereyi ekranı kaplayacak şekilde büyüt veya önceki boyutuna döndür"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Uygulama penceresini küçült"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Varsayılan olarak açma ayarları"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Bu uygulama için web bağlantılarının nasıl açılacağını seçin"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Uygulamada"</string>
diff --git a/libs/WindowManager/Shell/res/values-uk/strings.xml b/libs/WindowManager/Shell/res/values-uk/strings.xml
index 32ce4a0..c1aa82e 100644
--- a/libs/WindowManager/Shell/res/values-uk/strings.xml
+++ b/libs/WindowManager/Shell/res/values-uk/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Ліве вікно на 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Ліве вікно на 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Праве вікно на весь екран"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Поміняти додатки місцями"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Верхнє вікно на весь екран"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Верхнє вікно на 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Верхнє вікно на 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Перезапустити"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Більше не показувати"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Двічі торкніться, щоб\nперемістити цей додаток"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Збільшити"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Згорнути"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Закрити"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Назад"</string>
     <string name="handle_text" msgid="4419667835599523257">"Дескриптор додатка"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Значок додатка"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Змінити розмір вікна ліворуч"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Змінити розмір вікна праворуч"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Розгорнути вікно або відновити його розмір"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Розгорнути вікно або відновити його розмір"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Згорнути вікно додатка"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Налаштування \"Відкривати за умовчанням\""</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Виберіть, як відкривати вебпосилання в цьому додатку"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"У додатку"</string>
diff --git a/libs/WindowManager/Shell/res/values-ur/strings.xml b/libs/WindowManager/Shell/res/values-ur/strings.xml
index 4de0c47..1afb48d 100644
--- a/libs/WindowManager/Shell/res/values-ur/strings.xml
+++ b/libs/WindowManager/Shell/res/values-ur/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"بائیں %50"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"بائیں %30"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"دائیں فل اسکرین"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"ایپس سویپ کریں"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"بالائی فل اسکرین"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"اوپر %70"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"اوپر %50"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"ری اسٹارٹ کریں"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"دوبارہ نہ دکھائیں"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"اس ایپ کو منتقل کرنے کیلئے\nدو بار تھپتھپائیں"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"بڑا کریں"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"چھوٹا کریں"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"بند کریں"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"پیچھے"</string>
     <string name="handle_text" msgid="4419667835599523257">"ایپ ہینڈل"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"ایپ کا آئیکن"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"دائیں طرف ونڈو کا سائز تبدیل کریں"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"ونڈو کا سائز بائیں طرف تبدیل کریں"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"ونڈو کا سائز زیادہ سے زیادہ یا بحال کریں"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"ونڈو کا سائز زیادہ سے زیادہ یا بحال کریں"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"ایپ ونڈو کو چھوٹا کریں"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"بطور ڈیفالٹ ترتیبات کھولیں"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"اس ایپ کے لیے ویب لنکس کھولنے کا طریقہ منتخب کریں"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"ایپ میں"</string>
diff --git a/libs/WindowManager/Shell/res/values-uz/strings.xml b/libs/WindowManager/Shell/res/values-uz/strings.xml
index 8c0d9bb..04fd429 100644
--- a/libs/WindowManager/Shell/res/values-uz/strings.xml
+++ b/libs/WindowManager/Shell/res/values-uz/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Chapda 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Chapda 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"O‘ngda to‘liq ekran"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Ilovalarni almashtirish"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Tepada to‘liq ekran"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Tepada 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Tepada 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Qaytadan"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Boshqa chiqmasin"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Bu ilovani siljitish uchun\nikki marta bosing"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Yoyish"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Kichraytirish"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Yopish"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Orqaga"</string>
     <string name="handle_text" msgid="4419667835599523257">"Ilova identifikatori"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Ilova belgisi"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Oyna oʻlchamini chapga oʻzgartirish"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Oyna oʻlchamini oʻngga oʻzgartirish"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Oyna oʻlchamini kengaytirish yoki asliga qaytarish"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Oyna oʻlchamini kengaytirish yoki asliga qaytarish"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Ilova oynasini kichraytirish"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Birlamchi sozlamalar asosida ochish"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Bu ilovalardagi veb havolalar qanday ochilishini tanlang"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Ilovada"</string>
diff --git a/libs/WindowManager/Shell/res/values-vi/strings.xml b/libs/WindowManager/Shell/res/values-vi/strings.xml
index 3455eed..169c2b7 100644
--- a/libs/WindowManager/Shell/res/values-vi/strings.xml
+++ b/libs/WindowManager/Shell/res/values-vi/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Trái 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Trái 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Toàn màn hình bên phải"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Hoán đổi ứng dụng"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Toàn màn hình phía trên"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Trên 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Trên 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Khởi động lại"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Không hiện lại"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Nhấn đúp để\ndi chuyển ứng dụng này"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Phóng to"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Thu nhỏ"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Đóng"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Quay lại"</string>
     <string name="handle_text" msgid="4419667835599523257">"Ô điều khiển ứng dụng"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Biểu tượng ứng dụng"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Đổi kích thước và chuyển cửa sổ sang trái"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Đổi kích thước và chuyển cửa sổ sang phải"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Phóng to hoặc khôi phục kích thước cửa sổ"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Phóng to hoặc khôi phục kích thước cửa sổ"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Thu nhỏ cửa sổ ứng dụng"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Mở các chế độ cài đặt theo mặc định"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Chọn cách mở đường liên kết trang web cho ứng dụng này"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Trong ứng dụng"</string>
diff --git a/libs/WindowManager/Shell/res/values-zh-rCN/strings.xml b/libs/WindowManager/Shell/res/values-zh-rCN/strings.xml
index 369fa4b..942734a 100644
--- a/libs/WindowManager/Shell/res/values-zh-rCN/strings.xml
+++ b/libs/WindowManager/Shell/res/values-zh-rCN/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"左侧 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"左侧 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"右侧全屏"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"交换应用位置"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"顶部全屏"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"顶部 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"顶部 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"重启"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"不再显示"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"点按两次\n即可移动此应用"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"最大化"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"最小化"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"关闭"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"返回"</string>
     <string name="handle_text" msgid="4419667835599523257">"应用手柄"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"应用图标"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"调整窗口大小并贴靠左侧"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"调整窗口大小并贴靠右侧"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"将窗口最大化或恢复大小"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"将窗口最大化或恢复大小"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"将应用窗口最小化"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"默认打开设置"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"选择如何打开此应用中的网页链接"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"在此应用内"</string>
diff --git a/libs/WindowManager/Shell/res/values-zh-rHK/strings.xml b/libs/WindowManager/Shell/res/values-zh-rHK/strings.xml
index 8624f94d..f897922 100644
--- a/libs/WindowManager/Shell/res/values-zh-rHK/strings.xml
+++ b/libs/WindowManager/Shell/res/values-zh-rHK/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"左邊 50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"左邊 30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"右邊全螢幕"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"切換應用程式"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"頂部全螢幕"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"頂部 70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"頂部 50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"重新啟動"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"不要再顯示"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"輕按兩下\n即可移動此應用程式"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"最大化"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"最小化"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"關閉"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"返去"</string>
     <string name="handle_text" msgid="4419667835599523257">"應用程式控點"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"應用程式圖示"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"將視窗移去左邊調整大小"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"將視窗移去右邊調整大小"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"將視窗放到最大或者還原視窗大小"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"將視窗放到最大或者還原視窗大小"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"將應用程式視窗縮到最細"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"採用預設設定打開"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"選擇此應用程式開啟網絡連結的方式"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"在應用程式內"</string>
diff --git a/libs/WindowManager/Shell/res/values-zh-rTW/strings.xml b/libs/WindowManager/Shell/res/values-zh-rTW/strings.xml
index 199c102..3c6abec 100644
--- a/libs/WindowManager/Shell/res/values-zh-rTW/strings.xml
+++ b/libs/WindowManager/Shell/res/values-zh-rTW/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"以 50% 的螢幕空間顯示左側畫面"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"以 30% 的螢幕空間顯示左側畫面"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"以全螢幕顯示右側畫面"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"切換應用程式"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"以全螢幕顯示頂端畫面"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"以 70% 的螢幕空間顯示頂端畫面"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"以 50% 的螢幕空間顯示頂端畫面"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"重新啟動"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"不要再顯示"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"輕觸兩下即可\n移動這個應用程式"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"最大化"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"最小化"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"關閉"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"返回"</string>
     <string name="handle_text" msgid="4419667835599523257">"應用程式控制代碼"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"應用程式圖示"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"調整應用程式視窗大小並向左貼齊"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"調整應用程式視窗大小並向右貼齊"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"將視窗最大化或還原大小"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"將視窗最大化或還原大小"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"將應用程式視窗最小化"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"開啟連結的預設設定"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"選擇如何開啟這個應用程式的網頁連結"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"使用應用程式"</string>
diff --git a/libs/WindowManager/Shell/res/values-zu/strings.xml b/libs/WindowManager/Shell/res/values-zu/strings.xml
index 8f40142..b304299 100644
--- a/libs/WindowManager/Shell/res/values-zu/strings.xml
+++ b/libs/WindowManager/Shell/res/values-zu/strings.xml
@@ -43,7 +43,10 @@
     <string name="accessibility_action_divider_left_50" msgid="3488317024557521561">"Kwesokunxele ngo-50%"</string>
     <string name="accessibility_action_divider_left_30" msgid="6023611335723838727">"Kwesokunxele ngo-30%"</string>
     <string name="accessibility_action_divider_right_full" msgid="3408505054325944903">"Isikrini esigcwele esingakwesokudla"</string>
-    <string name="accessibility_action_divider_swap" msgid="7026003137401725787">"Shintsha ama-app"</string>
+    <!-- no translation found for accessibility_action_divider_swap_vertical (3644891227133372072) -->
+    <skip />
+    <!-- no translation found for accessibility_action_divider_swap_horizontal (2722197605446631628) -->
+    <skip />
     <string name="accessibility_action_divider_top_full" msgid="3495871951082107594">"Isikrini esigcwele esiphezulu"</string>
     <string name="accessibility_action_divider_top_70" msgid="1779164068887875474">"Okuphezulu okungu-70%"</string>
     <string name="accessibility_action_divider_top_50" msgid="8649582798829048946">"Okuphezulu okungu-50%"</string>
@@ -112,9 +115,14 @@
     <string name="letterbox_restart_restart" msgid="8529976234412442973">"Qala kabusha"</string>
     <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Ungabonisi futhi"</string>
     <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Thepha kabili ukuze\nuhambise le-app"</string>
-    <string name="maximize_button_text" msgid="1650859196290301963">"Khulisa"</string>
-    <string name="minimize_button_text" msgid="271592547935841753">"Nciphisa"</string>
-    <string name="close_button_text" msgid="2913281996024033299">"Vala"</string>
+    <!-- no translation found for maximize_button_text (8106849394538234709) -->
+    <skip />
+    <!-- no translation found for restore_button_text (5377571986086775288) -->
+    <skip />
+    <!-- no translation found for minimize_button_text (5213953162664451152) -->
+    <skip />
+    <!-- no translation found for close_button_text (4544839489310949894) -->
+    <skip />
     <string name="back_button_text" msgid="1469718707134137085">"Emuva"</string>
     <string name="handle_text" msgid="4419667835599523257">"Inkomba ye-App"</string>
     <string name="app_icon_text" msgid="2823268023931811747">"Isithonjana Se-app"</string>
@@ -150,8 +158,14 @@
     <string name="maximize_menu_talkback_action_snap_left_text" msgid="500309467459084564">"Shintsha usayizi wewindi ngakwesokunxele"</string>
     <string name="maximize_menu_talkback_action_snap_right_text" msgid="7010831426654467163">"Shintsha usayizi wewindi ngakwesokudla"</string>
     <string name="maximize_menu_talkback_action_maximize_restore_text" msgid="4942610897847934859">"Khulisa noma buyisela usayizi wewindi"</string>
-    <string name="maximize_button_talkback_action_maximize_restore_text" msgid="4122441323153198455">"Khulisa noma buyisela usayizi wewindi"</string>
-    <string name="minimize_button_talkback_action_maximize_restore_text" msgid="8890767445425625935">"Nciphisa iwindi le-app"</string>
+    <!-- no translation found for app_header_talkback_action_maximize_button_text (8776156791095878638) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_restore_button_text (2153022340772980863) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_minimize_button_text (7491054416186901764) -->
+    <skip />
+    <!-- no translation found for app_header_talkback_action_close_button_text (5159612596378268926) -->
+    <skip />
     <string name="open_by_default_settings_text" msgid="2526548548598185500">"Vula amasethingi ngokuzenzakalela"</string>
     <string name="open_by_default_dialog_subheader_text" msgid="1729599730664063881">"Khetha indlela yokuvula amalinki ewebhu ale app"</string>
     <string name="open_by_default_dialog_in_app_text" msgid="6978022419634199806">"Ku-app"</string>
diff --git a/libs/WindowManager/Shell/res/values/colors.xml b/libs/WindowManager/Shell/res/values/colors.xml
index d754243..8d18f95 100644
--- a/libs/WindowManager/Shell/res/values/colors.xml
+++ b/libs/WindowManager/Shell/res/values/colors.xml
@@ -68,4 +68,8 @@
     <color name="desktop_mode_caption_button_on_hover_light">#11000000</color>
     <color name="desktop_mode_caption_button_on_hover_dark">#11FFFFFF</color>
     <color name="desktop_mode_caption_button">#00000000</color>
+    <color name="tiling_divider_background_light">#C9C7B6</color>
+    <color name="tiling_divider_background_dark">#4A4739</color>
+    <color name="tiling_handle_background_light">#000000</color>
+    <color name="tiling_handle_background_dark">#FFFFFF</color>
 </resources>
diff --git a/libs/WindowManager/Shell/res/values/dimen.xml b/libs/WindowManager/Shell/res/values/dimen.xml
index a0c68ad..32660e8 100644
--- a/libs/WindowManager/Shell/res/values/dimen.xml
+++ b/libs/WindowManager/Shell/res/values/dimen.xml
@@ -618,6 +618,15 @@
     <!-- The vertical inset to apply to the app chip's ripple drawable -->
     <dimen name="desktop_mode_header_app_chip_ripple_inset_vertical">4dp</dimen>
 
+     <!-- The corner radius of the windowing actions pill buttons's ripple drawable -->
+     <dimen name="desktop_mode_handle_menu_windowing_action_ripple_radius">24dp</dimen>
+     <!-- The horizontal/vertical inset to apply to the ripple drawable effect of windowing
+     actions pill central buttons -->
+     <dimen name="desktop_mode_handle_menu_windowing_action_ripple_inset_base">2dp</dimen>
+     <!-- The horizontal/vertical vertical inset to apply to the ripple drawable effect of windowing
+     actions pill edge buttons -->
+     <dimen name="desktop_mode_handle_menu_windowing_action_ripple_inset_shift">4dp</dimen>
+
     <!-- The corner radius of the minimize button's ripple drawable -->
     <dimen name="desktop_mode_header_minimize_ripple_radius">18dp</dimen>
     <!-- The vertical inset to apply to the minimize button's ripple drawable -->
diff --git a/libs/WindowManager/Shell/res/values/strings.xml b/libs/WindowManager/Shell/res/values/strings.xml
index 1b7daa8..2179128 100644
--- a/libs/WindowManager/Shell/res/values/strings.xml
+++ b/libs/WindowManager/Shell/res/values/strings.xml
@@ -91,7 +91,8 @@
     <!-- Accessibility action for moving docked stack divider to make the right screen full screen [CHAR LIMIT=NONE] -->
     <string name="accessibility_action_divider_right_full">Right full screen</string>
     <!-- Accessibility action for swapping the apps around the divider (double tap action) [CHAR LIMIT=NONE] -->
-    <string name="accessibility_action_divider_swap">Swap Apps</string>
+    <string name="accessibility_action_divider_swap_vertical">Swap top app with bottom</string>
+    <string name="accessibility_action_divider_swap_horizontal">Swap left app with right</string>
 
     <!-- Accessibility action for moving docked stack divider to make the top screen full screen [CHAR LIMIT=NONE] -->
     <string name="accessibility_action_divider_top_full">Top full screen</string>
@@ -276,11 +277,13 @@
 
     <!-- Freeform window caption strings -->
     <!-- Accessibility text for the maximize window button [CHAR LIMIT=NONE] -->
-    <string name="maximize_button_text">Maximize</string>
+    <string name="maximize_button_text">Maximize <xliff:g id="app_name" example="Chrome">%1$s</xliff:g></string>
+    <!-- Accessibility text for the restore window button [CHAR LIMIT=NONE] -->
+    <string name="restore_button_text">Restore <xliff:g id="app_name" example="Chrome">%1$s</xliff:g></string>
      <!-- Accessibility text for the minimize window button [CHAR LIMIT=NONE] -->
-     <string name="minimize_button_text">Minimize</string>
+     <string name="minimize_button_text">Minimize <xliff:g id="app_name" example="Chrome">%1$s</xliff:g></string>
     <!-- Accessibility text for the close window button [CHAR LIMIT=NONE] -->
-    <string name="close_button_text">Close</string>
+    <string name="close_button_text">Close <xliff:g id="app_name" example="Chrome">%1$s</xliff:g></string>
     <!-- Accessibility text for the caption back button [CHAR LIMIT=NONE] -->
     <string name="back_button_text">Back</string>
     <!-- Accessibility text for the caption handle [CHAR LIMIT=NONE] -->
@@ -352,10 +355,14 @@
     <string name="maximize_menu_talkback_action_snap_right_text">Resize window to right</string>
     <!-- Accessibility action replacement for maximize menu enter maximize/restore button [CHAR LIMIT=NONE] -->
     <string name="maximize_menu_talkback_action_maximize_restore_text">Maximize or restore window size</string>
-    <!-- Accessibility action replacement for app header maximize/restore button [CHAR LIMIT=NONE] -->
-    <string name="maximize_button_talkback_action_maximize_restore_text">Maximize or restore window size</string>
+    <!-- Accessibility action replacement for app header maximize button [CHAR LIMIT=NONE] -->
+    <string name="app_header_talkback_action_maximize_button_text">Maximize app window size</string>
+    <!-- Accessibility action replacement for app header restore button [CHAR LIMIT=NONE] -->
+    <string name="app_header_talkback_action_restore_button_text">Restore window size</string>
     <!-- Accessibility action replacement for app header minimize button [CHAR LIMIT=NONE] -->
-    <string name="minimize_button_talkback_action_maximize_restore_text">Minimize app window</string>
+    <string name="app_header_talkback_action_minimize_button_text">Minimize app window</string>
+    <!-- Accessibility action replacement for app header close button [CHAR LIMIT=NONE] -->
+    <string name="app_header_talkback_action_close_button_text">Close app window</string>
 
     <!-- Accessibility text for open by default settings button [CHAR LIMIT=NONE] -->
     <string name="open_by_default_settings_text">Open by default settings</string>
diff --git a/libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeStatus.java b/libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeStatus.java
index 00c446c..2e33253 100644
--- a/libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeStatus.java
+++ b/libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeStatus.java
@@ -22,6 +22,7 @@
 
 import android.annotation.NonNull;
 import android.annotation.Nullable;
+import android.app.TaskInfo;
 import android.content.Context;
 import android.hardware.display.DisplayManager;
 import android.os.SystemProperties;
@@ -287,6 +288,16 @@
     }
 
     /**
+     * @return If {@code true} we set opaque background for all freeform tasks to prevent freeform
+     * tasks below from being visible if freeform task window above is translucent.
+     * Otherwise if fluid resize is enabled, add a background to freeform tasks.
+     */
+    public static boolean shouldSetBackground(@NonNull TaskInfo taskInfo) {
+        return taskInfo.isFreeform() && (!DesktopModeStatus.isVeiledResizeEnabled()
+                || DesktopModeFlags.ENABLE_OPAQUE_BACKGROUND_FOR_TRANSPARENT_WINDOWS.isTrue());
+    }
+
+    /**
      * @return {@code true} if the app handle should be shown because desktop mode is enabled or
      * the device has a large screen
      */
@@ -374,7 +385,7 @@
      * of the display's root [TaskDisplayArea] is set to WINDOWING_MODE_FREEFORM.
      */
     public static boolean enterDesktopByDefaultOnFreeformDisplay(@NonNull Context context) {
-        if (!Flags.enterDesktopByDefaultOnFreeformDisplays()) {
+        if (!DesktopExperienceFlags.ENTER_DESKTOP_BY_DEFAULT_ON_FREEFORM_DISPLAYS.isTrue()) {
             return false;
         }
         return SystemProperties.getBoolean(ENTER_DESKTOP_BY_DEFAULT_ON_FREEFORM_DISPLAY_SYS_PROP,
@@ -387,7 +398,7 @@
      * screen.
      */
     public static boolean shouldMaximizeWhenDragToTopEdge(@NonNull Context context) {
-        if (!Flags.enableDragToMaximize()) {
+        if (!DesktopExperienceFlags.ENABLE_DRAG_TO_MAXIMIZE.isTrue()) {
             return false;
         }
         return SystemProperties.getBoolean(ENABLE_DRAG_TO_MAXIMIZE_SYS_PROP,
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationAdapter.java b/libs/WindowManager/Shell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationAdapter.java
index 5355138..26c3626 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationAdapter.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationAdapter.java
@@ -147,10 +147,9 @@
     /** To be overridden by subclasses to adjust the animation surface change. */
     void onAnimationUpdateInner(@NonNull SurfaceControl.Transaction t) {
         // Update the surface position and alpha.
-        if (com.android.graphics.libgui.flags.Flags.edgeExtensionShader()
-                && mAnimation.getExtensionEdges() != 0x0
+        if (mAnimation.getExtensionEdges() != 0x0
                 && !(mChange.hasFlags(FLAG_TRANSLUCENT)
-                        && mChange.getActivityComponent() != null)) {
+                && mChange.getActivityComponent() != null)) {
             // Extend non-translucent activities
             t.setEdgeExtensionEffect(mLeash, mAnimation.getExtensionEdges());
         }
@@ -189,8 +188,7 @@
     @CallSuper
     void onAnimationEnd(@NonNull SurfaceControl.Transaction t) {
         onAnimationUpdate(t, mAnimation.getDuration());
-        if (com.android.graphics.libgui.flags.Flags.edgeExtensionShader()
-                && mAnimation.getExtensionEdges() != 0x0) {
+        if (mAnimation.getExtensionEdges() != 0x0) {
             t.setEdgeExtensionEffect(mLeash, /* edge */ 0);
         }
     }
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationRunner.java b/libs/WindowManager/Shell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationRunner.java
index 78f5154..85b7ac2 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationRunner.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationRunner.java
@@ -20,11 +20,9 @@
 import static android.view.WindowManager.TRANSIT_CLOSE;
 import static android.view.WindowManagerPolicyConstants.TYPE_LAYER_OFFSET;
 import static android.window.TransitionInfo.FLAG_IS_BEHIND_STARTING_WINDOW;
-import static android.window.TransitionInfo.FLAG_TRANSLUCENT;
 
 import static com.android.wm.shell.activityembedding.ActivityEmbeddingAnimationSpec.createShowSnapshotForClosingAnimation;
 import static com.android.wm.shell.transition.TransitionAnimationHelper.addBackgroundToTransition;
-import static com.android.wm.shell.transition.TransitionAnimationHelper.edgeExtendWindow;
 import static com.android.wm.shell.transition.TransitionAnimationHelper.getTransitionBackgroundColorIfSet;
 import static com.android.wm.shell.transition.Transitions.TRANSIT_TASK_FRAGMENT_DRAG_RESIZE;
 
@@ -46,7 +44,6 @@
 import androidx.annotation.Nullable;
 
 import com.android.internal.annotations.VisibleForTesting;
-import com.android.window.flags.Flags;
 import com.android.wm.shell.activityembedding.ActivityEmbeddingAnimationAdapter.SnapshotAdapter;
 import com.android.wm.shell.common.ScreenshotUtils;
 import com.android.wm.shell.shared.TransitionUtil;
@@ -144,10 +141,6 @@
             // ending states.
             prepareForJumpCut(info, startTransaction);
         } else {
-            if (!com.android.graphics.libgui.flags.Flags.edgeExtensionShader()) {
-                addEdgeExtensionIfNeeded(startTransaction, finishTransaction,
-                        postStartTransactionCallbacks, adapters);
-            }
             addBackgroundColorIfNeeded(info, startTransaction, finishTransaction, adapters);
             for (ActivityEmbeddingAnimationAdapter adapter : adapters) {
                 duration = Math.max(duration, adapter.getDurationHint());
@@ -330,34 +323,6 @@
         }
     }
 
-    /** Adds edge extension to the surfaces that have such an animation property. */
-    private void addEdgeExtensionIfNeeded(@NonNull SurfaceControl.Transaction startTransaction,
-            @NonNull SurfaceControl.Transaction finishTransaction,
-            @NonNull List<Consumer<SurfaceControl.Transaction>> postStartTransactionCallbacks,
-            @NonNull List<ActivityEmbeddingAnimationAdapter> adapters) {
-        for (ActivityEmbeddingAnimationAdapter adapter : adapters) {
-            final Animation animation = adapter.mAnimation;
-            if (animation.getExtensionEdges() == 0) {
-                continue;
-            }
-            if (adapter.mChange.hasFlags(FLAG_TRANSLUCENT)
-                    && adapter.mChange.getActivityComponent() != null) {
-                // Skip edge extension for translucent activity.
-                continue;
-            }
-            final TransitionInfo.Change change = adapter.mChange;
-            if (TransitionUtil.isOpeningType(adapter.mChange.getMode())) {
-                // Need to screenshot after startTransaction is applied otherwise activity
-                // may not be visible or ready yet.
-                postStartTransactionCallbacks.add(
-                        t -> edgeExtendWindow(change, animation, t, finishTransaction));
-            } else {
-                // Can screenshot now (before startTransaction is applied)
-                edgeExtendWindow(change, animation, startTransaction, finishTransaction);
-            }
-        }
-    }
-
     /** Adds background color to the transition if any animation has such a property. */
     private void addBackgroundColorIfNeeded(@NonNull TransitionInfo info,
             @NonNull SurfaceControl.Transaction startTransaction,
@@ -443,7 +408,7 @@
                 }
             }
 
-            calculateParentBounds(change, boundsAnimationChange, parentBounds);
+            calculateParentBounds(change, parentBounds);
             // There are two animations in the array. The first one is for the start leash
             // (snapshot), and the second one is for the end leash (TaskFragment).
             final Animation[] animations =
@@ -529,32 +494,19 @@
      */
     @VisibleForTesting
     static void calculateParentBounds(@NonNull TransitionInfo.Change change,
-              @NonNull TransitionInfo.Change boundsAnimationChange, @NonNull Rect outParentBounds) {
-        if (Flags.activityEmbeddingOverlayPresentationFlag()) {
-            final Point endParentSize = change.getEndParentSize();
-            if (endParentSize.equals(0, 0)) {
-                return;
-            }
-            final Point endRelPosition = change.getEndRelOffset();
-            final Point endAbsPosition = new Point(change.getEndAbsBounds().left,
-                    change.getEndAbsBounds().top);
-            final Point parentEndAbsPosition = new Point(endAbsPosition.x - endRelPosition.x,
-                    endAbsPosition.y - endRelPosition.y);
-            outParentBounds.set(parentEndAbsPosition.x, parentEndAbsPosition.y,
-                    parentEndAbsPosition.x + endParentSize.x,
-                    parentEndAbsPosition.y + endParentSize.y);
-        } else {
-            // The TaskFragment may be enter/exit split, so we take the union of both as
-            // the parent size.
-            outParentBounds.union(boundsAnimationChange.getStartAbsBounds());
-            outParentBounds.union(boundsAnimationChange.getEndAbsBounds());
-            if (boundsAnimationChange != change) {
-                // Union the change starting bounds in case the activity is resized and
-                // reparented to a TaskFragment. In that case, the TaskFragment may not cover
-                // the activity's starting bounds.
-                outParentBounds.union(change.getStartAbsBounds());
-            }
+            @NonNull Rect outParentBounds) {
+        final Point endParentSize = change.getEndParentSize();
+        if (endParentSize.equals(0, 0)) {
+            return;
         }
+        final Point endRelPosition = change.getEndRelOffset();
+        final Point endAbsPosition = new Point(change.getEndAbsBounds().left,
+                change.getEndAbsBounds().top);
+        final Point parentEndAbsPosition = new Point(endAbsPosition.x - endRelPosition.x,
+                endAbsPosition.y - endRelPosition.y);
+        outParentBounds.set(parentEndAbsPosition.x, parentEndAbsPosition.y,
+                parentEndAbsPosition.x + endParentSize.x,
+                parentEndAbsPosition.y + endParentSize.y);
     }
 
     /**
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/apptoweb/OWNERS b/libs/WindowManager/Shell/src/com/android/wm/shell/apptoweb/OWNERS
index 6207e5b0..7e55786 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/apptoweb/OWNERS
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/apptoweb/OWNERS
@@ -4,5 +4,4 @@
 mattsziklay@google.com
 mdehaini@google.com
 pbdr@google.com
-tkachenkoi@google.com
 vaniadesmonda@google.com
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/Bubble.java b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/Bubble.java
index 313d151..d948928 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/Bubble.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/Bubble.java
@@ -364,7 +364,7 @@
             @ShellMainThread Executor mainExecutor, @ShellBackgroundThread Executor bgExecutor) {
         return new Bubble(intent,
                 user,
-                /* key= */ getAppBubbleKeyForApp(intent.getIntent().getPackage(), user),
+                /* key= */ getAppBubbleKeyForApp(ComponentUtils.getPackageName(intent), user),
                 mainExecutor, bgExecutor);
     }
 
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/Bubbles.java b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/Bubbles.java
index 44ae744..133af2a 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/Bubbles.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/Bubbles.java
@@ -214,7 +214,8 @@
      *
      * @param entry          the {@link BubbleEntry} by the notification.
      * @param shouldBubbleUp {@code true} if this notification should bubble up.
-     * @param fromSystem     {@code true} if this update is from NotificationManagerService.
+     * @param fromSystem     {@code true} if this update is from NotificationManagerService or App,
+     *                                   false means this update is from SystemUi
      */
     void onEntryUpdated(BubbleEntry entry, boolean shouldBubbleUp, boolean fromSystem);
 
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/bar/BubbleBarLayerView.java b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/bar/BubbleBarLayerView.java
index 29837dc..677c21c 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/bar/BubbleBarLayerView.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/bar/BubbleBarLayerView.java
@@ -473,7 +473,7 @@
 
     /** Updates the expanded view size and position. */
     public void updateExpandedView() {
-        if (mExpandedView == null || mExpandedBubble == null) return;
+        if (mExpandedView == null || mExpandedBubble == null || mExpandedView.isAnimating()) return;
         boolean isOverflowExpanded = mExpandedBubble.getKey().equals(BubbleOverflow.KEY);
         mPositioner.getBubbleBarExpandedViewBounds(mPositioner.isBubbleBarOnLeft(),
                 isOverflowExpanded, mTempRect);
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/common/DisplayImeController.java b/libs/WindowManager/Shell/src/com/android/wm/shell/common/DisplayImeController.java
index df82091..dd2050a 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/common/DisplayImeController.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/common/DisplayImeController.java
@@ -461,6 +461,14 @@
             }
         }
 
+        private void setAnimating(boolean imeAnimationOngoing) {
+            int animatingTypes = imeAnimationOngoing ? WindowInsets.Type.ime() : 0;
+            try {
+                mWmService.updateDisplayWindowAnimatingTypes(mDisplayId, animatingTypes);
+            } catch (RemoteException e) {
+            }
+        }
+
         private int imeTop(float surfaceOffset, float surfacePositionY) {
             // surfaceOffset is already offset by the surface's top inset, so we need to subtract
             // the top inset so that the return value is in screen coordinates.
@@ -619,6 +627,9 @@
                                 + imeTop(hiddenY, defaultY) + "->" + imeTop(shownY, defaultY)
                                 + " showing:" + (mAnimationDirection == DIRECTION_SHOW));
                     }
+                    if (android.view.inputmethod.Flags.reportAnimatingInsetsTypes()) {
+                        setAnimating(true);
+                    }
                     int flags = dispatchStartPositioning(mDisplayId, imeTop(hiddenY, defaultY),
                             imeTop(shownY, defaultY), mAnimationDirection == DIRECTION_SHOW,
                             isFloating, t);
@@ -666,6 +677,8 @@
                     }
                     if (!android.view.inputmethod.Flags.refactorInsetsController()) {
                         dispatchEndPositioning(mDisplayId, mCancelled, t);
+                    } else if (android.view.inputmethod.Flags.reportAnimatingInsetsTypes()) {
+                        setAnimating(false);
                     }
                     if (mAnimationDirection == DIRECTION_HIDE && !mCancelled) {
                         ImeTracker.forLogging().onProgress(mStatsToken,
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/common/pip/PipBoundsState.java b/libs/WindowManager/Shell/src/com/android/wm/shell/common/pip/PipBoundsState.java
index c487f75..214e6ad 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/common/pip/PipBoundsState.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/common/pip/PipBoundsState.java
@@ -377,6 +377,16 @@
 
     /** Sets the preferred size of PIP as specified by the activity in PIP mode. */
     public void setOverrideMinSize(@Nullable Size overrideMinSize) {
+        if (overrideMinSize != null) {
+            final Size defaultSize = mSizeSpecSource.getDefaultSize(getAspectRatio());
+            if (overrideMinSize.getWidth() > defaultSize.getWidth()
+                    || overrideMinSize.getHeight() > defaultSize.getHeight()) {
+                ProtoLog.w(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE,
+                        "Ignore override min size(%s): larger than default size (%s)",
+                        overrideMinSize, defaultSize);
+                return;
+            }
+        }
         final boolean changed = !Objects.equals(overrideMinSize, getOverrideMinSize());
         mSizeSpecSource.setOverrideMinSize(overrideMinSize);
         if (changed && mOnMinimalSizeChangeCallback != null) {
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/DividerHandleView.java b/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/DividerHandleView.java
index 6c04e2a..d304e20 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/DividerHandleView.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/DividerHandleView.java
@@ -80,7 +80,19 @@
     private int mHoveringWidth;
     private int mHoveringHeight;
     private boolean mIsLeftRightSplit;
+    private boolean mIsSplitScreen;
 
+    /**
+     * Notifies the divider of ui mode change.
+     *
+     * @param isDarkMode Whether the mode is ui dark mode.
+     */
+    public void onUiModeChange(boolean isDarkMode) {
+        if (!mIsSplitScreen) {
+            mPaint.setColor(getTilingHandleColor(isDarkMode));
+            invalidate();
+        }
+    }
     public DividerHandleView(Context context, @Nullable AttributeSet attrs) {
         super(context, attrs);
         mPaint.setColor(getResources().getColor(R.color.docked_divider_handle, null));
@@ -103,6 +115,27 @@
         mHoveringHeight = mHeight > mWidth ? ((int) (mHeight * 1.5f)) : mHeight;
     }
 
+    /**
+     * Used by tiling infrastructure to specify display light/dark mode and
+     * whether handle colors should be overridden on display mode change in case
+     * of non split screen.
+     * @param isSplitScreen Whether the divider is used by split screen or tiling.
+     * @param isDarkMode Whether the mode is ui dark mode.
+     */
+    public void setup(boolean isSplitScreen, boolean isDarkMode) {
+        mIsSplitScreen = isSplitScreen;
+        if (!mIsSplitScreen) {
+            mPaint.setColor(getTilingHandleColor(isDarkMode));
+            setAlpha(.9f);
+        }
+    }
+
+    private int getTilingHandleColor(Boolean isDarkMode) {
+        return isDarkMode ? getResources().getColor(
+                R.color.tiling_handle_background_dark, null /* theme */) : getResources().getColor(
+                R.color.tiling_handle_background_light, null /* theme */);
+    }
+
     /** sets whether it's a left/right or top/bottom split */
     public void setIsLeftRightSplit(boolean isLeftRightSplit) {
         mIsLeftRightSplit = isLeftRightSplit;
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/DividerRoundedCorner.java b/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/DividerRoundedCorner.java
index d5aaf75..cf0ecae 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/DividerRoundedCorner.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/DividerRoundedCorner.java
@@ -47,15 +47,17 @@
     private InvertedRoundedCornerDrawInfo mBottomLeftCorner;
     private InvertedRoundedCornerDrawInfo mBottomRightCorner;
     private boolean mIsLeftRightSplit;
+    private boolean mIsSplitScreen;
 
     public DividerRoundedCorner(Context context, @Nullable AttributeSet attrs) {
         super(context, attrs);
         mDividerWidth = getResources().getDimensionPixelSize(R.dimen.split_divider_bar_width);
         mDividerBarBackground = new Paint();
         mDividerBarBackground.setColor(
-                getResources().getColor(R.color.split_divider_background, null));
+                getResources().getColor(R.color.split_divider_background, null /* theme */));
         mDividerBarBackground.setFlags(Paint.ANTI_ALIAS_FLAG);
         mDividerBarBackground.setStyle(Paint.Style.FILL);
+        mIsSplitScreen = false;
     }
 
     @Override
@@ -99,7 +101,41 @@
     }
 
     /**
+     * Used by tiling infrastructure to specify display light/dark mode and
+     * whether handle colors should be overridden on display mode change in case
+     * of non split screen.
+     *
+     * @param isSplitScreen Whether the divider is used by split screen or tiling.
+     * @param isDarkMode    Whether the mode is ui dark mode.
+     */
+    public void setup(boolean isSplitScreen, boolean isDarkMode) {
+        mIsSplitScreen = isSplitScreen;
+        if (!isSplitScreen) {
+            mDividerBarBackground.setColor(getTilingHandleColor(isDarkMode));
+        }
+    }
+
+    /**
+     * Notifies the divider of ui mode change.
+     *
+     * @param isDarkMode Whether the mode is ui dark mode.
+     */
+    public void onUiModeChange(boolean isDarkMode) {
+        if (!mIsSplitScreen) {
+            mDividerBarBackground.setColor(getTilingHandleColor(isDarkMode));
+            invalidate();
+        }
+    }
+
+    private int getTilingHandleColor(boolean isDarkMode) {
+        return isDarkMode ? getResources().getColor(
+                R.color.tiling_divider_background_dark, null /* theme */) : getResources().getColor(
+                R.color.tiling_divider_background_light, null /* theme */);
+    }
+
+    /**
      * Set whether the rounded corner is for a left/right split.
+     *
      * @param isLeftRightSplit whether it's a left/right split or top/bottom split.
      */
     public void setIsLeftRightSplit(boolean isLeftRightSplit) {
@@ -123,7 +159,16 @@
             mCornerPosition = cornerPosition;
 
             final RoundedCorner roundedCorner = getDisplay().getRoundedCorner(cornerPosition);
-            mRadius = roundedCorner == null ? 0 : roundedCorner.getRadius();
+            if (mIsSplitScreen) {
+                mRadius = roundedCorner == null ? 0 : roundedCorner.getRadius();
+            } else {
+                mRadius = mContext
+                        .getResources()
+                        .getDimensionPixelSize(
+                                com.android.wm.shell.shared.R.dimen
+                                        .desktop_windowing_freeform_rounded_corner_radius);
+            }
+
 
             // Starts with a filled square, and then subtracting out a circle from the appropriate
             // corner.
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/DividerView.java b/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/DividerView.java
index 06044cc..975303d 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/DividerView.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/DividerView.java
@@ -130,8 +130,6 @@
         public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfo info) {
             super.onInitializeAccessibilityNodeInfo(host, info);
             final DividerSnapAlgorithm snapAlgorithm = mSplitLayout.mDividerSnapAlgorithm;
-            info.addAction(new AccessibilityAction(R.id.action_swap_apps,
-                    mContext.getString(R.string.accessibility_action_divider_swap)));
             if (mSplitLayout.isLeftRightSplit()) {
                 info.addAction(new AccessibilityAction(R.id.action_move_tl_full,
                         mContext.getString(R.string.accessibility_action_divider_left_full)));
@@ -150,6 +148,8 @@
                 }
                 info.addAction(new AccessibilityAction(R.id.action_move_rb_full,
                         mContext.getString(R.string.accessibility_action_divider_right_full)));
+                info.addAction(new AccessibilityAction(R.id.action_swap_apps,
+                        mContext.getString(R.string.accessibility_action_divider_swap_horizontal)));
             } else {
                 info.addAction(new AccessibilityAction(R.id.action_move_tl_full,
                         mContext.getString(R.string.accessibility_action_divider_top_full)));
@@ -168,6 +168,8 @@
                 }
                 info.addAction(new AccessibilityAction(R.id.action_move_rb_full,
                         mContext.getString(R.string.accessibility_action_divider_bottom_full)));
+                info.addAction(new AccessibilityAction(R.id.action_swap_apps,
+                        mContext.getString(R.string.accessibility_action_divider_swap_vertical)));
             }
         }
 
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellModule.java b/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellModule.java
index 5d5e4d3..79fbd32 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellModule.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellModule.java
@@ -44,6 +44,7 @@
 import com.android.internal.jank.InteractionJankMonitor;
 import com.android.internal.logging.UiEventLogger;
 import com.android.internal.statusbar.IStatusBarService;
+import com.android.internal.util.LatencyTracker;
 import com.android.launcher3.icons.IconProvider;
 import com.android.window.flags.Flags;
 import com.android.wm.shell.RootTaskDisplayAreaOrganizer;
@@ -99,6 +100,7 @@
 import com.android.wm.shell.desktopmode.DesktopTasksTransitionObserver;
 import com.android.wm.shell.desktopmode.DesktopUserRepositories;
 import com.android.wm.shell.desktopmode.DragToDesktopTransitionHandler;
+import com.android.wm.shell.desktopmode.DragToDisplayTransitionHandler;
 import com.android.wm.shell.desktopmode.EnterDesktopTaskTransitionHandler;
 import com.android.wm.shell.desktopmode.ExitDesktopTaskTransitionHandler;
 import com.android.wm.shell.desktopmode.OverviewToDesktopTransitionObserver;
@@ -769,7 +771,8 @@
             DesksOrganizer desksOrganizer,
             DesksTransitionObserver desksTransitionObserver,
             UserProfileContexts userProfileContexts,
-            DesktopModeCompatPolicy desktopModeCompatPolicy) {
+            DesktopModeCompatPolicy desktopModeCompatPolicy,
+            DragToDisplayTransitionHandler dragToDisplayTransitionHandler) {
         return new DesktopTasksController(
                 context,
                 shellInit,
@@ -799,6 +802,7 @@
                 recentTasksController.orElse(null),
                 interactionJankMonitor,
                 mainHandler,
+                focusTransitionObserver,
                 desktopModeEventLogger,
                 desktopModeUiEventLogger,
                 desktopWallpaperActivityTokenProvider,
@@ -807,7 +811,8 @@
                 desksOrganizer,
                 desksTransitionObserver,
                 userProfileContexts,
-                desktopModeCompatPolicy);
+                desktopModeCompatPolicy,
+                dragToDisplayTransitionHandler);
     }
 
     @WMSingleton
@@ -933,6 +938,12 @@
 
     @WMSingleton
     @Provides
+    static DragToDisplayTransitionHandler provideDragToDisplayTransitionHandler() {
+        return new DragToDisplayTransitionHandler();
+    }
+
+    @WMSingleton
+    @Provides
     static Optional<DesktopModeKeyGestureHandler> provideDesktopModeKeyGestureHandler(
             Context context,
             Optional<DesktopModeWindowDecorViewModel> desktopModeWindowDecorViewModel,
@@ -1074,8 +1085,10 @@
     static EnterDesktopTaskTransitionHandler provideEnterDesktopModeTaskTransitionHandler(
             Transitions transitions,
             Optional<DesktopTasksLimiter> desktopTasksLimiter,
-            InteractionJankMonitor interactionJankMonitor) {
-        return new EnterDesktopTaskTransitionHandler(transitions, interactionJankMonitor);
+            InteractionJankMonitor interactionJankMonitor,
+            LatencyTracker latencyTracker) {
+        return new EnterDesktopTaskTransitionHandler(
+                transitions, interactionJankMonitor, latencyTracker);
     }
 
     @WMSingleton
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopDisplayModeController.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopDisplayModeController.kt
index c9a63ff..e89aafe 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopDisplayModeController.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopDisplayModeController.kt
@@ -27,9 +27,9 @@
 import android.view.Display.DEFAULT_DISPLAY
 import android.view.IWindowManager
 import android.view.WindowManager.TRANSIT_CHANGE
+import android.window.DesktopExperienceFlags
 import android.window.WindowContainerTransaction
 import com.android.internal.protolog.ProtoLog
-import com.android.window.flags.Flags
 import com.android.wm.shell.RootTaskDisplayAreaOrganizer
 import com.android.wm.shell.ShellTaskOrganizer
 import com.android.wm.shell.desktopmode.desktopwallpaperactivity.DesktopWallpaperActivityTokenProvider
@@ -47,31 +47,9 @@
 ) {
 
     fun refreshDisplayWindowingMode() {
-        if (!Flags.enableDisplayWindowingModeSwitching()) return
-        // TODO: b/375319538 - Replace the check with a DisplayManager API once it's available.
-        val isExtendedDisplayEnabled =
-            0 !=
-                Settings.Global.getInt(
-                    context.contentResolver,
-                    DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS,
-                    0,
-                )
-        if (!isExtendedDisplayEnabled) {
-            // No action needed in mirror or projected mode.
-            return
-        }
+        if (!DesktopExperienceFlags.ENABLE_DISPLAY_WINDOWING_MODE_SWITCHING.isTrue) return
 
-        val hasNonDefaultDisplay =
-            rootTaskDisplayAreaOrganizer.getDisplayIds().any { displayId ->
-                displayId != DEFAULT_DISPLAY
-            }
-        val targetDisplayWindowingMode =
-            if (hasNonDefaultDisplay) {
-                WINDOWING_MODE_FREEFORM
-            } else {
-                // Use the default display windowing mode when no non-default display.
-                windowManager.getWindowingMode(DEFAULT_DISPLAY)
-            }
+        val targetDisplayWindowingMode = getTargetWindowingModeForDefaultDisplay()
         val tdaInfo = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)
         requireNotNull(tdaInfo) { "DisplayAreaInfo of DEFAULT_DISPLAY must be non-null." }
         val currentDisplayWindowingMode = tdaInfo.configuration.windowConfiguration.windowingMode
@@ -111,6 +89,25 @@
         transitions.startTransition(TRANSIT_CHANGE, wct, /* handler= */ null)
     }
 
+    private fun getTargetWindowingModeForDefaultDisplay(): Int {
+        if (isExtendedDisplayEnabled() && hasExternalDisplay()) {
+            return WINDOWING_MODE_FREEFORM
+        }
+        return windowManager.getWindowingMode(DEFAULT_DISPLAY)
+    }
+
+    // TODO: b/375319538 - Replace the check with a DisplayManager API once it's available.
+    private fun isExtendedDisplayEnabled() =
+        0 !=
+            Settings.Global.getInt(
+                context.contentResolver,
+                DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS,
+                0,
+            )
+
+    private fun hasExternalDisplay() =
+        rootTaskDisplayAreaOrganizer.getDisplayIds().any { it != DEFAULT_DISPLAY }
+
     private fun logV(msg: String, vararg arguments: Any?) {
         ProtoLog.v(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments)
     }
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeShellCommandHandler.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeShellCommandHandler.kt
index d804485..e3a71a1 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeShellCommandHandler.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeShellCommandHandler.kt
@@ -16,15 +16,19 @@
 
 package com.android.wm.shell.desktopmode
 
+import android.app.ActivityTaskManager.INVALID_TASK_ID
 import android.window.DesktopExperienceFlags
 import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.UnminimizeReason
 import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.UNKNOWN
 import com.android.wm.shell.sysui.ShellCommandHandler
+import com.android.wm.shell.transition.FocusTransitionObserver
 import java.io.PrintWriter
 
 /** Handles the shell commands for the DesktopTasksController. */
-class DesktopModeShellCommandHandler(private val controller: DesktopTasksController) :
-    ShellCommandHandler.ShellCommandActionHandler {
+class DesktopModeShellCommandHandler(
+    private val controller: DesktopTasksController,
+    private val focusTransitionObserver: FocusTransitionObserver,
+) : ShellCommandHandler.ShellCommandActionHandler {
 
     override fun onShellCommand(args: Array<String>, pw: PrintWriter): Boolean =
         when (args[0]) {
@@ -77,20 +81,21 @@
     }
 
     private fun runMoveToNextDisplay(args: Array<String>, pw: PrintWriter): Boolean {
+        var taskId = INVALID_TASK_ID
         if (args.size < 2) {
-            // First argument is the action name.
-            pw.println("Error: task id should be provided as arguments")
-            return false
-        }
-
-        val taskId =
+            taskId = focusTransitionObserver.globallyFocusedTaskId
+        } else {
             try {
-                args[1].toInt()
+                taskId = args[1].toInt()
             } catch (e: NumberFormatException) {
                 pw.println("Error: task id should be an integer")
                 return false
             }
-
+        }
+        if (taskId == INVALID_TASK_ID) {
+            pw.println("Error: no appropriate task found")
+            return false
+        }
         controller.moveToNextDisplay(taskId)
         return true
     }
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeVisualIndicator.java b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeVisualIndicator.java
index 99f05283..56de48d 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeVisualIndicator.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeVisualIndicator.java
@@ -49,6 +49,7 @@
 import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper;
 import com.android.wm.shell.shared.bubbles.BubbleDropTargetBoundsProvider;
 import com.android.wm.shell.shared.desktopmode.DesktopModeStatus;
+import com.android.wm.shell.windowdecor.tiling.SnapEventHandler;
 
 /**
  * Animated visual indicator for Desktop Mode windowing transitions.
@@ -98,7 +99,9 @@
                 return FROM_SPLIT;
             } else if (taskInfo.isFreeform()) {
                 return FROM_FREEFORM;
-            } else return null;
+            } else {
+                return null;
+            }
         }
     }
 
@@ -110,6 +113,7 @@
 
     private IndicatorType mCurrentType;
     private final DragStartState mDragStartState;
+    private final SnapEventHandler mSnapEventHandler;
 
     public DesktopModeVisualIndicator(@ShellDesktopThread ShellExecutor desktopExecutor,
             @ShellMainThread ShellExecutor mainExecutor,
@@ -118,18 +122,20 @@
             Context context, SurfaceControl taskSurface,
             RootTaskDisplayAreaOrganizer taskDisplayAreaOrganizer,
             DragStartState dragStartState,
-            @Nullable BubbleDropTargetBoundsProvider bubbleBoundsProvider) {
+            @Nullable BubbleDropTargetBoundsProvider bubbleBoundsProvider,
+            SnapEventHandler snapEventHandler) {
         SurfaceControl.Builder builder = new SurfaceControl.Builder();
         taskDisplayAreaOrganizer.attachToDisplayArea(taskInfo.displayId, builder);
         mVisualIndicatorViewContainer = new VisualIndicatorViewContainer(
                 DesktopModeFlags.ENABLE_DESKTOP_INDICATOR_IN_SEPARATE_THREAD_BUGFIX.isTrue()
                         ? desktopExecutor : mainExecutor,
-                mainExecutor, builder, syncQueue, bubbleBoundsProvider);
+                mainExecutor, builder, syncQueue, bubbleBoundsProvider, snapEventHandler);
         mTaskInfo = taskInfo;
         mDisplayController = displayController;
         mContext = context;
         mCurrentType = NO_INDICATOR;
         mDragStartState = dragStartState;
+        mSnapEventHandler = snapEventHandler;
         mVisualIndicatorViewContainer.createView(
                 mContext,
                 mDisplayController.getDisplay(mTaskInfo.displayId),
@@ -143,7 +149,8 @@
     public void fadeOutIndicator(
             @NonNull Runnable callback) {
         mVisualIndicatorViewContainer.fadeOutIndicator(
-                mDisplayController.getDisplayLayout(mTaskInfo.displayId), mCurrentType, callback
+                mDisplayController.getDisplayLayout(mTaskInfo.displayId), mCurrentType, callback,
+                mTaskInfo.displayId, mSnapEventHandler
         );
     }
 
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopRepository.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopRepository.kt
index 2ce039e..73df976 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopRepository.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopRepository.kt
@@ -35,6 +35,9 @@
 import java.io.PrintWriter
 import java.util.concurrent.Executor
 import java.util.function.Consumer
+import kotlin.collections.component1
+import kotlin.collections.component2
+import kotlin.collections.forEach
 import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.launch
 
@@ -116,6 +119,7 @@
         }
     }
 
+    private val deskChangeListeners = ArrayMap<DeskChangeListener, Executor>()
     private val activeTasksListeners = ArraySet<ActiveTasksListener>()
     private val visibleTasksListeners = ArrayMap<VisibleTasksListener, Executor>()
 
@@ -144,6 +148,11 @@
             SingleDesktopData()
         }
 
+    /** Adds a listener to be notified of updates about desk changes. */
+    fun addDeskChangeListener(listener: DeskChangeListener, executor: Executor) {
+        deskChangeListeners[listener] = executor
+    }
+
     /** Adds [activeTasksListener] to be notified of updates to active tasks. */
     fun addActiveTaskListener(activeTasksListener: ActiveTasksListener) {
         activeTasksListeners.add(activeTasksListener)
@@ -196,6 +205,11 @@
         return desktopExclusionRegion
     }
 
+    /** Removes the previously registered listener. */
+    fun removeDeskChangeListener(listener: DeskChangeListener) {
+        deskChangeListeners.remove(listener)
+    }
+
     /** Remove the previously registered [activeTasksListener] */
     fun removeActiveTasksListener(activeTasksListener: ActiveTasksListener) {
         activeTasksListeners.remove(activeTasksListener)
@@ -210,6 +224,9 @@
     fun addDesk(displayId: Int, deskId: Int) {
         logD("addDesk for displayId=%d and deskId=%d", displayId, deskId)
         desktopData.createDesk(displayId, deskId)
+        deskChangeListeners.forEach { (listener, executor) ->
+            executor.execute { listener.onDeskAdded(displayId = displayId, deskId = deskId) }
+        }
     }
 
     /** Returns the ids of the existing desks in the given display. */
@@ -229,12 +246,37 @@
     /** Sets the given desk as the active one in the given display. */
     fun setActiveDesk(displayId: Int, deskId: Int) {
         logD("setActiveDesk for displayId=%d and deskId=%d", displayId, deskId)
+        val oldActiveDeskId = desktopData.getActiveDesk(displayId)?.deskId ?: INVALID_DESK_ID
         desktopData.setActiveDesk(displayId = displayId, deskId = deskId)
+        deskChangeListeners.forEach { (listener, executor) ->
+            executor.execute {
+                listener.onActiveDeskChanged(
+                    displayId = displayId,
+                    newActiveDeskId = deskId,
+                    oldActiveDeskId = oldActiveDeskId,
+                )
+            }
+        }
     }
 
     /** Sets the given desk as inactive if it was active. */
     fun setDeskInactive(deskId: Int) {
+        val displayId = desktopData.getDisplayForDesk(deskId)
+        val activeDeskId = desktopData.getActiveDesk(displayId)?.deskId ?: INVALID_DESK_ID
+        if (activeDeskId == INVALID_DESK_ID || activeDeskId != deskId) {
+            // Desk wasn't active.
+            return
+        }
         desktopData.setDeskInactive(deskId)
+        deskChangeListeners.forEach { (listener, executor) ->
+            executor.execute {
+                listener.onActiveDeskChanged(
+                    displayId = displayId,
+                    newActiveDeskId = INVALID_DESK_ID,
+                    oldActiveDeskId = deskId,
+                )
+            }
+        }
     }
 
     /** Returns the id of the active desk in the given display, if any. */
@@ -912,8 +954,21 @@
                 ?: return emptySet<Int>().also {
                     logW("Could not find desk to remove: deskId=%d", deskId)
                 }
+        val wasActive = desktopData.getActiveDesk(desk.displayId)?.deskId == desk.deskId
         val activeTasks = ArraySet(desk.activeTasks)
         desktopData.remove(desk.deskId)
+        deskChangeListeners.forEach { (listener, executor) ->
+            executor.execute {
+                if (wasActive) {
+                    listener.onActiveDeskChanged(
+                        displayId = desk.displayId,
+                        newActiveDeskId = INVALID_DESK_ID,
+                        oldActiveDeskId = desk.deskId,
+                    )
+                }
+                listener.onDeskRemoved(displayId = desk.displayId, deskId = desk.deskId)
+            }
+        }
         return activeTasks
     }
 
@@ -967,6 +1022,21 @@
     fun saveBoundsBeforeFullImmersive(taskId: Int, bounds: Rect) =
         boundsBeforeFullImmersiveByTaskId.set(taskId, Rect(bounds))
 
+    /** Returns the current state of the desktop, formatted for usage by remote clients. */
+    fun getDeskDisplayStateForRemote(): Array<DisplayDeskState> =
+        desktopData
+            .desksSequence()
+            .groupBy { it.displayId }
+            .map { (displayId, desks) ->
+                val activeDeskId = desktopData.getActiveDesk(displayId)?.deskId
+                DisplayDeskState().apply {
+                    this.displayId = displayId
+                    this.activeDeskId = activeDeskId ?: INVALID_DESK_ID
+                    this.deskIds = desks.map { it.deskId }.toIntArray()
+                }
+            }
+            .toTypedArray()
+
     /** TODO: b/389960283 - consider updating only the changing desks. */
     private fun updatePersistentRepository(displayId: Int) {
         val desks = desktopData.desksSequence(displayId).map { desk -> desk.deepCopy() }.toList()
@@ -1036,6 +1106,18 @@
             }
     }
 
+    /** Listens to changes of desks state. */
+    interface DeskChangeListener {
+        /** Called when a new desk is added to a display. */
+        fun onDeskAdded(displayId: Int, deskId: Int)
+
+        /** Called when a desk is removed from a display. */
+        fun onDeskRemoved(displayId: Int, deskId: Int)
+
+        /** Called when the active desk in a display has changed. */
+        fun onActiveDeskChanged(displayId: Int, newActiveDeskId: Int, oldActiveDeskId: Int)
+    }
+
     /** Listens to changes for active tasks in desktop mode. */
     interface ActiveTasksListener {
         fun onActiveTasksChanged(displayId: Int) {}
@@ -1296,6 +1378,8 @@
 
     companion object {
         private const val TAG = "DesktopRepository"
+
+        @VisibleForTesting const val INVALID_DESK_ID = -1
     }
 }
 
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt
index 5331a52..7e63250 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt
@@ -97,6 +97,7 @@
 import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger.DesktopUiEventEnum
 import com.android.wm.shell.desktopmode.DesktopModeVisualIndicator.DragStartState
 import com.android.wm.shell.desktopmode.DesktopModeVisualIndicator.IndicatorType
+import com.android.wm.shell.desktopmode.DesktopRepository.DeskChangeListener
 import com.android.wm.shell.desktopmode.DesktopRepository.VisibleTasksListener
 import com.android.wm.shell.desktopmode.DragToDesktopTransitionHandler.Companion.DRAG_TO_DESKTOP_FINISH_ANIM_DURATION_MS
 import com.android.wm.shell.desktopmode.DragToDesktopTransitionHandler.DragToDesktopStateListener
@@ -137,6 +138,7 @@
 import com.android.wm.shell.sysui.ShellController
 import com.android.wm.shell.sysui.ShellInit
 import com.android.wm.shell.sysui.UserChangeListener
+import com.android.wm.shell.transition.FocusTransitionObserver
 import com.android.wm.shell.transition.OneShotRemoteHandler
 import com.android.wm.shell.transition.Transitions
 import com.android.wm.shell.transition.Transitions.TransitionFinishCallback
@@ -195,6 +197,7 @@
     private val recentTasksController: RecentTasksController?,
     private val interactionJankMonitor: InteractionJankMonitor,
     @ShellMainThread private val handler: Handler,
+    private val focusTransitionObserver: FocusTransitionObserver,
     private val desktopModeEventLogger: DesktopModeEventLogger,
     private val desktopModeUiEventLogger: DesktopModeUiEventLogger,
     private val desktopWallpaperActivityTokenProvider: DesktopWallpaperActivityTokenProvider,
@@ -204,6 +207,7 @@
     private val desksTransitionObserver: DesksTransitionObserver,
     private val userProfileContexts: UserProfileContexts,
     private val desktopModeCompatPolicy: DesktopModeCompatPolicy,
+    private val dragToDisplayTransitionHandler: DragToDisplayTransitionHandler,
 ) :
     RemoteCallable<DesktopTasksController>,
     Transitions.TransitionHandler,
@@ -215,7 +219,7 @@
     private var visualIndicator: DesktopModeVisualIndicator? = null
     private var userId: Int
     private val desktopModeShellCommandHandler: DesktopModeShellCommandHandler =
-        DesktopModeShellCommandHandler(this)
+        DesktopModeShellCommandHandler(this, focusTransitionObserver)
 
     private val mOnAnimationFinishedCallback = { releaseVisualIndicator() }
     private lateinit var snapEventHandler: SnapEventHandler
@@ -3075,6 +3079,7 @@
                     rootTaskDisplayAreaOrganizer,
                     dragStartState,
                     bubbleController.getOrNull()?.bubbleDropTargetBoundsProvider,
+                    snapEventHandler,
                 )
         if (visualIndicator == null) visualIndicator = indicator
         return indicator.updateIndicatorType(PointF(inputX, taskTop))
@@ -3186,25 +3191,24 @@
                 val wct = WindowContainerTransaction()
                 wct.setBounds(taskInfo.token, destinationBounds)
 
-                // TODO: b/362720497 - reparent to a specific desk within the target display.
-                // Reparent task if it has been moved to a new display.
-                if (Flags.enableConnectedDisplaysWindowDrag()) {
-                    val newDisplayId = motionEvent.getDisplayId()
-                    if (newDisplayId != taskInfo.getDisplayId()) {
-                        val displayAreaInfo =
-                            rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(newDisplayId)
-                        if (displayAreaInfo == null) {
-                            logW(
-                                "Task reparent cannot find DisplayAreaInfo for displayId=%d",
-                                newDisplayId,
-                            )
-                        } else {
-                            wct.reparent(taskInfo.token, displayAreaInfo.token, /* onTop= */ true)
-                        }
+                val newDisplayId = motionEvent.getDisplayId()
+                val displayAreaInfo = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(newDisplayId)
+                val isCrossDisplayDrag =
+                    Flags.enableConnectedDisplaysWindowDrag() &&
+                        newDisplayId != taskInfo.getDisplayId() &&
+                        displayAreaInfo != null
+                val handler =
+                    if (isCrossDisplayDrag) {
+                        dragToDisplayTransitionHandler
+                    } else {
+                        null
                     }
+                if (isCrossDisplayDrag) {
+                    // TODO: b/362720497 - reparent to a specific desk within the target display.
+                    wct.reparent(taskInfo.token, displayAreaInfo.token, /* onTop= */ true)
                 }
 
-                transitions.startTransition(TRANSIT_CHANGE, wct, null)
+                transitions.startTransition(TRANSIT_CHANGE, wct, handler)
 
                 releaseVisualIndicator()
             }
@@ -3522,7 +3526,47 @@
         private lateinit var remoteListener:
             SingleInstanceRemoteListener<DesktopTasksController, IDesktopTaskListener>
 
-        private val listener: VisibleTasksListener =
+        private val deskChangeListener: DeskChangeListener =
+            object : DeskChangeListener {
+                override fun onDeskAdded(displayId: Int, deskId: Int) {
+                    ProtoLog.v(
+                        WM_SHELL_DESKTOP_MODE,
+                        "IDesktopModeImpl: onDeskAdded display=%d deskId=%d",
+                        displayId,
+                        deskId,
+                    )
+                    remoteListener.call { l -> l.onDeskAdded(displayId, deskId) }
+                }
+
+                override fun onDeskRemoved(displayId: Int, deskId: Int) {
+                    ProtoLog.v(
+                        WM_SHELL_DESKTOP_MODE,
+                        "IDesktopModeImpl: onDeskRemoved display=%d deskId=%d",
+                        displayId,
+                        deskId,
+                    )
+                    remoteListener.call { l -> l.onDeskRemoved(displayId, deskId) }
+                }
+
+                override fun onActiveDeskChanged(
+                    displayId: Int,
+                    newActiveDeskId: Int,
+                    oldActiveDeskId: Int,
+                ) {
+                    ProtoLog.v(
+                        WM_SHELL_DESKTOP_MODE,
+                        "IDesktopModeImpl: onActiveDeskChanged display=%d new=%d old=%d",
+                        displayId,
+                        newActiveDeskId,
+                        oldActiveDeskId,
+                    )
+                    remoteListener.call { l ->
+                        l.onActiveDeskChanged(displayId, newActiveDeskId, oldActiveDeskId)
+                    }
+                }
+            }
+
+        private val visibleTasksListener: VisibleTasksListener =
             object : VisibleTasksListener {
                 override fun onTasksVisibilityChanged(displayId: Int, visibleTasksCount: Int) {
                     ProtoLog.v(
@@ -3586,19 +3630,11 @@
                     controller,
                     { c ->
                         run {
-                            c.taskRepository.addVisibleTasksListener(listener, c.mainExecutor)
-                            c.taskbarDesktopTaskListener = taskbarDesktopTaskListener
-                            c.desktopModeEnterExitTransitionListener =
-                                desktopModeEntryExitTransitionListener
+                            syncInitialState(c)
+                            registerListeners(c)
                         }
                     },
-                    { c ->
-                        run {
-                            c.taskRepository.removeVisibleTasksListener(listener)
-                            c.taskbarDesktopTaskListener = null
-                            c.desktopModeEnterExitTransitionListener = null
-                        }
-                    },
+                    { c -> run { unregisterListeners(c) } },
                 )
         }
 
@@ -3694,6 +3730,31 @@
                 c.startLaunchIntentTransition(intent, options, displayId)
             }
         }
+
+        private fun syncInitialState(c: DesktopTasksController) {
+            remoteListener.call { l ->
+                // TODO: b/393962589 - implement desks limit.
+                val canCreateDesks = true
+                l.onListenerConnected(
+                    c.taskRepository.getDeskDisplayStateForRemote(),
+                    canCreateDesks,
+                )
+            }
+        }
+
+        private fun registerListeners(c: DesktopTasksController) {
+            c.taskRepository.addDeskChangeListener(deskChangeListener, c.mainExecutor)
+            c.taskRepository.addVisibleTasksListener(visibleTasksListener, c.mainExecutor)
+            c.taskbarDesktopTaskListener = taskbarDesktopTaskListener
+            c.desktopModeEnterExitTransitionListener = desktopModeEntryExitTransitionListener
+        }
+
+        private fun unregisterListeners(c: DesktopTasksController) {
+            c.taskRepository.removeDeskChangeListener(deskChangeListener)
+            c.taskRepository.removeVisibleTasksListener(visibleTasksListener)
+            c.taskbarDesktopTaskListener = null
+            c.desktopModeEnterExitTransitionListener = null
+        }
     }
 
     private fun logV(msg: String, vararg arguments: Any?) {
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandler.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandler.kt
index cb23180..d396d8b 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandler.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandler.kt
@@ -1138,8 +1138,11 @@
             .spring(FloatProperties.RECT_HEIGHT, endBounds.height().toFloat(), sizeSpringConfig)
             .addUpdateListener { animBounds, _ ->
                 val animFraction =
-                    (animBounds.width() - startBounds.width()).toFloat() /
-                        (endBounds.width() - startBounds.width())
+                    getAnimationFraction(
+                        startBounds = startBounds,
+                        endBounds = endBounds,
+                        animBounds = animBounds,
+                    )
                 val animScale = startScale + animFraction * (1 - startScale)
                 // Freeform animation starts with freeform animation offset relative to the commit
                 // animation and plays until the commit animation ends. For instance:
@@ -1191,16 +1194,38 @@
             .start()
     }
 
-    private fun logV(msg: String, vararg arguments: Any?) {
-        ProtoLog.v(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments)
-    }
-
-    private fun logE(msg: String, vararg arguments: Any?) {
-        ProtoLog.e(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments)
-    }
-
     companion object {
         private const val TAG = "SpringDragToDesktopTransitionHandler"
+
+        @VisibleForTesting
+        fun getAnimationFraction(startBounds: Rect, endBounds: Rect, animBounds: Rect): Float {
+            if (startBounds.width() != endBounds.width()) {
+                return (animBounds.width() - startBounds.width()).toFloat() /
+                    (endBounds.width() - startBounds.width())
+            }
+            if (startBounds.height() != endBounds.height()) {
+                return (animBounds.height() - startBounds.height()).toFloat() /
+                    (endBounds.height() - startBounds.height())
+            }
+            logW(
+                "same start and end sizes, returning 0: " +
+                    "startBounds=$startBounds, endBounds=$endBounds, animBounds=$animBounds"
+            )
+            return 0f
+        }
+
+        private fun logV(msg: String, vararg arguments: Any?) {
+            ProtoLog.v(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments)
+        }
+
+        private fun logW(msg: String, vararg arguments: Any?) {
+            ProtoLog.v(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments)
+        }
+
+        private fun logE(msg: String, vararg arguments: Any?) {
+            ProtoLog.e(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments)
+        }
+
         /** The freeform tasks initial scale when committing the drag-to-desktop gesture. */
         private val FREEFORM_TASKS_INITIAL_SCALE =
             propertyValue("freeform_tasks_initial_scale", scale = 100f, default = 0.9f)
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DragToDisplayTransitionHandler.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DragToDisplayTransitionHandler.kt
new file mode 100644
index 0000000..d51576a
--- /dev/null
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DragToDisplayTransitionHandler.kt
@@ -0,0 +1,57 @@
+/*
+ * Copyright (C) 2025 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.wm.shell.desktopmode
+
+import android.os.IBinder
+import android.view.SurfaceControl
+import android.window.TransitionInfo
+import android.window.TransitionRequestInfo
+import android.window.WindowContainerTransaction
+import com.android.wm.shell.transition.Transitions
+
+/** Handles the transition to drag a window to another display by dragging the caption. */
+class DragToDisplayTransitionHandler : Transitions.TransitionHandler {
+    override fun handleRequest(
+        transition: IBinder,
+        request: TransitionRequestInfo,
+    ): WindowContainerTransaction? {
+        return null
+    }
+
+    override fun startAnimation(
+        transition: IBinder,
+        info: TransitionInfo,
+        startTransaction: SurfaceControl.Transaction,
+        finishTransaction: SurfaceControl.Transaction,
+        finishCallback: Transitions.TransitionFinishCallback,
+    ): Boolean {
+        for (change in info.changes) {
+            val sc = change.leash
+            val endBounds = change.endAbsBounds
+            val endPosition = change.endRelOffset
+            startTransaction
+                .setWindowCrop(sc, endBounds.width(), endBounds.height())
+                .setPosition(sc, endPosition.x.toFloat(), endPosition.y.toFloat())
+            finishTransaction
+                .setWindowCrop(sc, endBounds.width(), endBounds.height())
+                .setPosition(sc, endPosition.x.toFloat(), endPosition.y.toFloat())
+        }
+
+        startTransaction.apply()
+        finishCallback.onTransitionFinished(null)
+        return true
+    }
+}
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/EnterDesktopTaskTransitionHandler.java b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/EnterDesktopTaskTransitionHandler.java
index 80e106f..4c17030 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/EnterDesktopTaskTransitionHandler.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/EnterDesktopTaskTransitionHandler.java
@@ -41,6 +41,7 @@
 import androidx.annotation.Nullable;
 
 import com.android.internal.jank.InteractionJankMonitor;
+import com.android.internal.util.LatencyTracker;
 import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource;
 import com.android.wm.shell.transition.Transitions;
 import com.android.wm.shell.windowdecor.OnTaskResizeAnimationListener;
@@ -63,20 +64,25 @@
 
     private final List<IBinder> mPendingTransitionTokens = new ArrayList<>();
     private final InteractionJankMonitor mInteractionJankMonitor;
+    private final LatencyTracker mLatencyTracker;
 
     private OnTaskResizeAnimationListener mOnTaskResizeAnimationListener;
 
     public EnterDesktopTaskTransitionHandler(
-            Transitions transitions, InteractionJankMonitor interactionJankMonitor) {
-        this(transitions, interactionJankMonitor, SurfaceControl.Transaction::new);
+            Transitions transitions,
+            InteractionJankMonitor interactionJankMonitor,
+            LatencyTracker latencyTracker) {
+        this(transitions, interactionJankMonitor, latencyTracker, SurfaceControl.Transaction::new);
     }
 
     public EnterDesktopTaskTransitionHandler(
             Transitions transitions,
             InteractionJankMonitor interactionJankMonitor,
+            LatencyTracker latencyTracker,
             Supplier<SurfaceControl.Transaction> supplier) {
         mTransitions = transitions;
         mInteractionJankMonitor = interactionJankMonitor;
+        mLatencyTracker = latencyTracker;
         mTransactionSupplier = supplier;
     }
 
@@ -122,6 +128,13 @@
             }
         }
 
+        if (transitionHandled
+                && info.getType()
+                        == DesktopModeTransitionTypes
+                                .TRANSIT_ENTER_DESKTOP_FROM_APP_HANDLE_MENU_BUTTON) {
+            mLatencyTracker.onActionEnd(LatencyTracker.ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_MENU);
+        }
+
         mPendingTransitionTokens.remove(transition);
 
         return transitionHandled;
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/VisualIndicatorViewContainer.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/VisualIndicatorViewContainer.kt
index 2317274..919e816 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/VisualIndicatorViewContainer.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/VisualIndicatorViewContainer.kt
@@ -44,6 +44,7 @@
 import com.android.wm.shell.shared.annotations.ShellMainThread
 import com.android.wm.shell.shared.bubbles.BubbleDropTargetBoundsProvider
 import com.android.wm.shell.windowdecor.WindowDecoration.SurfaceControlViewHostFactory
+import com.android.wm.shell.windowdecor.tiling.SnapEventHandler
 
 /**
  * Container for the view / viewhost of the indicator, ensuring it is created / animated off the
@@ -60,6 +61,7 @@
     private val surfaceControlViewHostFactory: SurfaceControlViewHostFactory =
         object : SurfaceControlViewHostFactory {},
     private val bubbleBoundsProvider: BubbleDropTargetBoundsProvider?,
+    private val snapEventHandler: SnapEventHandler,
 ) {
     @VisibleForTesting var indicatorView: View? = null
     private var indicatorViewHost: SurfaceControlViewHost? = null
@@ -164,9 +166,15 @@
                 displayController.getDisplayLayout(taskInfo.displayId)
                     ?: error("Expected to find DisplayLayout for taskId${taskInfo.taskId}.")
             if (currentType == IndicatorType.NO_INDICATOR) {
-                fadeInIndicator(layout, newType)
+                fadeInIndicator(layout, newType, taskInfo.displayId, snapEventHandler)
             } else if (newType == IndicatorType.NO_INDICATOR) {
-                fadeOutIndicator(layout, currentType, /* finishCallback= */ null)
+                fadeOutIndicator(
+                    layout,
+                    currentType,
+                    /* finishCallback= */ null,
+                    taskInfo.displayId,
+                    snapEventHandler,
+                )
             } else {
                 val animStartType = IndicatorType.valueOf(currentType.name)
                 val animator =
@@ -177,6 +185,8 @@
                             animStartType,
                             newType,
                             bubbleBoundsProvider,
+                            taskInfo.displayId,
+                            snapEventHandler,
                         )
                     } ?: return@execute
                 animator.start()
@@ -188,12 +198,24 @@
      * Fade indicator in as provided type. Animator fades it in while expanding the bounds outwards.
      */
     @VisibleForTesting
-    fun fadeInIndicator(layout: DisplayLayout, type: IndicatorType) {
+    fun fadeInIndicator(
+        layout: DisplayLayout,
+        type: IndicatorType,
+        displayId: Int,
+        snapEventHandler: SnapEventHandler,
+    ) {
         desktopExecutor.assertCurrentThread()
         indicatorView?.let {
             it.setBackgroundResource(R.drawable.desktop_windowing_transition_background)
             val animator =
-                VisualIndicatorAnimator.fadeBoundsIn(it, type, layout, bubbleBoundsProvider)
+                VisualIndicatorAnimator.fadeBoundsIn(
+                    it,
+                    type,
+                    layout,
+                    bubbleBoundsProvider,
+                    displayId,
+                    snapEventHandler,
+                )
             animator.start()
         }
     }
@@ -207,6 +229,8 @@
         layout: DisplayLayout,
         currentType: IndicatorType,
         finishCallback: Runnable?,
+        displayId: Int,
+        snapEventHandler: SnapEventHandler,
     ) {
         if (currentType == IndicatorType.NO_INDICATOR) {
             // In rare cases, fade out can be requested before the indicator has determined its
@@ -223,6 +247,8 @@
                         animStartType,
                         layout,
                         bubbleBoundsProvider,
+                        displayId,
+                        snapEventHandler,
                     )
                 animator.addListener(
                     object : AnimatorListenerAdapter() {
@@ -328,8 +354,17 @@
                 type: IndicatorType,
                 displayLayout: DisplayLayout,
                 bubbleBoundsProvider: BubbleDropTargetBoundsProvider?,
+                displayId: Int,
+                snapEventHandler: SnapEventHandler,
             ): VisualIndicatorAnimator {
-                val endBounds = getIndicatorBounds(displayLayout, type, bubbleBoundsProvider)
+                val endBounds =
+                    getIndicatorBounds(
+                        displayLayout,
+                        type,
+                        bubbleBoundsProvider,
+                        displayId,
+                        snapEventHandler,
+                    )
                 val startBounds = getMinBounds(endBounds)
                 view.background.bounds = startBounds
 
@@ -345,11 +380,19 @@
                 type: IndicatorType,
                 displayLayout: DisplayLayout,
                 bubbleBoundsProvider: BubbleDropTargetBoundsProvider?,
+                displayId: Int,
+                snapEventHandler: SnapEventHandler,
             ): VisualIndicatorAnimator {
-                val startBounds = getIndicatorBounds(displayLayout, type, bubbleBoundsProvider)
+                val startBounds =
+                    getIndicatorBounds(
+                        displayLayout,
+                        type,
+                        bubbleBoundsProvider,
+                        displayId,
+                        snapEventHandler,
+                    )
                 val endBounds = getMinBounds(startBounds)
                 view.background.bounds = startBounds
-
                 val animator = VisualIndicatorAnimator(view, startBounds, endBounds)
                 animator.interpolator = DecelerateInterpolator()
                 setupIndicatorAnimation(animator, AlphaAnimType.ALPHA_FADE_OUT_ANIM)
@@ -375,9 +418,25 @@
                 origType: IndicatorType,
                 newType: IndicatorType,
                 bubbleBoundsProvider: BubbleDropTargetBoundsProvider?,
+                displayId: Int,
+                snapEventHandler: SnapEventHandler,
             ): VisualIndicatorAnimator {
-                val startBounds = getIndicatorBounds(displayLayout, origType, bubbleBoundsProvider)
-                val endBounds = getIndicatorBounds(displayLayout, newType, bubbleBoundsProvider)
+                val startBounds =
+                    getIndicatorBounds(
+                        displayLayout,
+                        origType,
+                        bubbleBoundsProvider,
+                        displayId,
+                        snapEventHandler,
+                    )
+                val endBounds =
+                    getIndicatorBounds(
+                        displayLayout,
+                        newType,
+                        bubbleBoundsProvider,
+                        displayId,
+                        snapEventHandler,
+                    )
                 val animator = VisualIndicatorAnimator(view, startBounds, endBounds)
                 animator.interpolator = DecelerateInterpolator()
                 setupIndicatorAnimation(animator, AlphaAnimType.ALPHA_NO_CHANGE_ANIM)
@@ -389,6 +448,8 @@
                 layout: DisplayLayout,
                 type: IndicatorType,
                 bubbleBoundsProvider: BubbleDropTargetBoundsProvider?,
+                displayId: Int,
+                snapEventHandler: SnapEventHandler,
             ): Rect {
                 val desktopStableBounds = Rect()
                 layout.getStableBounds(desktopStableBounds)
@@ -417,21 +478,25 @@
                         )
                     }
 
-                    IndicatorType.TO_SPLIT_LEFT_INDICATOR ->
+                    IndicatorType.TO_SPLIT_LEFT_INDICATOR -> {
+                        val currentLeftBounds = snapEventHandler.getLeftSnapBoundsIfTiled(displayId)
                         return Rect(
                             padding,
                             padding,
-                            desktopStableBounds.width() / 2 - padding,
+                            currentLeftBounds.right - padding,
                             desktopStableBounds.height(),
                         )
-
-                    IndicatorType.TO_SPLIT_RIGHT_INDICATOR ->
+                    }
+                    IndicatorType.TO_SPLIT_RIGHT_INDICATOR -> {
+                        val currentRightBounds =
+                            snapEventHandler.getRightSnapBoundsIfTiled(displayId)
                         return Rect(
-                            desktopStableBounds.width() / 2 + padding,
+                            currentRightBounds.left + padding,
                             padding,
                             desktopStableBounds.width() - padding,
                             desktopStableBounds.height(),
                         )
+                    }
                     IndicatorType.TO_BUBBLE_LEFT_INDICATOR ->
                         return bubbleBoundsProvider?.getBubbleBarExpandedViewDropTargetBounds(
                             /* onLeft= */ true
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/freeform/OWNERS b/libs/WindowManager/Shell/src/com/android/wm/shell/freeform/OWNERS
index 44d46ee..7a63ec5 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/freeform/OWNERS
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/freeform/OWNERS
@@ -2,7 +2,6 @@
 atsjenk@google.com
 jorgegil@google.com
 madym@google.com
-nmusgrave@google.com
 pbdr@google.com
 vaniadesmonda@google.com
 pragyabajoria@google.com
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/tv/OWNERS b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/tv/OWNERS
index 5aa3c4e..245669b 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/tv/OWNERS
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/tv/OWNERS
@@ -1,3 +1,2 @@
 # WM shell sub-module TV pip owner
-galinap@google.com
 bronger@google.com
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/pip2/phone/PipResizeGestureHandler.java b/libs/WindowManager/Shell/src/com/android/wm/shell/pip2/phone/PipResizeGestureHandler.java
index b869bf1..af1e98a 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/pip2/phone/PipResizeGestureHandler.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/pip2/phone/PipResizeGestureHandler.java
@@ -395,6 +395,7 @@
     void finishResize() {
         if (mLastResizeBounds.isEmpty()) {
             resetState();
+            return;
         }
 
         // Cache initial bounds after release for animation before mLastResizeBounds are modified.
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/pip2/phone/PipScheduler.java b/libs/WindowManager/Shell/src/com/android/wm/shell/pip2/phone/PipScheduler.java
index 7805ec3..383afcf 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/pip2/phone/PipScheduler.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/pip2/phone/PipScheduler.java
@@ -16,9 +16,11 @@
 
 package com.android.wm.shell.pip2.phone;
 
+import android.app.PictureInPictureParams;
 import android.content.Context;
 import android.graphics.Matrix;
 import android.graphics.Rect;
+import android.os.SystemProperties;
 import android.view.SurfaceControl;
 import android.window.WindowContainerToken;
 import android.window.WindowContainerTransaction;
@@ -28,6 +30,7 @@
 
 import com.android.internal.annotations.VisibleForTesting;
 import com.android.internal.protolog.ProtoLog;
+import com.android.wm.shell.common.ScreenshotUtils;
 import com.android.wm.shell.common.ShellExecutor;
 import com.android.wm.shell.common.pip.PipBoundsState;
 import com.android.wm.shell.common.pip.PipDesktopState;
@@ -39,6 +42,7 @@
 import com.android.wm.shell.splitscreen.SplitScreenController;
 
 import java.util.Optional;
+import java.util.function.Supplier;
 
 /**
  * Scheduler for Shell initiated PiP transitions and animations.
@@ -46,6 +50,15 @@
 public class PipScheduler {
     private static final String TAG = PipScheduler.class.getSimpleName();
 
+    /**
+     * The fixed start delay in ms when fading out the content overlay from bounds animation.
+     * The fadeout animation is guaranteed to start after the client has drawn under the new config.
+     */
+    public static final int EXTRA_CONTENT_OVERLAY_FADE_OUT_DELAY_MS =
+            SystemProperties.getInt(
+                    "persist.wm.debug.extra_content_overlay_fade_out_delay_ms", 400);
+    private static final int CONTENT_OVERLAY_FADE_OUT_DURATION_MS = 500;
+
     private final Context mContext;
     private final PipBoundsState mPipBoundsState;
     private final ShellExecutor mMainExecutor;
@@ -60,6 +73,7 @@
     @Nullable private Runnable mUpdateMovementBoundsRunnable;
 
     private PipAlphaAnimatorSupplier mPipAlphaAnimatorSupplier;
+    private Supplier<PictureInPictureParams> mPipParamsSupplier;
 
     public PipScheduler(Context context,
             PipBoundsState pipBoundsState,
@@ -222,6 +236,16 @@
         tx.apply();
     }
 
+    void startOverlayFadeoutAnimation(@NonNull SurfaceControl overlayLeash,
+            boolean withStartDelay, @NonNull Runnable onAnimationEnd) {
+        PipAlphaAnimator animator = mPipAlphaAnimatorSupplier.get(mContext, overlayLeash,
+                null /* startTx */, null /* finishTx */, PipAlphaAnimator.FADE_OUT);
+        animator.setDuration(CONTENT_OVERLAY_FADE_OUT_DURATION_MS);
+        animator.setStartDelay(withStartDelay ? EXTRA_CONTENT_OVERLAY_FADE_OUT_DELAY_MS : 0);
+        animator.setAnimationEndCallback(onAnimationEnd);
+        animator.start();
+    }
+
     void setUpdateMovementBoundsRunnable(@Nullable Runnable updateMovementBoundsRunnable) {
         mUpdateMovementBoundsRunnable = updateMovementBoundsRunnable;
     }
@@ -236,6 +260,25 @@
         if (mPipBoundsState.getBounds().equals(newBounds)) {
             return;
         }
+
+        // Take a screenshot of PiP and fade it out after resize is finished if seamless resize
+        // is off and if the PiP size is changing.
+        boolean animateCrossFadeResize = !getPipParams().isSeamlessResizeEnabled()
+                && !(mPipBoundsState.getBounds().width() == newBounds.width()
+                && mPipBoundsState.getBounds().height() == newBounds.height());
+        if (animateCrossFadeResize) {
+            final Rect crop = new Rect(newBounds);
+            crop.offsetTo(0, 0);
+            // Note: Put this at layer=MAX_VALUE-2 since the input consumer for PIP is placed at
+            //       MAX_VALUE-1
+            final SurfaceControl snapshotSurface = ScreenshotUtils.takeScreenshot(
+                    mSurfaceControlTransactionFactory.getTransaction(),
+                    mPipTransitionState.getPinnedTaskLeash(), crop, Integer.MAX_VALUE - 2);
+            startOverlayFadeoutAnimation(snapshotSurface, false /* withStartDelay */, () -> {
+                mSurfaceControlTransactionFactory.getTransaction().remove(snapshotSurface).apply();
+            });
+        }
+
         mPipBoundsState.setBounds(newBounds);
         maybeUpdateMovementBounds();
     }
@@ -259,4 +302,14 @@
     void setPipAlphaAnimatorSupplier(@NonNull PipAlphaAnimatorSupplier supplier) {
         mPipAlphaAnimatorSupplier = supplier;
     }
+
+    void setPipParamsSupplier(@NonNull Supplier<PictureInPictureParams> pipParamsSupplier) {
+        mPipParamsSupplier = pipParamsSupplier;
+    }
+
+    @NonNull
+    private PictureInPictureParams getPipParams() {
+        if (mPipParamsSupplier == null) return new PictureInPictureParams.Builder().build();
+        return mPipParamsSupplier.get();
+    }
 }
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/pip2/phone/PipTaskListener.java b/libs/WindowManager/Shell/src/com/android/wm/shell/pip2/phone/PipTaskListener.java
index dbcbf36..d663484 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/pip2/phone/PipTaskListener.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/pip2/phone/PipTaskListener.java
@@ -91,6 +91,7 @@
             });
         }
         mPipResizeAnimatorSupplier = PipResizeAnimator::new;
+        mPipScheduler.setPipParamsSupplier(this::getPictureInPictureParams);
     }
 
     void setPictureInPictureParams(@Nullable PictureInPictureParams params) {
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/pip2/phone/PipTransition.java b/libs/WindowManager/Shell/src/com/android/wm/shell/pip2/phone/PipTransition.java
index 0cfab11..91fbd45 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/pip2/phone/PipTransition.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/pip2/phone/PipTransition.java
@@ -50,7 +50,6 @@
 import android.graphics.Rect;
 import android.os.Bundle;
 import android.os.IBinder;
-import android.os.SystemProperties;
 import android.view.SurfaceControl;
 import android.view.WindowManager;
 import android.window.TransitionInfo;
@@ -102,15 +101,6 @@
             "animating_bounds_change_duration";
     static final int BOUNDS_CHANGE_JUMPCUT_DURATION = 0;
 
-    /**
-     * The fixed start delay in ms when fading out the content overlay from bounds animation.
-     * The fadeout animation is guaranteed to start after the client has drawn under the new config.
-     */
-    private static final int EXTRA_CONTENT_OVERLAY_FADE_OUT_DELAY_MS =
-            SystemProperties.getInt(
-                    "persist.wm.debug.extra_content_overlay_fade_out_delay_ms", 400);
-    private static final int CONTENT_OVERLAY_FADE_OUT_DURATION_MS = 500;
-
     //
     // Dependencies
     //
@@ -481,7 +471,8 @@
 
         if (swipePipToHomeOverlay != null) {
             // fadeout the overlay if needed.
-            startOverlayFadeoutAnimation(swipePipToHomeOverlay, () -> {
+            mPipScheduler.startOverlayFadeoutAnimation(swipePipToHomeOverlay,
+                    true /* withStartDelay */, () -> {
                 SurfaceControl.Transaction tx = new SurfaceControl.Transaction();
                 tx.remove(swipePipToHomeOverlay);
                 tx.apply();
@@ -542,8 +533,8 @@
         animator.setAnimationStartCallback(() -> animator.setEnterStartState(pipChange));
         animator.setAnimationEndCallback(() -> {
             if (animator.getContentOverlayLeash() != null) {
-                startOverlayFadeoutAnimation(animator.getContentOverlayLeash(),
-                        animator::clearAppIconOverlay);
+                mPipScheduler.startOverlayFadeoutAnimation(animator.getContentOverlayLeash(),
+                        true /* withStartDelay */, animator::clearAppIconOverlay);
             }
             finishTransition();
         });
@@ -551,16 +542,6 @@
         return true;
     }
 
-    private void startOverlayFadeoutAnimation(@NonNull SurfaceControl overlayLeash,
-            @NonNull Runnable onAnimationEnd) {
-        PipAlphaAnimator animator = new PipAlphaAnimator(mContext, overlayLeash,
-                null /* startTx */, null /* finishTx */, PipAlphaAnimator.FADE_OUT);
-        animator.setDuration(CONTENT_OVERLAY_FADE_OUT_DURATION_MS);
-        animator.setStartDelay(EXTRA_CONTENT_OVERLAY_FADE_OUT_DELAY_MS);
-        animator.setAnimationEndCallback(onAnimationEnd);
-        animator.start();
-    }
-
     private void handleBoundsEnterFixedRotation(TransitionInfo info,
             TransitionInfo.Change outPipTaskChange,
             TransitionInfo.Change outPipActivityChange) {
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java b/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java
index 0438d16..9302347 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java
@@ -93,6 +93,7 @@
 import android.app.ActivityOptions;
 import android.app.IActivityTaskManager;
 import android.app.PendingIntent;
+import android.app.PictureInPictureParams;
 import android.app.TaskInfo;
 import android.content.ActivityNotFoundException;
 import android.content.Context;
@@ -2890,6 +2891,16 @@
                     prepareEnterSplitScreen(out);
                     mSplitTransitions.setEnterTransition(transition, request.getRemoteTransition(),
                             TRANSIT_SPLIT_SCREEN_PAIR_OPEN, !mIsDropEntering);
+                } else if (isSplitScreenVisible() && isOpening) {
+                    // launching into an existing split stage; possibly launchAdjacent
+                    // If we're replacing a pip-able app, we need to let mixed handler take care of
+                    // it. Otherwise we'll just treat it as an enter+resize
+                    if (mSplitLayout.calculateCurrentSnapPosition() != SNAP_TO_2_50_50) {
+                        // updated layout will get applied in startAnimation pendingResize
+                        mSplitTransitions.setEnterTransition(transition,
+                                request.getRemoteTransition(),
+                                TRANSIT_SPLIT_SCREEN_OPEN_TO_SIDE, true /*resizeAnim*/);
+                    }
                 } else if (inFullscreen && isSplitScreenVisible()) {
                     // If the trigger task is in fullscreen and in split, exit split and place
                     // task on top
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/tv/OWNERS b/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/tv/OWNERS
index 28be0ef..9dc0ebb 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/tv/OWNERS
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/tv/OWNERS
@@ -1,3 +1,2 @@
 # WM shell sub-module TV splitscreen owner
-galinap@google.com
 bronger@google.com
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/transition/DefaultTransitionHandler.java b/libs/WindowManager/Shell/src/com/android/wm/shell/transition/DefaultTransitionHandler.java
index e9c6ade..3652a16 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/transition/DefaultTransitionHandler.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/transition/DefaultTransitionHandler.java
@@ -67,7 +67,6 @@
 import static com.android.internal.policy.TransitionAnimation.WALLPAPER_TRANSITION_NONE;
 import static com.android.internal.policy.TransitionAnimation.WALLPAPER_TRANSITION_OPEN;
 import static com.android.wm.shell.transition.DefaultSurfaceAnimator.buildSurfaceAnimation;
-import static com.android.wm.shell.transition.TransitionAnimationHelper.edgeExtendWindow;
 import static com.android.wm.shell.transition.TransitionAnimationHelper.getTransitionBackgroundColorIfSet;
 import static com.android.wm.shell.transition.TransitionAnimationHelper.getTransitionTypeFromInfo;
 import static com.android.wm.shell.transition.TransitionAnimationHelper.isCoveredByOpaqueFullscreenChange;
@@ -543,21 +542,9 @@
                         backgroundColorForTransition);
 
                 if (!isTask && a.getExtensionEdges() != 0x0) {
-                    if (com.android.graphics.libgui.flags.Flags.edgeExtensionShader()) {
-                        startTransaction.setEdgeExtensionEffect(
-                                change.getLeash(), a.getExtensionEdges());
-                        finishTransaction.setEdgeExtensionEffect(change.getLeash(), /* edge */ 0);
-                    } else {
-                        if (!TransitionUtil.isOpeningType(mode)) {
-                            // Can screenshot now (before startTransaction is applied)
-                            edgeExtendWindow(change, a, startTransaction, finishTransaction);
-                        } else {
-                            // Need to screenshot after startTransaction is applied otherwise
-                            // activity may not be visible or ready yet.
-                            postStartTransactionCallbacks
-                                    .add(t -> edgeExtendWindow(change, a, t, finishTransaction));
-                        }
-                    }
+                    startTransaction.setEdgeExtensionEffect(
+                            change.getLeash(), a.getExtensionEdges());
+                    finishTransaction.setEdgeExtensionEffect(change.getLeash(), /* edge */ 0);
                 }
 
                 final Rect clipRect = TransitionUtil.isClosingType(mode)
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/transition/FocusTransitionObserver.java b/libs/WindowManager/Shell/src/com/android/wm/shell/transition/FocusTransitionObserver.java
index e04682a..f0f1ad0 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/transition/FocusTransitionObserver.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/transition/FocusTransitionObserver.java
@@ -16,6 +16,7 @@
 
 package com.android.wm.shell.transition;
 
+import static android.app.ActivityTaskManager.INVALID_TASK_ID;
 import static android.view.Display.DEFAULT_DISPLAY;
 import static android.view.Display.INVALID_DISPLAY;
 import static android.view.WindowManager.TRANSIT_CHANGE;
@@ -216,6 +217,17 @@
     }
 
     /**
+     * Gets the globally focused task ID.
+     */
+    public int getGloballyFocusedTaskId() {
+        if (!enableDisplayFocusInShellTransitions() || mFocusedDisplayId == INVALID_DISPLAY) {
+            return INVALID_TASK_ID;
+        }
+        final RunningTaskInfo globallyFocusedTask = mFocusedTaskOnDisplay.get(mFocusedDisplayId);
+        return globallyFocusedTask != null ? globallyFocusedTask.taskId : INVALID_TASK_ID;
+    }
+
+    /**
      * Checks whether the given task has focused globally on the system.
      * (Note {@link RunningTaskInfo#isFocused} represents per-display focus.)
      */
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/transition/TransitionAnimationHelper.java b/libs/WindowManager/Shell/src/com/android/wm/shell/transition/TransitionAnimationHelper.java
index 7984bce..edfb560 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/transition/TransitionAnimationHelper.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/transition/TransitionAnimationHelper.java
@@ -26,7 +26,6 @@
 import static android.view.WindowManager.TRANSIT_TO_FRONT;
 import static android.window.TransitionInfo.FLAGS_IS_NON_APP_WINDOW;
 import static android.window.TransitionInfo.FLAG_IS_DISPLAY;
-import static android.window.TransitionInfo.FLAG_STARTING_WINDOW_TRANSFER_RECIPIENT;
 import static android.window.TransitionInfo.FLAG_TRANSLUCENT;
 
 import static com.android.internal.policy.TransitionAnimation.WALLPAPER_TRANSITION_CLOSE;
@@ -39,20 +38,10 @@
 import android.annotation.NonNull;
 import android.annotation.Nullable;
 import android.app.WindowConfiguration;
-import android.graphics.BitmapShader;
-import android.graphics.Canvas;
 import android.graphics.Color;
-import android.graphics.Insets;
-import android.graphics.Paint;
-import android.graphics.PixelFormat;
-import android.graphics.Rect;
-import android.graphics.Shader;
-import android.view.Surface;
 import android.view.SurfaceControl;
 import android.view.WindowManager;
 import android.view.animation.Animation;
-import android.view.animation.Transformation;
-import android.window.ScreenCapture;
 import android.window.TransitionInfo;
 
 import com.android.internal.R;
@@ -317,129 +306,6 @@
     }
 
     /**
-     * Adds edge extension surface to the given {@code change} for edge extension animation.
-     */
-    public static void edgeExtendWindow(@NonNull TransitionInfo.Change change,
-            @NonNull Animation a, @NonNull SurfaceControl.Transaction startTransaction,
-            @NonNull SurfaceControl.Transaction finishTransaction) {
-        // Do not create edge extension surface for transfer starting window change.
-        // The app surface could be empty thus nothing can draw on the hardware renderer, which will
-        // block this thread when calling Surface#unlockCanvasAndPost.
-        if ((change.getFlags() & FLAG_STARTING_WINDOW_TRANSFER_RECIPIENT) != 0) {
-            return;
-        }
-        final Transformation transformationAtStart = new Transformation();
-        a.getTransformationAt(0, transformationAtStart);
-        final Transformation transformationAtEnd = new Transformation();
-        a.getTransformationAt(1, transformationAtEnd);
-
-        // We want to create an extension surface that is the maximal size and the animation will
-        // take care of cropping any part that overflows.
-        final Insets maxExtensionInsets = Insets.min(
-                transformationAtStart.getInsets(), transformationAtEnd.getInsets());
-
-        final int targetSurfaceHeight = Math.max(change.getStartAbsBounds().height(),
-                change.getEndAbsBounds().height());
-        final int targetSurfaceWidth = Math.max(change.getStartAbsBounds().width(),
-                change.getEndAbsBounds().width());
-        if (maxExtensionInsets.left < 0) {
-            final Rect edgeBounds = new Rect(0, 0, 1, targetSurfaceHeight);
-            final Rect extensionRect = new Rect(0, 0,
-                    -maxExtensionInsets.left, targetSurfaceHeight);
-            final int xPos = maxExtensionInsets.left;
-            final int yPos = 0;
-            createExtensionSurface(change.getLeash(), edgeBounds, extensionRect, xPos, yPos,
-                    "Left Edge Extension", startTransaction, finishTransaction);
-        }
-
-        if (maxExtensionInsets.top < 0) {
-            final Rect edgeBounds = new Rect(0, 0, targetSurfaceWidth, 1);
-            final Rect extensionRect = new Rect(0, 0,
-                    targetSurfaceWidth, -maxExtensionInsets.top);
-            final int xPos = 0;
-            final int yPos = maxExtensionInsets.top;
-            createExtensionSurface(change.getLeash(), edgeBounds, extensionRect, xPos, yPos,
-                    "Top Edge Extension", startTransaction, finishTransaction);
-        }
-
-        if (maxExtensionInsets.right < 0) {
-            final Rect edgeBounds = new Rect(targetSurfaceWidth - 1, 0,
-                    targetSurfaceWidth, targetSurfaceHeight);
-            final Rect extensionRect = new Rect(0, 0,
-                    -maxExtensionInsets.right, targetSurfaceHeight);
-            final int xPos = targetSurfaceWidth;
-            final int yPos = 0;
-            createExtensionSurface(change.getLeash(), edgeBounds, extensionRect, xPos, yPos,
-                    "Right Edge Extension", startTransaction, finishTransaction);
-        }
-
-        if (maxExtensionInsets.bottom < 0) {
-            final Rect edgeBounds = new Rect(0, targetSurfaceHeight - 1,
-                    targetSurfaceWidth, targetSurfaceHeight);
-            final Rect extensionRect = new Rect(0, 0,
-                    targetSurfaceWidth, -maxExtensionInsets.bottom);
-            final int xPos = maxExtensionInsets.left;
-            final int yPos = targetSurfaceHeight;
-            createExtensionSurface(change.getLeash(), edgeBounds, extensionRect, xPos, yPos,
-                    "Bottom Edge Extension", startTransaction, finishTransaction);
-        }
-    }
-
-    /**
-     * Takes a screenshot of {@code surfaceToExtend}'s edge and extends it for edge extension
-     * animation.
-     */
-    private static SurfaceControl createExtensionSurface(@NonNull SurfaceControl surfaceToExtend,
-            @NonNull Rect edgeBounds, @NonNull Rect extensionRect, int xPos, int yPos,
-            @NonNull String layerName, @NonNull SurfaceControl.Transaction startTransaction,
-            @NonNull SurfaceControl.Transaction finishTransaction) {
-        final SurfaceControl edgeExtensionLayer = new SurfaceControl.Builder()
-                .setName(layerName)
-                .setParent(surfaceToExtend)
-                .setHidden(true)
-                .setCallsite("TransitionAnimationHelper#createExtensionSurface")
-                .setOpaque(true)
-                .setBufferSize(extensionRect.width(), extensionRect.height())
-                .build();
-
-        final ScreenCapture.LayerCaptureArgs captureArgs =
-                new ScreenCapture.LayerCaptureArgs.Builder(surfaceToExtend)
-                        .setSourceCrop(edgeBounds)
-                        .setFrameScale(1)
-                        .setPixelFormat(PixelFormat.RGBA_8888)
-                        .setChildrenOnly(true)
-                        .setAllowProtected(false)
-                        .setCaptureSecureLayers(true)
-                        .build();
-        final ScreenCapture.ScreenshotHardwareBuffer edgeBuffer =
-                ScreenCapture.captureLayers(captureArgs);
-
-        if (edgeBuffer == null) {
-            ProtoLog.e(ShellProtoLogGroup.WM_SHELL_TRANSITIONS,
-                    "Failed to capture edge of window.");
-            return null;
-        }
-
-        final BitmapShader shader = new BitmapShader(edgeBuffer.asBitmap(),
-                Shader.TileMode.CLAMP, Shader.TileMode.CLAMP);
-        final Paint paint = new Paint();
-        paint.setShader(shader);
-
-        final Surface surface = new Surface(edgeExtensionLayer);
-        final Canvas c = surface.lockHardwareCanvas();
-        c.drawRect(extensionRect, paint);
-        surface.unlockCanvasAndPost(c);
-        surface.release();
-
-        startTransaction.setLayer(edgeExtensionLayer, Integer.MIN_VALUE);
-        startTransaction.setPosition(edgeExtensionLayer, xPos, yPos);
-        startTransaction.setVisibility(edgeExtensionLayer, true);
-        finishTransaction.remove(edgeExtensionLayer);
-
-        return edgeExtensionLayer;
-    }
-
-    /**
      * Returns whether there is an opaque fullscreen Change positioned in front of the given Change
      * in the given TransitionInfo.
      */
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/CaptionWindowDecoration.java b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/CaptionWindowDecoration.java
index 49510c8..5e8c1fe 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/CaptionWindowDecoration.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/CaptionWindowDecoration.java
@@ -61,6 +61,7 @@
 import com.android.wm.shell.common.SyncTransactionQueue;
 import com.android.wm.shell.shared.annotations.ShellBackgroundThread;
 import com.android.wm.shell.shared.annotations.ShellMainThread;
+import com.android.wm.shell.shared.desktopmode.DesktopModeStatus;
 import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHost;
 import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHostSupplier;
 import com.android.wm.shell.windowdecor.extension.TaskInfoKt;
@@ -247,6 +248,10 @@
         relayoutParams.mOccludingCaptionElements.add(controlsElement);
         relayoutParams.mCaptionTopPadding = getTopPadding(relayoutParams,
                 taskInfo.getConfiguration().windowConfiguration.getBounds(), displayInsetsState);
+        // Set opaque background for all freeform tasks to prevent freeform tasks below
+        // from being visible if freeform task window above is translucent.
+        // Otherwise if fluid resize is enabled, add a background to freeform tasks.
+        relayoutParams.mShouldSetBackground = DesktopModeStatus.shouldSetBackground(taskInfo);
     }
 
     @SuppressLint("MissingPermission")
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModel.java b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModel.java
index cf139a0..7ef1a93 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModel.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModel.java
@@ -92,6 +92,7 @@
 import com.android.internal.jank.Cuj;
 import com.android.internal.jank.InteractionJankMonitor;
 import com.android.internal.protolog.ProtoLog;
+import com.android.internal.util.LatencyTracker;
 import com.android.window.flags.Flags;
 import com.android.wm.shell.R;
 import com.android.wm.shell.RootTaskDisplayAreaOrganizer;
@@ -158,6 +159,8 @@
 import kotlin.Unit;
 import kotlin.jvm.functions.Function1;
 
+import org.jetbrains.annotations.NotNull;
+
 import kotlinx.coroutines.CoroutineScope;
 import kotlinx.coroutines.ExperimentalCoroutinesApi;
 import kotlinx.coroutines.MainCoroutineDispatcher;
@@ -260,6 +263,7 @@
     private final DesktopModeCompatPolicy mDesktopModeCompatPolicy;
     private final DesktopTilingDecorViewModel mDesktopTilingDecorViewModel;
     private final MultiDisplayDragMoveIndicatorController mMultiDisplayDragMoveIndicatorController;
+    private final LatencyTracker mLatencyTracker;
 
     public DesktopModeWindowDecorViewModel(
             Context context,
@@ -466,6 +470,7 @@
         mDesktopTilingDecorViewModel = desktopTilingDecorViewModel;
         mDesktopTasksController.setSnapEventHandler(this);
         mMultiDisplayDragMoveIndicatorController = multiDisplayDragMoveIndicatorController;
+        mLatencyTracker = LatencyTracker.getInstance(mContext);
         shellInit.addInitCallback(this::onInit, this);
     }
 
@@ -553,6 +558,7 @@
         } else {
             decoration.relayout(taskInfo, taskInfo.isFocused, decoration.mExclusionRegion);
         }
+        mDesktopTilingDecorViewModel.onTaskInfoChange(taskInfo);
         mActivityOrientationChangeHandler.ifPresent(handler ->
                 handler.handleActivityOrientationChange(oldTaskInfo, taskInfo));
     }
@@ -764,11 +770,19 @@
         final WindowContainerTransaction wct = new WindowContainerTransaction();
         mInteractionJankMonitor.begin(decoration.mTaskSurface, mContext, mMainHandler,
                 CUJ_DESKTOP_MODE_ENTER_MODE_APP_HANDLE_MENU);
+        mLatencyTracker.onActionStart(LatencyTracker.ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_MENU);
         // App sometimes draws before the insets from WindowDecoration#relayout have
         // been added, so they must be added here
         decoration.addCaptionInset(wct);
-        mDesktopTasksController.moveTaskToDefaultDeskAndActivate(taskId, wct, source,
-                /* remoteTransition= */ null, /* moveToDesktopCallback */ null);
+        if (!mDesktopTasksController.moveTaskToDefaultDeskAndActivate(
+                taskId,
+                wct,
+                source,
+                /* remoteTransition= */ null,
+                /* moveToDesktopCallback= */ null)) {
+            mLatencyTracker.onActionCancel(
+                    LatencyTracker.ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_MENU);
+        }
         decoration.closeHandleMenu();
 
         if (source == DesktopModeTransitionSource.APP_HANDLE_MENU_BUTTON) {
@@ -924,6 +938,18 @@
         return mDesktopTilingDecorViewModel.moveTaskToFrontIfTiled(taskInfo);
     }
 
+    @Override
+    @NotNull
+    public Rect getLeftSnapBoundsIfTiled(int displayId) {
+        return mDesktopTilingDecorViewModel.getLeftSnapBoundsIfTiled(displayId);
+    }
+
+    @Override
+    @NotNull
+    public Rect getRightSnapBoundsIfTiled(int displayId) {
+        return mDesktopTilingDecorViewModel.getRightSnapBoundsIfTiled(displayId);
+    }
+
     private class DesktopModeTouchEventListener extends GestureDetector.SimpleOnGestureListener
             implements View.OnClickListener, View.OnTouchListener, View.OnLongClickListener,
             View.OnGenericMotionListener, DragDetector.MotionEventHandler {
@@ -963,7 +989,7 @@
             final int touchSlop = ViewConfiguration.get(mContext).getScaledTouchSlop();
             final long appHandleHoldToDragDuration =
                     DesktopModeFlags.ENABLE_HOLD_TO_DRAG_APP_HANDLE.isTrue()
-                    ? APP_HANDLE_HOLD_TO_DRAG_DURATION_MS : 0;
+                            ? APP_HANDLE_HOLD_TO_DRAG_DURATION_MS : 0;
             mHandleDragDetector = new DragDetector(this, appHandleHoldToDragDuration,
                     touchSlop);
             mHeaderDragDetector = new DragDetector(this, APP_HEADER_HOLD_TO_DRAG_DURATION_MS,
@@ -1016,7 +1042,7 @@
                         decoration.mTaskInfo.userId);
                 if (DesktopModeFlags.ENABLE_FULLY_IMMERSIVE_IN_DESKTOP.isTrue()
                         && desktopRepository.isTaskInFullImmersiveState(
-                                decoration.mTaskInfo.taskId)) {
+                        decoration.mTaskInfo.taskId)) {
                     // Task is in immersive and should exit.
                     onEnterOrExitImmersive(decoration.mTaskInfo);
                 } else {
@@ -1310,6 +1336,7 @@
         /**
          * Perform a task size toggle on release of the double-tap, assuming no drag event
          * was handled during the double-tap.
+         *
          * @param e The motion event that occurred during the double-tap gesture.
          * @return true if the event should be consumed, false if not
          */
@@ -1335,6 +1362,7 @@
     class EventReceiver extends InputEventReceiver {
         private InputMonitor mInputMonitor;
         private int mTasksOnDisplay;
+
         EventReceiver(InputMonitor inputMonitor, InputChannel channel, Looper looper) {
             super(channel, looper);
             mInputMonitor = inputMonitor;
@@ -1386,6 +1414,7 @@
     /**
      * Check if an EventReceiver exists on a particular display.
      * If it does, increment its task count. Otherwise, create one for that display.
+     *
      * @param displayId the display to check against
      */
     private void incrementEventReceiverTasks(int displayId) {
@@ -1891,7 +1920,7 @@
         @Override
         public void onAnimationStart(int taskId, Transaction t, Rect bounds) {
             final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(taskId);
-            if (decoration == null)  {
+            if (decoration == null) {
                 t.apply();
                 return;
             }
@@ -1975,15 +2004,15 @@
             return activityTaskManager.getRecentTasks(Integer.MAX_VALUE,
                     ActivityManager.RECENT_WITH_EXCLUDED,
                     info.userId).getList().stream().filter(
-                            recentTaskInfo -> {
-                                if (recentTaskInfo.taskId == info.taskId) {
-                                    return false;
-                                }
-                                final String recentTaskPackageName =
-                                        ComponentUtils.getPackageName(recentTaskInfo);
-                                return packageName != null
-                                        && packageName.equals(recentTaskPackageName);
-                            }
+                    recentTaskInfo -> {
+                        if (recentTaskInfo.taskId == info.taskId) {
+                            return false;
+                        }
+                        final String recentTaskPackageName =
+                                ComponentUtils.getPackageName(recentTaskInfo);
+                        return packageName != null
+                                && packageName.equals(recentTaskPackageName);
+                    }
             ).toList().size();
         } catch (RemoteException e) {
             throw new RuntimeException(e);
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecoration.java b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecoration.java
index 6165dbf..30e5c2a 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecoration.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecoration.java
@@ -1064,6 +1064,10 @@
             relayoutParams.mCornerRadius = shouldIgnoreCornerRadius ? INVALID_CORNER_RADIUS :
                     getCornerRadius(context, relayoutParams.mLayoutResId);
         }
+        // Set opaque background for all freeform tasks to prevent freeform tasks below
+        // from being visible if freeform task window above is translucent.
+        // Otherwise if fluid resize is enabled, add a background to freeform tasks.
+        relayoutParams.mShouldSetBackground = DesktopModeStatus.shouldSetBackground(taskInfo);
     }
 
     private static int getCornerRadius(@NonNull Context context, int layoutResId) {
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/HandleMenu.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/HandleMenu.kt
index ff50672..ad2e23c 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/HandleMenu.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/HandleMenu.kt
@@ -50,6 +50,7 @@
 import androidx.core.view.isGone
 import com.android.window.flags.Flags
 import com.android.wm.shell.R
+import com.android.wm.shell.bubbles.ContextUtils.isRtl
 import com.android.wm.shell.shared.annotations.ShellBackgroundThread
 import com.android.wm.shell.shared.annotations.ShellMainThread
 import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper
@@ -60,6 +61,8 @@
 import com.android.wm.shell.windowdecor.common.DecorThemeUtil
 import com.android.wm.shell.windowdecor.common.WindowDecorTaskResourceLoader
 import com.android.wm.shell.windowdecor.common.calculateMenuPosition
+import com.android.wm.shell.windowdecor.common.DrawableInsets
+import com.android.wm.shell.windowdecor.common.createRippleDrawable
 import com.android.wm.shell.windowdecor.extension.isFullscreen
 import com.android.wm.shell.windowdecor.extension.isMultiWindow
 import com.android.wm.shell.windowdecor.extension.isPinned
@@ -71,6 +74,7 @@
 import kotlinx.coroutines.launch
 import kotlinx.coroutines.withContext
 
+
 /**
  * Handle menu opened when the appropriate button is clicked on.
  *
@@ -467,6 +471,33 @@
         val rootView = LayoutInflater.from(context)
             .inflate(R.layout.desktop_mode_window_decor_handle_menu, null /* root */) as View
 
+        private val windowingButtonRippleRadius = context.resources
+            .getDimensionPixelSize(R.dimen.desktop_mode_handle_menu_windowing_action_ripple_radius)
+        private val windowingButtonDrawableInsets = DrawableInsets(
+            vertical = context.resources
+                .getDimensionPixelSize(
+                    R.dimen.desktop_mode_handle_menu_windowing_action_ripple_inset_base),
+            horizontal = context.resources
+                .getDimensionPixelSize(
+                    R.dimen.desktop_mode_handle_menu_windowing_action_ripple_inset_base)
+        )
+        private val windowingButtonDrawableInsetsLeft = DrawableInsets(
+            vertical = context.resources
+                .getDimensionPixelSize(
+                    R.dimen.desktop_mode_handle_menu_windowing_action_ripple_inset_base),
+            horizontalLeft = context.resources
+                .getDimensionPixelSize(
+                    R.dimen.desktop_mode_handle_menu_windowing_action_ripple_inset_shift),
+        )
+        private val windowingButtonDrawableInsetsRight = DrawableInsets(
+            vertical = context.resources
+                .getDimensionPixelSize(
+                    R.dimen.desktop_mode_handle_menu_windowing_action_ripple_inset_base),
+            horizontalRight = context.resources
+                .getDimensionPixelSize(
+                    R.dimen.desktop_mode_handle_menu_windowing_action_ripple_inset_shift)
+        )
+
         // App Info Pill.
         private val appInfoPill = rootView.requireViewById<View>(R.id.app_info_pill)
         private val collapseMenuButton = appInfoPill.requireViewById<HandleMenuImageButton>(
@@ -708,6 +739,49 @@
             desktopBtn.isSelected = taskInfo.isFreeform
             desktopBtn.isEnabled = !taskInfo.isFreeform
             desktopBtn.imageTintList = style.windowingButtonColor
+
+            val startInsets = if (context.isRtl) {
+                windowingButtonDrawableInsetsRight
+            } else {
+                windowingButtonDrawableInsetsLeft
+            }
+            val endInsets = if (context.isRtl) {
+                windowingButtonDrawableInsetsLeft
+            } else {
+                windowingButtonDrawableInsetsRight
+            }
+
+            fullscreenBtn.apply {
+                background = createRippleDrawable(
+                    color = style.textColor,
+                    cornerRadius = windowingButtonRippleRadius,
+                    drawableInsets = startInsets
+                )
+            }
+
+            splitscreenBtn.apply {
+                background = createRippleDrawable(
+                    color = style.textColor,
+                    cornerRadius = windowingButtonRippleRadius,
+                    drawableInsets = windowingButtonDrawableInsets
+                )
+            }
+
+            floatingBtn.apply {
+                background = createRippleDrawable(
+                    color = style.textColor,
+                    cornerRadius = windowingButtonRippleRadius,
+                    drawableInsets = windowingButtonDrawableInsets
+                )
+            }
+
+            desktopBtn.apply {
+                background = createRippleDrawable(
+                    color = style.textColor,
+                    cornerRadius = windowingButtonRippleRadius,
+                    drawableInsets = endInsets
+                )
+            }
         }
 
         private fun bindMoreActionsPill(style: MenuStyle) {
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/MaximizeButtonView.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/MaximizeButtonView.kt
index 581d186..bdde096d 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/MaximizeButtonView.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/MaximizeButtonView.kt
@@ -39,10 +39,7 @@
 private const val OPEN_MAXIMIZE_MENU_DELAY_ON_HOVER_MS = 350
 private const val MAX_DRAWABLE_ALPHA = 255
 
-class MaximizeButtonView(
-        context: Context,
-        attrs: AttributeSet
-) : FrameLayout(context, attrs) {
+class MaximizeButtonView(context: Context, attrs: AttributeSet) : FrameLayout(context, attrs) {
     lateinit var onHoverAnimationFinishedListener: () -> Unit
     private val hoverProgressAnimatorSet = AnimatorSet()
     var hoverDisabled = false
@@ -53,10 +50,6 @@
         (stubProgressBarContainer.inflate() as FrameLayout)
             .requireViewById(R.id.progress_bar)
     }
-    private val maximizeButtonText =
-        context.resources.getString(R.string.desktop_mode_maximize_menu_maximize_button_text)
-    private val restoreButtonText =
-        context.resources.getString(R.string.desktop_mode_maximize_menu_restore_button_text)
 
     init {
         LayoutInflater.from(context).inflate(R.layout.maximize_menu_button, this, true)
@@ -158,12 +151,6 @@
     /** Set the drawable resource to use for the maximize button. */
     fun setIcon(@DrawableRes icon: Int) {
         maximizeWindow.setImageResource(icon)
-        when (icon) {
-            R.drawable.decor_desktop_mode_immersive_or_maximize_exit_button_dark ->
-                maximizeWindow.contentDescription = restoreButtonText
-            R.drawable.decor_desktop_mode_maximize_button_dark ->
-                maximizeWindow.contentDescription = maximizeButtonText
-        }
     }
 
     companion object {
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/MultiDisplayVeiledResizeTaskPositioner.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/MultiDisplayVeiledResizeTaskPositioner.kt
index c6cb62d..1b0e0f70 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/MultiDisplayVeiledResizeTaskPositioner.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/MultiDisplayVeiledResizeTaskPositioner.kt
@@ -363,10 +363,11 @@
         dragEventListeners.remove(dragEventListener)
     }
 
-    override fun onTopologyChanged(topology: DisplayTopology) {
+    override fun onTopologyChanged(topology: DisplayTopology?) {
         // TODO: b/383069173 - Cancel window drag when topology changes happen during drag.
 
         displayIds.clear()
+        if (topology == null) return
         val displayBounds = topology.getAbsoluteBounds()
         displayIds.addAll(List(displayBounds.size()) { displayBounds.keyAt(it) })
     }
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/ResizeVeil.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/ResizeVeil.kt
index 7af6b8e..5bd4228 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/ResizeVeil.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/ResizeVeil.kt
@@ -225,7 +225,7 @@
             val veilAnimT = surfaceControlTransactionSupplier.get()
             val iconAnimT = surfaceControlTransactionSupplier.get()
             veilAnimator = ValueAnimator.ofFloat(0f, 1f).apply {
-                duration = RESIZE_ALPHA_DURATION
+                duration = VEIL_ENTRY_ALPHA_ANIMATION_DURATION
                 addUpdateListener {
                     veilAnimT.setAlpha(background, animatedValue as Float)
                             .apply()
@@ -243,7 +243,8 @@
                 })
             }
             iconAnimator = ValueAnimator.ofFloat(0f, 1f).apply {
-                duration = RESIZE_ALPHA_DURATION
+                duration = ICON_ALPHA_ANIMATION_DURATION
+                startDelay = ICON_ENTRY_DELAY
                 addUpdateListener {
                     iconAnimT.setAlpha(icon, animatedValue as Float)
                             .apply()
@@ -387,23 +388,38 @@
         if (background == null || icon == null) return
 
         veilAnimator = ValueAnimator.ofFloat(1f, 0f).apply {
-            duration = RESIZE_ALPHA_DURATION
+            duration = VEIL_EXIT_ALPHA_ANIMATION_DURATION
+            startDelay = VEIL_EXIT_DELAY
             addUpdateListener {
                 surfaceControlTransactionSupplier.get()
                         .setAlpha(background, animatedValue as Float)
-                        .setAlpha(icon, animatedValue as Float)
                         .apply()
             }
             addListener(object : AnimatorListenerAdapter() {
                 override fun onAnimationEnd(animation: Animator) {
                     surfaceControlTransactionSupplier.get()
                             .hide(background)
-                            .hide(icon)
                             .apply()
                 }
             })
         }
+        iconAnimator = ValueAnimator.ofFloat(1f, 0f).apply {
+            duration = ICON_ALPHA_ANIMATION_DURATION
+            addUpdateListener {
+                surfaceControlTransactionSupplier.get()
+                    .setAlpha(icon, animatedValue as Float)
+                    .apply()
+            }
+            addListener(object : AnimatorListenerAdapter() {
+                override fun onAnimationEnd(animation: Animator) {
+                    surfaceControlTransactionSupplier.get()
+                        .hide(icon)
+                        .apply()
+                }
+            })
+        }
         veilAnimator?.start()
+        iconAnimator?.start()
         isVisible = false
     }
 
@@ -451,7 +467,11 @@
 
     companion object {
         private const val TAG = "ResizeVeil"
-        private const val RESIZE_ALPHA_DURATION = 100L
+        private const val ICON_ALPHA_ANIMATION_DURATION = 50L
+        private const val VEIL_ENTRY_ALPHA_ANIMATION_DURATION = 50L
+        private const val VEIL_EXIT_ALPHA_ANIMATION_DURATION = 200L
+        private const val ICON_ENTRY_DELAY = 33L
+        private const val VEIL_EXIT_DELAY = 33L
         private const val VEIL_CONTAINER_LAYER = TaskConstants.TASK_CHILD_LAYER_RESIZE_VEIL
 
         /** The background is a child of the veil container layer and goes at the bottom.  */
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/WindowDecoration.java b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/WindowDecoration.java
index 4002dc5..7baef2b 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/WindowDecoration.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/WindowDecoration.java
@@ -16,7 +16,6 @@
 
 package com.android.wm.shell.windowdecor;
 
-import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM;
 import static android.content.res.Configuration.DENSITY_DPI_UNDEFINED;
 import static android.view.WindowInsets.Type.captionBar;
 import static android.view.WindowInsets.Type.mandatorySystemGestures;
@@ -57,7 +56,6 @@
 import com.android.wm.shell.ShellTaskOrganizer;
 import com.android.wm.shell.common.DisplayController;
 import com.android.wm.shell.desktopmode.DesktopModeEventLogger;
-import com.android.wm.shell.shared.desktopmode.DesktopModeStatus;
 import com.android.wm.shell.windowdecor.WindowDecoration.RelayoutParams.OccludingCaptionElement;
 import com.android.wm.shell.windowdecor.additionalviewcontainer.AdditionalViewHostViewContainer;
 import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHost;
@@ -504,15 +502,14 @@
             startT.show(mTaskSurface);
         }
 
-        if (mTaskInfo.getWindowingMode() == WINDOWING_MODE_FREEFORM
-                && !DesktopModeStatus.isVeiledResizeEnabled()) {
-            // When fluid resize is enabled, add a background to freeform tasks
-            int backgroundColorInt = mTaskInfo.taskDescription.getBackgroundColor();
+        if (params.mShouldSetBackground) {
+            final int backgroundColorInt = mTaskInfo.taskDescription != null
+                    ? mTaskInfo.taskDescription.getBackgroundColor() : Color.BLACK;
             mTmpColor[0] = (float) Color.red(backgroundColorInt) / 255.f;
             mTmpColor[1] = (float) Color.green(backgroundColorInt) / 255.f;
             mTmpColor[2] = (float) Color.blue(backgroundColorInt) / 255.f;
             startT.setColor(mTaskSurface, mTmpColor);
-        } else if (!DesktopModeStatus.isVeiledResizeEnabled()) {
+        } else {
             startT.unsetColor(mTaskSurface);
         }
 
@@ -833,6 +830,7 @@
         boolean mSetTaskVisibilityPositionAndCrop;
         boolean mHasGlobalFocus;
         boolean mShouldSetAppBounds;
+        boolean mShouldSetBackground;
 
         void reset() {
             mLayoutResId = Resources.ID_NULL;
@@ -857,6 +855,7 @@
             mAsyncViewHost = false;
             mHasGlobalFocus = false;
             mShouldSetAppBounds = false;
+            mShouldSetBackground = false;
         }
 
         boolean hasInputFeatureSpy() {
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/common/ButtonBackgroundDrawableUtils.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/common/ButtonBackgroundDrawableUtils.kt
new file mode 100644
index 0000000..e18239d
--- /dev/null
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/common/ButtonBackgroundDrawableUtils.kt
@@ -0,0 +1,88 @@
+/*
+ * Copyright (C) 2025 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.wm.shell.windowdecor.common
+
+import android.annotation.ColorInt
+import android.graphics.Color
+import android.graphics.drawable.LayerDrawable
+import android.graphics.drawable.RippleDrawable
+import android.graphics.drawable.ShapeDrawable
+import android.graphics.drawable.shapes.RoundRectShape
+import com.android.wm.shell.windowdecor.common.OPACITY_11
+import com.android.wm.shell.windowdecor.common.OPACITY_15
+import android.content.res.ColorStateList
+
+/**
+ * Represents drawable insets, specifying the number of pixels to inset a drawable from its bounds.
+ */
+data class DrawableInsets(val l: Int, val t: Int, val r: Int, val b: Int) {
+    constructor(vertical: Int = 0, horizontal: Int = 0) :
+            this(horizontal, vertical, horizontal, vertical)
+    constructor(vertical: Int = 0, horizontalLeft: Int = 0, horizontalRight: Int = 0) :
+            this(horizontalLeft, vertical, horizontalRight, vertical)
+}
+
+/**
+ * Replaces the alpha component of a color with the given alpha value.
+ */
+@ColorInt
+fun replaceColorAlpha(@ColorInt color: Int, alpha: Int): Int {
+    return Color.argb(
+        alpha,
+        Color.red(color),
+        Color.green(color),
+        Color.blue(color)
+    )
+}
+
+/**
+ * Creates a RippleDrawable with specified color, corner radius, and insets.
+ */
+fun createRippleDrawable(
+            @ColorInt color: Int,
+            cornerRadius: Int,
+            drawableInsets: DrawableInsets,
+): RippleDrawable {
+    return RippleDrawable(
+        ColorStateList(
+            arrayOf(
+                intArrayOf(android.R.attr.state_hovered),
+                intArrayOf(android.R.attr.state_pressed),
+                intArrayOf(),
+            ),
+            intArrayOf(
+                replaceColorAlpha(color, OPACITY_11),
+                replaceColorAlpha(color, OPACITY_15),
+                Color.TRANSPARENT,
+            )
+        ),
+        null /* content */,
+        LayerDrawable(arrayOf(
+            ShapeDrawable().apply {
+                shape = RoundRectShape(
+                    FloatArray(8) { cornerRadius.toFloat() },
+                    null /* inset */,
+                    null /* innerRadii */
+                )
+                paint.color = Color.WHITE
+            }
+        )).apply {
+            require(numberOfLayers == 1) { "Must only contain one layer" }
+            setLayerInset(0 /* index */,
+                drawableInsets.l, drawableInsets.t, drawableInsets.r, drawableInsets.b)
+        }
+    )
+}
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDecorViewModel.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDecorViewModel.kt
index 8747f63..e9426d2 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDecorViewModel.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDecorViewModel.kt
@@ -25,6 +25,7 @@
 import android.window.WindowContainerTransaction
 import androidx.core.util.valueIterator
 import com.android.internal.annotations.VisibleForTesting
+import com.android.wm.shell.R
 import com.android.wm.shell.RootTaskDisplayAreaOrganizer
 import com.android.wm.shell.ShellTaskOrganizer
 import com.android.wm.shell.common.DisplayChangeController
@@ -136,6 +137,10 @@
         }
     }
 
+    fun onTaskInfoChange(taskInfo: RunningTaskInfo) {
+        tilingTransitionHandlerByDisplayId.get(taskInfo.displayId)?.onTaskInfoChange(taskInfo)
+    }
+
     override fun onDisplayChange(
         displayId: Int,
         fromRotation: Int,
@@ -148,4 +153,45 @@
         if ((fromRotation % 2 == toRotation % 2)) return
         tilingTransitionHandlerByDisplayId.get(displayId)?.resetTilingSession()
     }
+
+    fun getRightSnapBoundsIfTiled(displayId: Int): Rect {
+        val tilingBounds =
+            tilingTransitionHandlerByDisplayId.get(displayId)?.getRightSnapBoundsIfTiled()
+        if (tilingBounds != null) {
+            return tilingBounds
+        }
+        val displayLayout = displayController.getDisplayLayout(displayId)
+        val stableBounds = Rect()
+        displayLayout?.getStableBounds(stableBounds)
+        val snapBounds =
+            Rect(
+                stableBounds.left +
+                    stableBounds.width() / 2 +
+                    context.resources.getDimensionPixelSize(R.dimen.split_divider_bar_width) / 2,
+                stableBounds.top,
+                stableBounds.right,
+                stableBounds.bottom,
+            )
+        return snapBounds
+    }
+
+    fun getLeftSnapBoundsIfTiled(displayId: Int): Rect {
+        val tilingBounds =
+            tilingTransitionHandlerByDisplayId.get(displayId)?.getLeftSnapBoundsIfTiled()
+        if (tilingBounds != null) {
+            return tilingBounds
+        }
+        val displayLayout = displayController.getDisplayLayout(displayId)
+        val stableBounds = Rect()
+        displayLayout?.getStableBounds(stableBounds)
+        val snapBounds =
+            Rect(
+                stableBounds.left,
+                stableBounds.top,
+                stableBounds.left + stableBounds.width() / 2 -
+                    context.resources.getDimensionPixelSize(R.dimen.split_divider_bar_width) / 2,
+                stableBounds.bottom,
+            )
+        return snapBounds
+    }
 }
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDividerWindowManager.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDividerWindowManager.kt
index fbbf1a5..cb45c17 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDividerWindowManager.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDividerWindowManager.kt
@@ -57,6 +57,7 @@
     private val transactionSupplier: Supplier<SurfaceControl.Transaction>,
     private var dividerBounds: Rect,
     private val displayContext: Context,
+    private val isDarkMode: Boolean,
 ) : WindowlessWindowManager(config, leash, null), DividerMoveCallback, View.OnLayoutChangeListener {
     private lateinit var viewHost: SurfaceControlViewHost
     private var tilingDividerView: TilingDividerView? = null
@@ -153,7 +154,7 @@
         surfaceControlViewHost.setView(dividerView, lp)
         val tmpDividerBounds = Rect()
         getDividerBounds(tmpDividerBounds)
-        dividerView.setup(this, tmpDividerBounds, handleRegionSize)
+        dividerView.setup(this, tmpDividerBounds, handleRegionSize, isDarkMode)
         t.setRelativeLayer(leash, relativeLeash, 1)
             .setPosition(
                 leash,
@@ -172,6 +173,11 @@
         updateTouchRegion()
     }
 
+    /** Changes divider colour if dark/light mode is toggled. */
+    fun onUiModeChange(isDarkMode: Boolean) {
+        tilingDividerView?.onUiModeChange(isDarkMode)
+    }
+
     /** Hides the divider bar. */
     fun hideDividerBar() {
         if (!dividerShown) {
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingWindowDecoration.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingWindowDecoration.kt
index 666d4bd..a45df04 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingWindowDecoration.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingWindowDecoration.kt
@@ -36,7 +36,6 @@
 import com.android.internal.annotations.VisibleForTesting
 import com.android.launcher3.icons.BaseIconFactory
 import com.android.window.flags.Flags
-import com.android.wm.shell.shared.FocusTransitionListener
 import com.android.wm.shell.R
 import com.android.wm.shell.RootTaskDisplayAreaOrganizer
 import com.android.wm.shell.ShellTaskOrganizer
@@ -50,6 +49,7 @@
 import com.android.wm.shell.desktopmode.DesktopUserRepositories
 import com.android.wm.shell.desktopmode.ReturnToDragStartAnimator
 import com.android.wm.shell.desktopmode.ToggleResizeDesktopTaskTransitionHandler
+import com.android.wm.shell.shared.FocusTransitionListener
 import com.android.wm.shell.shared.annotations.ShellBackgroundThread
 import com.android.wm.shell.shared.annotations.ShellMainThread
 import com.android.wm.shell.transition.FocusTransitionObserver
@@ -103,6 +103,7 @@
     @VisibleForTesting
     var desktopTilingDividerWindowManager: DesktopTilingDividerWindowManager? = null
     private lateinit var dividerBounds: Rect
+    private var isDarkMode = false
     private var isResizing = false
     private var isTilingFocused = false
 
@@ -112,7 +113,7 @@
         position: SnapPosition,
         currentBounds: Rect,
     ): Boolean {
-        val destinationBounds = getSnapBounds(taskInfo, position)
+        val destinationBounds = getSnapBounds(position)
         val resizeMetadata =
             AppResizingHelper(
                 taskInfo,
@@ -129,6 +130,7 @@
         val isTiled = destinationBounds != taskInfo.configuration.windowConfiguration.bounds
 
         initTilingApps(resizeMetadata, position, taskInfo)
+        isDarkMode = isTaskInDarkMode(taskInfo)
         // Observe drag resizing to break tiling if a task is drag resized.
         desktopModeWindowDecoration.addDragResizeListener(this)
 
@@ -232,6 +234,7 @@
                     transactionSupplier,
                     dividerBounds,
                     displayContext,
+                    isDarkMode,
                 )
             }
         // a leash to present the divider on top of, without re-parenting.
@@ -356,6 +359,17 @@
         transitions.startTransition(TRANSIT_CHANGE, wct, this)
     }
 
+    fun onTaskInfoChange(taskInfo: RunningTaskInfo) {
+        val isCurrentTaskInDarkMode = isTaskInDarkMode(taskInfo)
+        if (isCurrentTaskInDarkMode == isDarkMode || !isTilingManagerInitialised) return
+        isDarkMode = isCurrentTaskInDarkMode
+        desktopTilingDividerWindowManager?.onUiModeChange(isDarkMode)
+    }
+
+    fun isTaskInDarkMode(taskInfo: RunningTaskInfo): Boolean =
+        (taskInfo.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK) ==
+            Configuration.UI_MODE_NIGHT_YES
+
     override fun startAnimation(
         transition: IBinder,
         info: TransitionInfo,
@@ -502,9 +516,11 @@
     }
 
     // Overriding FocusTransitionListener
-    override fun onFocusedTaskChanged(taskId: Int,
-            isFocusedOnDisplay: Boolean,
-            isFocusedGlobally: Boolean) {
+    override fun onFocusedTaskChanged(
+        taskId: Int,
+        isFocusedOnDisplay: Boolean,
+        isFocusedGlobally: Boolean,
+    ) {
         if (!Flags.enableDisplayFocusInShellTransitions()) return
         moveTiledPairToFront(taskId, isFocusedOnDisplay)
     }
@@ -512,7 +528,7 @@
     // Only called if [taskInfo] relates to a focused task
     private fun isTilingRefocused(taskId: Int): Boolean {
         return taskId == leftTaskResizingHelper?.taskInfo?.taskId ||
-                taskId == rightTaskResizingHelper?.taskInfo?.taskId
+            taskId == rightTaskResizingHelper?.taskInfo?.taskId
     }
 
     private fun buildTiledTasksMoveToFront(leftOnTop: Boolean): WindowContainerTransaction {
@@ -623,26 +639,24 @@
         val t = transactionSupplier.get()
         if (!Flags.enableDisplayFocusInShellTransitions()) isTilingFocused = true
         if (taskId == leftTaskResizingHelper?.taskInfo?.taskId) {
-          desktopTilingDividerWindowManager?.onRelativeLeashChanged(
-              leftTiledTask.getLeash(),
-              t,
-          )
+            desktopTilingDividerWindowManager?.onRelativeLeashChanged(leftTiledTask.getLeash(), t)
         }
         if (taskId == rightTaskResizingHelper?.taskInfo?.taskId) {
-          desktopTilingDividerWindowManager?.onRelativeLeashChanged(
-              rightTiledTask.getLeash(),
-              t,
-          )
+            desktopTilingDividerWindowManager?.onRelativeLeashChanged(rightTiledTask.getLeash(), t)
         }
-        transitions.startTransition(
-            TRANSIT_TO_FRONT,
-            buildTiledTasksMoveToFront(isLeftOnTop),
-            null,
-        )
+        transitions.startTransition(TRANSIT_TO_FRONT, buildTiledTasksMoveToFront(isLeftOnTop), null)
         t.apply()
         return true
     }
 
+    fun getRightSnapBoundsIfTiled(): Rect {
+        return getSnapBounds(SnapPosition.RIGHT)
+    }
+
+    fun getLeftSnapBoundsIfTiled(): Rect {
+        return getSnapBounds(SnapPosition.LEFT)
+    }
+
     private fun allTiledTasksVisible(): Boolean {
         val leftTiledTask = leftTaskResizingHelper ?: return false
         val rightTiledTask = rightTaskResizingHelper ?: return false
@@ -674,8 +688,8 @@
             )
     }
 
-    private fun getSnapBounds(taskInfo: RunningTaskInfo, position: SnapPosition): Rect {
-        val displayLayout = displayController.getDisplayLayout(taskInfo.displayId) ?: return Rect()
+    private fun getSnapBounds(position: SnapPosition): Rect {
+        val displayLayout = displayController.getDisplayLayout(displayId) ?: return Rect()
 
         val stableBounds = Rect()
         displayLayout.getStableBounds(stableBounds)
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/SnapEventHandler.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/SnapEventHandler.kt
index 52e24d6..b9d6741 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/SnapEventHandler.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/SnapEventHandler.kt
@@ -40,4 +40,16 @@
 
     /** If a task is tiled, delegate moving to front to tiling infrastructure. */
     fun moveTaskToFrontIfTiled(taskInfo: RunningTaskInfo): Boolean
+
+    /**
+     * Returns the bounds of a task tiled on the left on the specified display, defaults to default
+     * snapping bounds if no task is tiled.
+     */
+    fun getLeftSnapBoundsIfTiled(displayId: Int): Rect
+
+    /**
+     * Returns the bounds of a task tiled on the right on the specified display, defaults to default
+     * snapping bounds if no task is tiled.
+     */
+    fun getRightSnapBoundsIfTiled(displayId: Int): Rect
 }
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/TilingDividerView.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/TilingDividerView.kt
index b8e3b0f..54dcd2d 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/TilingDividerView.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/TilingDividerView.kt
@@ -16,6 +16,7 @@
 package com.android.wm.shell.windowdecor.tiling
 
 import android.content.Context
+import android.content.res.Configuration
 import android.graphics.Canvas
 import android.graphics.Paint
 import android.graphics.Rect
@@ -85,11 +86,14 @@
         dividerMoveCallback: DividerMoveCallback,
         dividerBounds: Rect,
         handleRegionSize: Size,
+        isDarkMode: Boolean,
     ) {
         callback = dividerMoveCallback
         this.dividerBounds.set(dividerBounds)
         handle.setIsLeftRightSplit(true)
+        handle.setup(/* isSplitScreen= */ false, isDarkMode)
         corners.setIsLeftRightSplit(true)
+        corners.setup(/* isSplitScreen= */ false, isDarkMode)
         handleRegionHeight = handleRegionSize.height
         handleRegionWidth = handleRegionSize.width
         cornersRadius =
@@ -103,6 +107,18 @@
             )
     }
 
+    fun onUiModeChange(isDarkMode: Boolean) {
+        handle.onUiModeChange(isDarkMode)
+        corners.onUiModeChange(isDarkMode)
+        paint.color =
+            if (isDarkMode) {
+                resources.getColor(R.color.tiling_divider_background_dark, null /* theme */)
+            } else {
+                resources.getColor(R.color.tiling_divider_background_light, null /* theme */)
+            }
+        invalidate()
+    }
+
     override fun onFinishInflate() {
         super.onFinishInflate()
         dividerBar = requireViewById(R.id.divider_bar)
@@ -112,7 +128,15 @@
             resources.getDimensionPixelSize(R.dimen.docked_stack_divider_lift_elevation)
         setOnTouchListener(this)
         setWillNotDraw(false)
-        paint.color = resources.getColor(R.color.split_divider_background, null)
+        paint.color =
+            if (
+                context.resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK ==
+                    Configuration.UI_MODE_NIGHT_YES
+            ) {
+                resources.getColor(R.color.tiling_divider_background_dark, /* theme= */null)
+            } else {
+                resources.getColor(R.color.tiling_divider_background_light, /* theme= */ null)
+            }
         paint.isAntiAlias = true
         paint.style = Paint.Style.FILL
     }
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/viewholder/AppHeaderViewHolder.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/viewholder/AppHeaderViewHolder.kt
index 90c865e..eb8b617 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/viewholder/AppHeaderViewHolder.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/viewholder/AppHeaderViewHolder.kt
@@ -37,10 +37,13 @@
 import android.widget.ImageButton
 import android.widget.ImageView
 import android.widget.TextView
+import android.window.DesktopModeFlags
 import androidx.compose.material3.dynamicDarkColorScheme
 import androidx.compose.material3.dynamicLightColorScheme
 import androidx.compose.ui.graphics.toArgb
 import androidx.core.content.withStyledAttributes
+import androidx.core.view.ViewCompat
+import androidx.core.view.accessibility.AccessibilityNodeInfoCompat.AccessibilityActionCompat
 import androidx.core.view.isGone
 import androidx.core.view.isVisible
 import com.android.internal.R.color.materialColorOnSecondaryContainer
@@ -50,9 +53,6 @@
 import com.android.internal.R.color.materialColorSurfaceContainerLow
 import com.android.internal.R.color.materialColorSurfaceDim
 import com.android.wm.shell.R
-import android.window.DesktopModeFlags
-import androidx.core.view.ViewCompat
-import androidx.core.view.accessibility.AccessibilityNodeInfoCompat.AccessibilityActionCompat
 import com.android.wm.shell.windowdecor.MaximizeButtonView
 import com.android.wm.shell.windowdecor.common.DecorThemeUtil
 import com.android.wm.shell.windowdecor.common.OPACITY_100
@@ -61,6 +61,8 @@
 import com.android.wm.shell.windowdecor.common.OPACITY_55
 import com.android.wm.shell.windowdecor.common.OPACITY_65
 import com.android.wm.shell.windowdecor.common.Theme
+import com.android.wm.shell.windowdecor.common.DrawableInsets
+import com.android.wm.shell.windowdecor.common.createRippleDrawable
 import com.android.wm.shell.windowdecor.extension.isLightCaptionBarAppearance
 import com.android.wm.shell.windowdecor.extension.isTransparentCaptionBarAppearance
 
@@ -145,6 +147,15 @@
     val appNameTextWidth: Int
         get() = appNameTextView.width
 
+    private val a11yAnnounceTextMaximize: String =
+        context.getString(R.string.app_header_talkback_action_maximize_button_text)
+    private val a11yAnnounceTextRestore: String =
+        context.getString(R.string.app_header_talkback_action_restore_button_text)
+
+    private lateinit var sizeToggleDirection: SizeToggleDirection
+    private lateinit var a11yTextMaximize: String
+    private lateinit var a11yTextRestore: String
+
     init {
         captionView.setOnTouchListener(onCaptionTouchListener)
         captionHandle.setOnTouchListener(onCaptionTouchListener)
@@ -163,15 +174,15 @@
 
         val a11yActionSnapLeft = AccessibilityAction(
             R.id.action_snap_left,
-            context.resources.getString(R.string.desktop_mode_a11y_action_snap_left)
+            context.getString(R.string.desktop_mode_a11y_action_snap_left)
         )
         val a11yActionSnapRight = AccessibilityAction(
             R.id.action_snap_right,
-            context.resources.getString(R.string.desktop_mode_a11y_action_snap_right)
+            context.getString(R.string.desktop_mode_a11y_action_snap_right)
         )
         val a11yActionMaximizeRestore = AccessibilityAction(
             R.id.action_maximize_restore,
-            context.resources.getString(R.string.desktop_mode_a11y_action_maximize_restore)
+            context.getString(R.string.desktop_mode_a11y_action_maximize_restore)
         )
 
         captionHandle.accessibilityDelegate = object : View.AccessibilityDelegate() {
@@ -236,19 +247,19 @@
             null
         )
 
-        // Update a11y announcement to say "double tap to maximize or restore window size"
-        ViewCompat.replaceAccessibilityAction(
-            maximizeWindowButton,
-            AccessibilityActionCompat.ACTION_CLICK,
-            context.getString(R.string.maximize_button_talkback_action_maximize_restore_text),
-            null
-        )
-
-        // Update a11y announcement out to say "double tap to minimize app window"
+        // Update a11y announcement to say "double tap to minimize app window"
         ViewCompat.replaceAccessibilityAction(
             minimizeWindowButton,
             AccessibilityActionCompat.ACTION_CLICK,
-            context.getString(R.string.minimize_button_talkback_action_maximize_restore_text),
+            context.getString(R.string.app_header_talkback_action_minimize_button_text),
+            null
+        )
+
+        // Update a11y announcement to say "double tap to close app window"
+        ViewCompat.replaceAccessibilityAction(
+            closeWindowButton,
+            AccessibilityActionCompat.ACTION_CLICK,
+            context.getString(R.string.app_header_talkback_action_close_button_text),
             null
         )
     }
@@ -268,6 +279,26 @@
         appNameTextView.text = name
         openMenuButton.contentDescription =
             context.getString(R.string.desktop_mode_app_header_chip_text, name)
+
+        closeWindowButton.contentDescription = context.getString(R.string.close_button_text, name)
+        minimizeWindowButton.contentDescription =
+            context.getString(R.string.minimize_button_text, name)
+
+        a11yTextMaximize = context.getString(R.string.maximize_button_text, name)
+        a11yTextRestore = context.getString(R.string.restore_button_text, name)
+
+        updateMaximizeButtonContentDescription()
+    }
+
+    private fun updateMaximizeButtonContentDescription() {
+        if (this::a11yTextRestore.isInitialized &&
+            this::a11yTextMaximize.isInitialized &&
+            this::sizeToggleDirection.isInitialized) {
+            maximizeWindowButton.contentDescription = when (sizeToggleDirection) {
+                SizeToggleDirection.MAXIMIZE -> a11yTextMaximize
+                SizeToggleDirection.RESTORE -> a11yTextRestore
+            }
+        }
     }
 
     /** Sets the app's icon in the header. */
@@ -388,7 +419,34 @@
                     drawableInsets = maximizeDrawableInsets
                 )
             )
-            setIcon(getMaximizeButtonIcon(isTaskMaximized, inFullImmersiveState))
+            val icon = getMaximizeButtonIcon(isTaskMaximized, inFullImmersiveState)
+            setIcon(icon)
+
+            when (icon) {
+                R.drawable.decor_desktop_mode_immersive_or_maximize_exit_button_dark -> {
+                    sizeToggleDirection = SizeToggleDirection.RESTORE
+
+                    // Update a11y announcement to say "double tap to maximize app window size"
+                    ViewCompat.replaceAccessibilityAction(
+                        maximizeWindowButton,
+                        AccessibilityActionCompat.ACTION_CLICK,
+                        a11yAnnounceTextRestore,
+                        null
+                    )
+                }
+                R.drawable.decor_desktop_mode_maximize_button_dark -> {
+                    sizeToggleDirection = SizeToggleDirection.MAXIMIZE
+
+                    // Update a11y announcement to say "double tap to restore app window size"
+                    ViewCompat.replaceAccessibilityAction(
+                        maximizeWindowButton,
+                        AccessibilityActionCompat.ACTION_CLICK,
+                        a11yAnnounceTextMaximize,
+                        null
+                    )
+                }
+            }
+            updateMaximizeButtonContentDescription()
         }
         // Close button.
         closeWindowButton.apply {
@@ -579,55 +637,8 @@
         )
     }
 
-    @ColorInt
-    private fun replaceColorAlpha(@ColorInt color: Int, alpha: Int): Int {
-        return Color.argb(
-            alpha,
-            Color.red(color),
-            Color.green(color),
-            Color.blue(color)
-        )
-    }
-
-    private fun createRippleDrawable(
-        @ColorInt color: Int,
-        cornerRadius: Int,
-        drawableInsets: DrawableInsets,
-    ): RippleDrawable {
-        return RippleDrawable(
-            ColorStateList(
-                arrayOf(
-                    intArrayOf(android.R.attr.state_hovered),
-                    intArrayOf(android.R.attr.state_pressed),
-                    intArrayOf(),
-                ),
-                intArrayOf(
-                    replaceColorAlpha(color, OPACITY_11),
-                    replaceColorAlpha(color, OPACITY_15),
-                    Color.TRANSPARENT
-                )
-            ),
-            null /* content */,
-            LayerDrawable(arrayOf(
-                ShapeDrawable().apply {
-                    shape = RoundRectShape(
-                        FloatArray(8) { cornerRadius.toFloat() },
-                        null /* inset */,
-                        null /* innerRadii */
-                    )
-                    paint.color = Color.WHITE
-                }
-            )).apply {
-                require(numberOfLayers == 1) { "Must only contain one layer" }
-                setLayerInset(0 /* index */,
-                    drawableInsets.l, drawableInsets.t, drawableInsets.r, drawableInsets.b)
-            }
-        )
-    }
-
-    private data class DrawableInsets(val l: Int, val t: Int, val r: Int, val b: Int) {
-        constructor(vertical: Int = 0, horizontal: Int = 0) :
-                this(horizontal, vertical, horizontal, vertical)
+    private enum class SizeToggleDirection {
+        MAXIMIZE, RESTORE
     }
 
     private data class Header(
diff --git a/libs/WindowManager/Shell/tests/e2e/desktopmode/scenarios/src/com/android/wm/shell/scenarios/ExitDesktopWithDragToTopDragZone.kt b/libs/WindowManager/Shell/tests/e2e/desktopmode/scenarios/src/com/android/wm/shell/scenarios/ExitDesktopWithDragToTopDragZone.kt
index 2800839..d82c066 100644
--- a/libs/WindowManager/Shell/tests/e2e/desktopmode/scenarios/src/com/android/wm/shell/scenarios/ExitDesktopWithDragToTopDragZone.kt
+++ b/libs/WindowManager/Shell/tests/e2e/desktopmode/scenarios/src/com/android/wm/shell/scenarios/ExitDesktopWithDragToTopDragZone.kt
@@ -18,9 +18,9 @@
 
 import android.tools.NavBar
 import android.tools.Rotation
-import com.android.internal.R
 import com.android.window.flags.Flags
 import com.android.wm.shell.Utils
+import com.android.wm.shell.shared.desktopmode.DesktopModeStatus
 import org.junit.After
 import org.junit.Assume
 import org.junit.Before
@@ -42,8 +42,8 @@
     fun setup() {
         Assume.assumeTrue(Flags.enableDesktopWindowingMode() && tapl.isTablet)
         // Skip the test when the drag-to-maximize is enabled on this device.
-        Assume.assumeFalse(Flags.enableDragToMaximize() &&
-            instrumentation.context.resources.getBoolean(R.bool.config_dragToMaximizeInDesktopMode))
+        Assume.assumeFalse(
+            DesktopModeStatus.shouldMaximizeWhenDragToTopEdge(instrumentation.context))
         tapl.setEnableRotation(true)
         tapl.setExpectedRotation(rotation.value)
         testApp.enterDesktopMode(wmHelper, device)
diff --git a/libs/WindowManager/Shell/tests/e2e/desktopmode/scenarios/src/com/android/wm/shell/scenarios/MaximizeAppWindowWithDragToTopDragZone.kt b/libs/WindowManager/Shell/tests/e2e/desktopmode/scenarios/src/com/android/wm/shell/scenarios/MaximizeAppWindowWithDragToTopDragZone.kt
index 60a0fb5..675b63c 100644
--- a/libs/WindowManager/Shell/tests/e2e/desktopmode/scenarios/src/com/android/wm/shell/scenarios/MaximizeAppWindowWithDragToTopDragZone.kt
+++ b/libs/WindowManager/Shell/tests/e2e/desktopmode/scenarios/src/com/android/wm/shell/scenarios/MaximizeAppWindowWithDragToTopDragZone.kt
@@ -23,12 +23,12 @@
 import android.tools.traces.parsers.WindowManagerStateHelper
 import androidx.test.platform.app.InstrumentationRegistry
 import androidx.test.uiautomator.UiDevice
-import com.android.internal.R
 import com.android.launcher3.tapl.LauncherInstrumentation
 import com.android.server.wm.flicker.helpers.DesktopModeAppHelper
 import com.android.server.wm.flicker.helpers.SimpleAppHelper
 import com.android.window.flags.Flags
 import com.android.wm.shell.Utils
+import com.android.wm.shell.shared.desktopmode.DesktopModeStatus
 import org.junit.After
 import org.junit.Assume
 import org.junit.Before
@@ -54,8 +54,8 @@
     fun setup() {
         Assume.assumeTrue(Flags.enableDesktopWindowingMode() && tapl.isTablet)
         // Skip the test when the drag-to-maximize is disabled on this device.
-        Assume.assumeTrue(Flags.enableDragToMaximize() &&
-            instrumentation.context.resources.getBoolean(R.bool.config_dragToMaximizeInDesktopMode))
+        Assume.assumeTrue(
+            DesktopModeStatus.shouldMaximizeWhenDragToTopEdge(instrumentation.context))
         tapl.setEnableRotation(true)
         tapl.setExpectedRotation(rotation.value)
         ChangeDisplayOrientationRule.setRotation(rotation)
diff --git a/libs/WindowManager/Shell/tests/e2e/desktopmode/scenarios/src/com/android/wm/shell/scenarios/OpenAppWithExternalDisplayConnected.kt b/libs/WindowManager/Shell/tests/e2e/desktopmode/scenarios/src/com/android/wm/shell/scenarios/OpenAppWithExternalDisplayConnected.kt
index 81c46f1..b9a5e4a9 100644
--- a/libs/WindowManager/Shell/tests/e2e/desktopmode/scenarios/src/com/android/wm/shell/scenarios/OpenAppWithExternalDisplayConnected.kt
+++ b/libs/WindowManager/Shell/tests/e2e/desktopmode/scenarios/src/com/android/wm/shell/scenarios/OpenAppWithExternalDisplayConnected.kt
@@ -25,6 +25,7 @@
 import android.tools.flicker.rules.ChangeDisplayOrientationRule
 import android.tools.traces.parsers.WindowManagerStateHelper
 import android.util.DisplayMetrics
+import android.window.DesktopExperienceFlags
 import androidx.test.platform.app.InstrumentationRegistry
 import androidx.test.uiautomator.UiDevice
 import com.android.launcher3.tapl.LauncherInstrumentation
@@ -64,7 +65,7 @@
     @Before
     fun setup() {
         Assume.assumeTrue(Flags.enableDesktopWindowingMode() && tapl.isTablet)
-        Assume.assumeTrue(Flags.enableDisplayWindowingModeSwitching())
+        Assume.assumeTrue(DesktopExperienceFlags.ENABLE_DISPLAY_WINDOWING_MODE_SWITCHING.isTrue)
         tapl.setEnableRotation(true)
         tapl.setExpectedRotation(rotation.value)
         ChangeDisplayOrientationRule.setRotation(rotation)
diff --git a/libs/WindowManager/Shell/tests/e2e/splitscreen/flicker-legacy/src/com/android/wm/shell/flicker/splitscreen/CopyContentInSplit.kt b/libs/WindowManager/Shell/tests/e2e/splitscreen/flicker-legacy/src/com/android/wm/shell/flicker/splitscreen/CopyContentInSplit.kt
index 7f48499..e39fa3a 100644
--- a/libs/WindowManager/Shell/tests/e2e/splitscreen/flicker-legacy/src/com/android/wm/shell/flicker/splitscreen/CopyContentInSplit.kt
+++ b/libs/WindowManager/Shell/tests/e2e/splitscreen/flicker-legacy/src/com/android/wm/shell/flicker/splitscreen/CopyContentInSplit.kt
@@ -22,7 +22,6 @@
 import android.tools.flicker.legacy.LegacyFlickerTest
 import android.tools.flicker.legacy.LegacyFlickerTestFactory
 import android.tools.traces.component.ComponentNameMatcher
-import android.tools.traces.component.EdgeExtensionComponentMatcher
 import androidx.test.filters.FlakyTest
 import androidx.test.filters.RequiresDevice
 import com.android.wm.shell.flicker.splitscreen.benchmark.CopyContentInSplitBenchmark
@@ -99,7 +98,6 @@
                         ComponentNameMatcher.SPLASH_SCREEN,
                         ComponentNameMatcher.SNAPSHOT,
                         ComponentNameMatcher.IME_SNAPSHOT,
-                        EdgeExtensionComponentMatcher(),
                         magnifierLayer,
                         popupWindowLayer
                     )
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationRunnerTests.java b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationRunnerTests.java
index d4d8d93..bc965b9 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationRunnerTests.java
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationRunnerTests.java
@@ -39,14 +39,12 @@
 import android.annotation.NonNull;
 import android.graphics.Point;
 import android.graphics.Rect;
-import android.platform.test.annotations.EnableFlags;
 import android.view.animation.AlphaAnimation;
 import android.view.animation.Animation;
 import android.window.TransitionInfo;
 
 import androidx.test.filters.SmallTest;
 
-import com.android.window.flags.Flags;
 import com.android.wm.shell.transition.TransitionInfoBuilder;
 
 import com.google.testing.junit.testparameterinjector.TestParameter;
@@ -135,8 +133,8 @@
                 .addChange(createChange(FLAG_IN_TASK_WITH_EMBEDDED_ACTIVITY, TRANSIT_OPEN))
                 .build();
         info.getChanges().getFirst().setAnimationOptions(TransitionInfo.AnimationOptions
-                .makeCustomAnimOptions("packageName", 0 /* enterResId */, 0 /* exitResId */,
-                        0 /* backgroundColor */, false /* overrideTaskTransition */));
+                .makeCustomAnimOptions("packageName", 0 /* enterResId */, 0 /* changeResId */,
+                        0 /* exitResId */, false /* overrideTaskTransition */));
         final Animator animator = mAnimRunner.createAnimator(
                 info, mStartTransaction, mFinishTransaction,
                 () -> mFinishCallback.onTransitionFinished(null /* wct */),
@@ -146,12 +144,9 @@
         assertEquals(0, animator.getDuration());
     }
 
-    // TODO(b/243518738): Rewrite with TestParameter
-    @EnableFlags(Flags.FLAG_ACTIVITY_EMBEDDING_OVERLAY_PRESENTATION_FLAG)
     @Test
     public void testCalculateParentBounds_flagEnabled_emptyParentSize() {
         TransitionInfo.Change change;
-        final TransitionInfo.Change stubChange = createChange(0 /* flags */);
         final Rect actualParentBounds = new Rect();
         change = prepareChangeForParentBoundsCalculationTest(
                 new Point(0, 0) /* endRelOffset */,
@@ -159,17 +154,15 @@
                 new Point() /* endParentSize */
         );
 
-        calculateParentBounds(change, stubChange, actualParentBounds);
+        calculateParentBounds(change, actualParentBounds);
 
         assertTrue("Parent bounds must be empty because end parent size is not set.",
                 actualParentBounds.isEmpty());
     }
 
-    @EnableFlags(Flags.FLAG_ACTIVITY_EMBEDDING_OVERLAY_PRESENTATION_FLAG)
     @Test
     public void testCalculateParentBounds_flagEnabled(
             @TestParameter ParentBoundsTestParameters params) {
-        final TransitionInfo.Change stubChange = createChange(0 /*flags*/);
         final Rect parentBounds = params.getParentBounds();
         final Rect endAbsBounds = params.getEndAbsBounds();
         final TransitionInfo.Change change = prepareChangeForParentBoundsCalculationTest(
@@ -178,7 +171,7 @@
                 endAbsBounds, new Point(parentBounds.width(), parentBounds.height()));
         final Rect actualParentBounds = new Rect();
 
-        calculateParentBounds(change, stubChange, actualParentBounds);
+        calculateParentBounds(change, actualParentBounds);
 
         assertEquals(parentBounds, actualParentBounds);
     }
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingControllerTests.java b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingControllerTests.java
index 53a13d0..da4543b 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingControllerTests.java
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingControllerTests.java
@@ -195,8 +195,8 @@
         final TransitionInfo.Change change = info.getChanges().getFirst();
 
         change.setAnimationOptions(TransitionInfo.AnimationOptions
-                .makeCustomAnimOptions("packageName", 0 /* enterResId */, 0 /* exitResId */,
-                        0 /* backgroundColor */, false /* overrideTaskTransition */));
+                .makeCustomAnimOptions("packageName", 0 /* enterResId */, 0 /* changeResId */,
+                        0 /* exitResId */, false /* overrideTaskTransition */));
         assertTrue(mController.shouldAnimate(info));
 
         change.setAnimationOptions(TransitionInfo.AnimationOptions
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/common/pip/PipBoundsAlgorithmTest.java b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/common/pip/PipBoundsAlgorithmTest.java
index 6bda225..7aea8ef 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/common/pip/PipBoundsAlgorithmTest.java
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/common/pip/PipBoundsAlgorithmTest.java
@@ -147,7 +147,9 @@
     public void getDefaultBounds_widerOverrideMinSize_matchesMinSizeWidthAndDefaultAspectRatio() {
         overrideDefaultAspectRatio(1.0f);
         // The min size's aspect ratio is greater than the default aspect ratio.
-        final Size overrideMinSize = new Size(150, 120);
+        final Size widerSize = mSizeSpecSource.getDefaultSize(1.5f);
+        final Size overrideMinSize = new Size(
+                widerSize.getWidth() / 2, widerSize.getHeight() / 2);
 
         mPipBoundsState.setOverrideMinSize(overrideMinSize);
         final Rect defaultBounds = mPipBoundsAlgorithm.getDefaultBounds();
@@ -163,7 +165,9 @@
     public void getDefaultBounds_tallerOverrideMinSize_matchesMinSizeHeightAndDefaultAspectRatio() {
         overrideDefaultAspectRatio(1.0f);
         // The min size's aspect ratio is greater than the default aspect ratio.
-        final Size overrideMinSize = new Size(120, 150);
+        final Size tallerSize = mSizeSpecSource.getDefaultSize(0.5f);
+        final Size overrideMinSize = new Size(
+                tallerSize.getWidth() / 2, tallerSize.getHeight() / 2);
 
         mPipBoundsState.setOverrideMinSize(overrideMinSize);
         final Rect defaultBounds = mPipBoundsAlgorithm.getDefaultBounds();
@@ -306,10 +310,12 @@
                 DEFAULT_ASPECT_RATIO,
                 (MAX_ASPECT_RATIO + DEFAULT_ASPECT_RATIO) / 2
         };
+        final Size defaultSize = mSizeSpecSource.getDefaultSize(1.0f);
+        final int defaultMinHeight = defaultSize.getHeight() / 2;
         final Size[] minimalSizes = new Size[] {
-                new Size((int) (200 * aspectRatios[0]), 200),
-                new Size((int) (200 * aspectRatios[1]), 200),
-                new Size((int) (200 * aspectRatios[2]), 200)
+                new Size((int) (defaultMinHeight * aspectRatios[0]), defaultMinHeight),
+                new Size((int) (defaultMinHeight * aspectRatios[1]), defaultMinHeight),
+                new Size((int) (defaultMinHeight * aspectRatios[2]), defaultMinHeight)
         };
         for (int i = 0; i < aspectRatios.length; i++) {
             final float aspectRatio = aspectRatios[i];
@@ -331,15 +337,17 @@
 
     @Test
     public void getAdjustedDestinationBounds_ignoreMinBounds() {
-        final float aspectRatio = (DEFAULT_ASPECT_RATIO + MAX_ASPECT_RATIO) / 2;
-        final Rect currentBounds = new Rect(0, 0, 0, 100);
-        currentBounds.right = (int) (currentBounds.height() * aspectRatio) + currentBounds.left;
-        final Size minSize = new Size(currentBounds.width() / 2, currentBounds.height() / 2);
+        final float oldAspectRatio = (DEFAULT_ASPECT_RATIO + MAX_ASPECT_RATIO) / 2;
+        final float newAspectRatio = (DEFAULT_ASPECT_RATIO + MIN_ASPECT_RATIO) / 2;
+        final Size defaultSize = mSizeSpecSource.getDefaultSize(oldAspectRatio);
+        final Size minSize = new Size(
+                defaultSize.getWidth() / 2, defaultSize.getHeight() / 2);
+        final Rect currentBounds = new Rect(0, 0, defaultSize.getWidth(), defaultSize.getHeight());
 
-        mPipBoundsState.setAspectRatio(aspectRatio);
+        mPipBoundsState.setAspectRatio(newAspectRatio);
         mPipBoundsState.setOverrideMinSize(minSize);
         final Rect destinationBounds = mPipBoundsAlgorithm.getAdjustedDestinationBounds(
-                currentBounds, aspectRatio);
+                currentBounds, newAspectRatio);
 
         assertTrue("Destination bounds ignores minimal size",
                 destinationBounds.width() > minSize.getWidth()
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/common/pip/PipBoundsStateTest.java b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/common/pip/PipBoundsStateTest.java
index ad664ac..01b76ed 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/common/pip/PipBoundsStateTest.java
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/common/pip/PipBoundsStateTest.java
@@ -51,7 +51,6 @@
 @SmallTest
 public class PipBoundsStateTest extends ShellTestCase {
 
-    private static final Size DEFAULT_SIZE = new Size(10, 10);
     private static final float DEFAULT_SNAP_FRACTION = 1.0f;
 
     /** The minimum possible size of the override min size's width or height */
@@ -184,10 +183,14 @@
     @Test
     public void testSetOverrideMinSize_changed_callbackInvoked() {
         final Runnable callback = mock(Runnable.class);
-        mPipBoundsState.setOverrideMinSize(new Size(5, 5));
+        mPipBoundsState.setAspectRatio(2f);
+        final Size defaultSize = mSizeSpecSource.getDefaultSize(mPipBoundsState.getAspectRatio());
+        mPipBoundsState.setOverrideMinSize(
+                new Size(defaultSize.getWidth() / 2, defaultSize.getHeight() / 2));
         mPipBoundsState.setOnMinimalSizeChangeCallback(callback);
 
-        mPipBoundsState.setOverrideMinSize(new Size(10, 10));
+        mPipBoundsState.setOverrideMinSize(
+                new Size(defaultSize.getWidth() / 4, defaultSize.getHeight() / 4));
 
         verify(callback).run();
     }
@@ -195,24 +198,47 @@
     @Test
     public void testSetOverrideMinSize_notChanged_callbackNotInvoked() {
         final Runnable callback = mock(Runnable.class);
-        mPipBoundsState.setOverrideMinSize(new Size(100, 150));
+        mPipBoundsState.setAspectRatio(2f);
+        final Size defaultSize = mSizeSpecSource.getDefaultSize(mPipBoundsState.getAspectRatio());
+        mPipBoundsState.setOverrideMinSize(
+                new Size(defaultSize.getWidth() / 2, defaultSize.getHeight() / 2));
         mPipBoundsState.setOnMinimalSizeChangeCallback(callback);
 
-        mPipBoundsState.setOverrideMinSize(new Size(100, 150));
+        mPipBoundsState.setOverrideMinSize(
+                new Size(defaultSize.getWidth() / 2, defaultSize.getHeight() / 2));
 
         verify(callback, never()).run();
     }
 
     @Test
+    public void testSetOverrideMinSize_tooLarge_ignored() {
+        final Runnable callback = mock(Runnable.class);
+        mPipBoundsState.setAspectRatio(2f);
+        final Size defaultSize = mSizeSpecSource.getDefaultSize(mPipBoundsState.getAspectRatio());
+        final Size halfSize = new Size(defaultSize.getWidth() / 2, defaultSize.getHeight() / 2);
+        final Size doubleSize = new Size(defaultSize.getWidth() * 2, defaultSize.getHeight() * 2);
+        mPipBoundsState.setOverrideMinSize(halfSize);
+        mPipBoundsState.setOnMinimalSizeChangeCallback(callback);
+
+        mPipBoundsState.setOverrideMinSize(doubleSize);
+
+        assertEquals("Override min size should be ignored",
+                mPipBoundsState.getOverrideMinSize(), halfSize);
+        verify(callback, never()).run();
+    }
+
+    @Test
     public void testGetOverrideMinEdgeSize() {
         mPipBoundsState.setOverrideMinSize(null);
         assertEquals(0, mPipBoundsState.getOverrideMinEdgeSize());
 
-        mPipBoundsState.setOverrideMinSize(new Size(100, 110));
-        assertEquals(100, mPipBoundsState.getOverrideMinEdgeSize());
+        mPipBoundsState.setAspectRatio(2f);
+        final Size defaultSize = mSizeSpecSource.getDefaultSize(mPipBoundsState.getAspectRatio());
+        final Size halfSize = new Size(defaultSize.getWidth() / 2, defaultSize.getHeight() / 2);
+        mPipBoundsState.setOverrideMinSize(halfSize);
 
-        mPipBoundsState.setOverrideMinSize(new Size(150, 200));
-        assertEquals(150, mPipBoundsState.getOverrideMinEdgeSize());
+        assertEquals(Math.min(halfSize.getWidth(), halfSize.getHeight()),
+                mPipBoundsState.getOverrideMinEdgeSize());
     }
 
     @Test
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopDisplayModeControllerTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopDisplayModeControllerTest.kt
index 0ff7230..d054de4 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopDisplayModeControllerTest.kt
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopDisplayModeControllerTest.kt
@@ -22,6 +22,8 @@
 import android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED
 import android.content.ContentResolver
 import android.os.Binder
+import android.platform.test.annotations.DisableFlags
+import android.platform.test.annotations.EnableFlags
 import android.provider.Settings
 import android.provider.Settings.Global.DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS
 import android.testing.AndroidTestingRunner
@@ -32,6 +34,7 @@
 import android.window.WindowContainerTransaction
 import androidx.test.filters.SmallTest
 import com.android.dx.mockito.inline.extended.ExtendedMockito.never
+import com.android.window.flags.Flags
 import com.android.wm.shell.MockToken
 import com.android.wm.shell.RootTaskDisplayAreaOrganizer
 import com.android.wm.shell.ShellTaskOrganizer
@@ -101,7 +104,7 @@
     private fun testDisplayWindowingModeSwitch(
         defaultWindowingMode: Int,
         extendedDisplayEnabled: Boolean,
-        expectTransition: Boolean,
+        expectToSwitch: Boolean,
     ) {
         defaultTDA.configuration.windowConfiguration.windowingMode = defaultWindowingMode
         whenever(mockWindowManager.getWindowingMode(anyInt())).thenReturn(defaultWindowingMode)
@@ -113,10 +116,14 @@
 
         settingsSession.use {
             connectExternalDisplay()
-            defaultTDA.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM
+            if (expectToSwitch) {
+                // Assumes [connectExternalDisplay] properly triggered the switching transition.
+                // Will verify the transition later along with [disconnectExternalDisplay].
+                defaultTDA.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM
+            }
             disconnectExternalDisplay()
 
-            if (expectTransition) {
+            if (expectToSwitch) {
                 val arg = argumentCaptor<WindowContainerTransaction>()
                 verify(transitions, times(2))
                     .startTransition(eq(TRANSIT_CHANGE), arg.capture(), isNull())
@@ -135,33 +142,47 @@
     }
 
     @Test
+    @DisableFlags(Flags.FLAG_ENABLE_DISPLAY_WINDOWING_MODE_SWITCHING)
+    fun displayWindowingModeSwitchOnDisplayConnected_fullscreenDisplay_flagDisabled() {
+        testDisplayWindowingModeSwitch(
+            defaultWindowingMode = WINDOWING_MODE_FULLSCREEN,
+            extendedDisplayEnabled = true,
+            expectToSwitch = false,
+        )
+    }
+
+    @Test
+    @EnableFlags(Flags.FLAG_ENABLE_DISPLAY_WINDOWING_MODE_SWITCHING)
     fun displayWindowingModeSwitchOnDisplayConnected_extendedDisplayDisabled() {
         testDisplayWindowingModeSwitch(
             defaultWindowingMode = WINDOWING_MODE_FULLSCREEN,
             extendedDisplayEnabled = false,
-            expectTransition = false,
+            expectToSwitch = false,
         )
     }
 
     @Test
+    @EnableFlags(Flags.FLAG_ENABLE_DISPLAY_WINDOWING_MODE_SWITCHING)
     fun displayWindowingModeSwitchOnDisplayConnected_fullscreenDisplay() {
         testDisplayWindowingModeSwitch(
             defaultWindowingMode = WINDOWING_MODE_FULLSCREEN,
             extendedDisplayEnabled = true,
-            expectTransition = true,
+            expectToSwitch = true,
         )
     }
 
     @Test
+    @EnableFlags(Flags.FLAG_ENABLE_DISPLAY_WINDOWING_MODE_SWITCHING)
     fun displayWindowingModeSwitchOnDisplayConnected_freeformDisplay() {
         testDisplayWindowingModeSwitch(
             defaultWindowingMode = WINDOWING_MODE_FREEFORM,
             extendedDisplayEnabled = true,
-            expectTransition = false,
+            expectToSwitch = false,
         )
     }
 
     @Test
+    @EnableFlags(Flags.FLAG_ENABLE_DISPLAY_WINDOWING_MODE_SWITCHING)
     fun displayWindowingModeSwitch_existingTasksOnConnected() {
         defaultTDA.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FULLSCREEN
         whenever(mockWindowManager.getWindowingMode(anyInt())).thenReturn(WINDOWING_MODE_FULLSCREEN)
@@ -180,6 +201,7 @@
     }
 
     @Test
+    @EnableFlags(Flags.FLAG_ENABLE_DISPLAY_WINDOWING_MODE_SWITCHING)
     fun displayWindowingModeSwitch_existingTasksOnDisconnected() {
         defaultTDA.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM
         whenever(mockWindowManager.getWindowingMode(anyInt())).thenAnswer {
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeVisualIndicatorTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeVisualIndicatorTest.kt
index 20d50aa..dcc9e24 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeVisualIndicatorTest.kt
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeVisualIndicatorTest.kt
@@ -36,6 +36,7 @@
 import com.android.wm.shell.common.DisplayLayout
 import com.android.wm.shell.common.SyncTransactionQueue
 import com.android.wm.shell.shared.bubbles.BubbleDropTargetBoundsProvider
+import com.android.wm.shell.windowdecor.tiling.SnapEventHandler
 import com.google.common.truth.Truth.assertThat
 import org.junit.Before
 import org.junit.Rule
@@ -67,6 +68,7 @@
     @Mock private lateinit var taskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer
     @Mock private lateinit var displayLayout: DisplayLayout
     @Mock private lateinit var bubbleBoundsProvider: BubbleDropTargetBoundsProvider
+    @Mock private lateinit var snapEventHandler: SnapEventHandler
 
     private lateinit var visualIndicator: DesktopModeVisualIndicator
     private val desktopExecutor = TestShellExecutor()
@@ -356,6 +358,7 @@
                 taskDisplayAreaOrganizer,
                 dragStartState,
                 bubbleBoundsProvider,
+                snapEventHandler,
             )
     }
 
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopRepositoryTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopRepositoryTest.kt
index 9bff287..a43b4dd 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopRepositoryTest.kt
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopRepositoryTest.kt
@@ -31,12 +31,14 @@
 import com.android.wm.shell.ShellTestCase
 import com.android.wm.shell.TestShellExecutor
 import com.android.wm.shell.common.ShellExecutor
+import com.android.wm.shell.desktopmode.DesktopRepository.Companion.INVALID_DESK_ID
 import com.android.wm.shell.desktopmode.persistence.Desktop
 import com.android.wm.shell.desktopmode.persistence.DesktopPersistentRepository
 import com.android.wm.shell.sysui.ShellInit
 import com.google.common.truth.Truth.assertThat
 import junit.framework.Assert.fail
 import kotlin.test.assertEquals
+import kotlin.test.assertNotNull
 import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.Dispatchers
 import kotlinx.coroutines.ExperimentalCoroutinesApi
@@ -1430,6 +1432,161 @@
             )
     }
 
+    @Test
+    @EnableFlags(FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND)
+    fun addDesk_updatesListener() {
+        val listener = TestDeskChangeListener()
+        val executor = TestShellExecutor()
+        repo.addDeskChangeListener(listener, executor)
+
+        repo.addDesk(displayId = 0, deskId = 1)
+        executor.flushAll()
+
+        val lastAddition = assertNotNull(listener.lastAddition)
+        assertThat(lastAddition.displayId).isEqualTo(0)
+        assertThat(lastAddition.deskId).isEqualTo(1)
+    }
+
+    @Test
+    @EnableFlags(FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND)
+    fun removeDesk_updatesListener() {
+        val listener = TestDeskChangeListener()
+        val executor = TestShellExecutor()
+        repo.addDeskChangeListener(listener, executor)
+        repo.addDesk(displayId = 0, deskId = 1)
+
+        repo.removeDesk(deskId = 1)
+        executor.flushAll()
+
+        val lastRemoval = assertNotNull(listener.lastRemoval)
+        assertThat(lastRemoval.displayId).isEqualTo(0)
+        assertThat(lastRemoval.deskId).isEqualTo(1)
+    }
+
+    @Test
+    @EnableFlags(FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND)
+    fun removeDesk_didNotExist_doesNotUpdateListener() {
+        val listener = TestDeskChangeListener()
+        val executor = TestShellExecutor()
+        repo.addDeskChangeListener(listener, executor)
+        repo.addDesk(displayId = 0, deskId = 1)
+
+        repo.removeDesk(deskId = 2)
+        executor.flushAll()
+
+        assertThat(listener.lastRemoval).isNull()
+    }
+
+    @Test
+    @EnableFlags(FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND)
+    fun removeDesk_wasActive_updatesActiveChangeListener() {
+        val listener = TestDeskChangeListener()
+        val executor = TestShellExecutor()
+        repo.addDeskChangeListener(listener, executor)
+        repo.addDesk(displayId = 0, deskId = 1)
+        repo.setActiveDesk(displayId = 0, deskId = 1)
+
+        repo.removeDesk(deskId = 1)
+        executor.flushAll()
+
+        val lastActivationChange = assertNotNull(listener.lastActivationChange)
+        assertThat(lastActivationChange.displayId).isEqualTo(0)
+        assertThat(lastActivationChange.oldActive).isEqualTo(1)
+        assertThat(lastActivationChange.newActive).isEqualTo(INVALID_DESK_ID)
+    }
+
+    @Test
+    @EnableFlags(FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND)
+    fun setDeskActive_fromNoActive_updatesListener() {
+        val listener = TestDeskChangeListener()
+        val executor = TestShellExecutor()
+        repo.addDeskChangeListener(listener, executor)
+        repo.addDesk(displayId = 1, deskId = 1)
+
+        repo.setActiveDesk(displayId = 1, deskId = 1)
+        executor.flushAll()
+
+        val lastActivationChange = assertNotNull(listener.lastActivationChange)
+        assertThat(lastActivationChange.displayId).isEqualTo(1)
+        assertThat(lastActivationChange.oldActive).isEqualTo(INVALID_DESK_ID)
+        assertThat(lastActivationChange.newActive).isEqualTo(1)
+    }
+
+    @Test
+    @EnableFlags(FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND)
+    fun setDeskActive_fromOtherActive_updatesListener() {
+        val listener = TestDeskChangeListener()
+        val executor = TestShellExecutor()
+        repo.addDeskChangeListener(listener, executor)
+        repo.addDesk(displayId = 1, deskId = 1)
+        repo.addDesk(displayId = 1, deskId = 2)
+        repo.setActiveDesk(displayId = 1, deskId = 1)
+
+        repo.setActiveDesk(displayId = 1, deskId = 2)
+        executor.flushAll()
+
+        val lastActivationChange = assertNotNull(listener.lastActivationChange)
+        assertThat(lastActivationChange.displayId).isEqualTo(1)
+        assertThat(lastActivationChange.oldActive).isEqualTo(1)
+        assertThat(lastActivationChange.newActive).isEqualTo(2)
+    }
+
+    @Test
+    @EnableFlags(FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND)
+    fun setDeskInactive_updatesListener() {
+        val listener = TestDeskChangeListener()
+        val executor = TestShellExecutor()
+        repo.addDeskChangeListener(listener, executor)
+        repo.addDesk(displayId = 0, deskId = 1)
+        repo.setActiveDesk(displayId = 0, deskId = 1)
+
+        repo.setDeskInactive(deskId = 1)
+        executor.flushAll()
+
+        val lastActivationChange = assertNotNull(listener.lastActivationChange)
+        assertThat(lastActivationChange.displayId).isEqualTo(0)
+        assertThat(lastActivationChange.oldActive).isEqualTo(1)
+        assertThat(lastActivationChange.newActive).isEqualTo(INVALID_DESK_ID)
+    }
+
+    private class TestDeskChangeListener : DesktopRepository.DeskChangeListener {
+        var lastAddition: LastAddition? = null
+            private set
+
+        var lastRemoval: LastRemoval? = null
+            private set
+
+        var lastActivationChange: LastActivationChange? = null
+            private set
+
+        override fun onDeskAdded(displayId: Int, deskId: Int) {
+            lastAddition = LastAddition(displayId, deskId)
+        }
+
+        override fun onDeskRemoved(displayId: Int, deskId: Int) {
+            lastRemoval = LastRemoval(displayId, deskId)
+        }
+
+        override fun onActiveDeskChanged(
+            displayId: Int,
+            newActiveDeskId: Int,
+            oldActiveDeskId: Int,
+        ) {
+            lastActivationChange =
+                LastActivationChange(
+                    displayId = displayId,
+                    oldActive = oldActiveDeskId,
+                    newActive = newActiveDeskId,
+                )
+        }
+
+        data class LastAddition(val displayId: Int, val deskId: Int)
+
+        data class LastRemoval(val displayId: Int, val deskId: Int)
+
+        data class LastActivationChange(val displayId: Int, val oldActive: Int, val newActive: Int)
+    }
+
     class TestListener : DesktopRepository.ActiveTasksListener {
         var activeChangesOnDefaultDisplay = 0
         var activeChangesOnSecondaryDisplay = 0
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksControllerTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksControllerTest.kt
index 521b8f7..b0785df 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksControllerTest.kt
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksControllerTest.kt
@@ -145,6 +145,7 @@
 import com.android.wm.shell.sysui.ShellCommandHandler
 import com.android.wm.shell.sysui.ShellController
 import com.android.wm.shell.sysui.ShellInit
+import com.android.wm.shell.transition.FocusTransitionObserver
 import com.android.wm.shell.transition.OneShotRemoteHandler
 import com.android.wm.shell.transition.TestRemoteTransition
 import com.android.wm.shell.transition.Transitions
@@ -239,6 +240,7 @@
     @Mock private lateinit var taskbarDesktopTaskListener: TaskbarDesktopTaskListener
     @Mock private lateinit var freeformTaskTransitionStarter: FreeformTaskTransitionStarter
     @Mock private lateinit var mockHandler: Handler
+    @Mock private lateinit var focusTransitionObserver: FocusTransitionObserver
     @Mock private lateinit var desktopModeEventLogger: DesktopModeEventLogger
     @Mock private lateinit var desktopModeUiEventLogger: DesktopModeUiEventLogger
     @Mock lateinit var persistentRepository: DesktopPersistentRepository
@@ -261,6 +263,7 @@
     @Mock private lateinit var desksTransitionsObserver: DesksTransitionObserver
     @Mock private lateinit var packageManager: PackageManager
     @Mock private lateinit var mockDisplayContext: Context
+    @Mock private lateinit var dragToDisplayTransitionHandler: DragToDisplayTransitionHandler
 
     private lateinit var controller: DesktopTasksController
     private lateinit var shellInit: ShellInit
@@ -432,6 +435,7 @@
             recentTasksController,
             mockInteractionJankMonitor,
             mockHandler,
+            focusTransitionObserver,
             desktopModeEventLogger,
             desktopModeUiEventLogger,
             desktopWallpaperActivityTokenProvider,
@@ -441,6 +445,7 @@
             desksTransitionsObserver,
             userProfileContexts,
             desktopModeCompatPolicy,
+            dragToDisplayTransitionHandler,
         )
 
     @After
@@ -5148,7 +5153,7 @@
                 Mockito.argThat { wct ->
                     return@argThat wct.hierarchyOps[0].isReparent
                 },
-                eq(null),
+                eq(dragToDisplayTransitionHandler),
             )
     }
 
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandlerTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandlerTest.kt
index 85f6cd3..de55db8 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandlerTest.kt
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandlerTest.kt
@@ -8,6 +8,7 @@
 import android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW
 import android.app.WindowConfiguration.WindowingMode
 import android.graphics.PointF
+import android.graphics.Rect
 import android.os.IBinder
 import android.os.SystemProperties
 import android.testing.AndroidTestingRunner
@@ -36,6 +37,7 @@
 import com.android.wm.shell.splitscreen.SplitScreenController
 import com.android.wm.shell.transition.Transitions
 import com.android.wm.shell.windowdecor.MoveToDesktopAnimator
+import com.google.common.truth.Truth.assertThat
 import java.util.Optional
 import java.util.function.Supplier
 import junit.framework.Assert.assertEquals
@@ -694,6 +696,50 @@
             .cancel(eq(CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_HOLD))
     }
 
+    @Test
+    fun getAnimationFraction_returnsFraction() {
+        val fraction =
+            SpringDragToDesktopTransitionHandler.getAnimationFraction(
+                startBounds = Rect(0, 0, 0, 0),
+                endBounds = Rect(0, 0, 10, 10),
+                animBounds = Rect(0, 0, 5, 5),
+            )
+        assertThat(fraction).isWithin(TOLERANCE).of(0.5f)
+    }
+
+    @Test
+    fun getAnimationFraction_animBoundsSameAsEnd_returnsOne() {
+        val fraction =
+            SpringDragToDesktopTransitionHandler.getAnimationFraction(
+                startBounds = Rect(0, 0, 0, 0),
+                endBounds = Rect(0, 0, 10, 10),
+                animBounds = Rect(0, 0, 10, 10),
+            )
+        assertThat(fraction).isWithin(TOLERANCE).of(1f)
+    }
+
+    @Test
+    fun getAnimationFraction_startAndEndBoundsSameWidth_usesHeight() {
+        val fraction =
+            SpringDragToDesktopTransitionHandler.getAnimationFraction(
+                startBounds = Rect(0, 0, 10, 10),
+                endBounds = Rect(0, 0, 10, 30),
+                animBounds = Rect(0, 0, 10, 25),
+            )
+        assertThat(fraction).isWithin(TOLERANCE).of(0.75f)
+    }
+
+    @Test
+    fun getAnimationFraction_startAndEndBoundsSame_returnsZero() {
+        val fraction =
+            SpringDragToDesktopTransitionHandler.getAnimationFraction(
+                startBounds = Rect(0, 0, 10, 10),
+                endBounds = Rect(0, 0, 10, 10),
+                animBounds = Rect(0, 0, 10, 25),
+            )
+        assertThat(fraction).isWithin(TOLERANCE).of(0f)
+    }
+
     private fun startDrag(
         handler: DragToDesktopTransitionHandler,
         task: RunningTaskInfo = createTask(),
@@ -826,4 +872,8 @@
 
     private fun systemPropertiesKey(name: String) =
         "${SpringDragToDesktopTransitionHandler.SYSTEM_PROPERTIES_GROUP}.$name"
+
+    private companion object {
+        private const val TOLERANCE = 1e-5f
+    }
 }
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DragToDisplayTransitionHandlerTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DragToDisplayTransitionHandlerTest.kt
new file mode 100644
index 0000000..51c3029
--- /dev/null
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DragToDisplayTransitionHandlerTest.kt
@@ -0,0 +1,101 @@
+/*
+ * Copyright (C) 2025 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.wm.shell.desktopmode
+
+import android.graphics.Point
+import android.graphics.Rect
+import android.os.IBinder
+import android.view.SurfaceControl
+import android.window.TransitionInfo
+import android.window.TransitionRequestInfo
+import com.android.wm.shell.transition.Transitions
+import org.junit.Before
+import org.junit.Test
+import org.mockito.Mockito.verify
+import org.mockito.kotlin.any
+import org.mockito.kotlin.doReturn
+import org.mockito.kotlin.mock
+import org.mockito.kotlin.whenever
+
+/**
+ * Test class for {@link DragToDisplayTransitionHandler}
+ *
+ * Usage: atest WMShellUnitTests:DragToDisplayTransitionHandlerTest
+ */
+class DragToDisplayTransitionHandlerTest {
+    private lateinit var handler: DragToDisplayTransitionHandler
+    private val mockTransition: IBinder = mock()
+    private val mockRequestInfo: TransitionRequestInfo = mock()
+    private val mockTransitionInfo: TransitionInfo = mock()
+    private val mockStartTransaction: SurfaceControl.Transaction = mock()
+    private val mockFinishTransaction: SurfaceControl.Transaction = mock()
+    private val mockFinishCallback: Transitions.TransitionFinishCallback = mock()
+
+    @Before
+    fun setUp() {
+        handler = DragToDisplayTransitionHandler()
+        whenever(mockStartTransaction.setWindowCrop(any(), any(), any()))
+            .thenReturn(mockStartTransaction)
+        whenever(mockFinishTransaction.setWindowCrop(any(), any(), any()))
+            .thenReturn(mockFinishTransaction)
+    }
+
+    @Test
+    fun handleRequest_anyRequest_returnsNull() {
+        val result = handler.handleRequest(mockTransition, mockRequestInfo)
+        assert(result == null)
+    }
+
+    @Test
+    fun startAnimation_verifyTransformationsApplied() {
+        val mockChange1 = mock<TransitionInfo.Change>()
+        val leash1 = mock<SurfaceControl>()
+        val endBounds1 = Rect(0, 0, 50, 50)
+        val endPosition1 = Point(5, 5)
+
+        whenever(mockChange1.leash).doReturn(leash1)
+        whenever(mockChange1.endAbsBounds).doReturn(endBounds1)
+        whenever(mockChange1.endRelOffset).doReturn(endPosition1)
+
+        val mockChange2 = mock<TransitionInfo.Change>()
+        val leash2 = mock<SurfaceControl>()
+        val endBounds2 = Rect(100, 100, 200, 150)
+        val endPosition2 = Point(15, 25)
+
+        whenever(mockChange2.leash).doReturn(leash2)
+        whenever(mockChange2.endAbsBounds).doReturn(endBounds2)
+        whenever(mockChange2.endRelOffset).doReturn(endPosition2)
+
+        whenever(mockTransitionInfo.changes).doReturn(listOf(mockChange1, mockChange2))
+
+        handler.startAnimation(
+            mockTransition,
+            mockTransitionInfo,
+            mockStartTransaction,
+            mockFinishTransaction,
+            mockFinishCallback,
+        )
+
+        verify(mockStartTransaction).setWindowCrop(leash1, endBounds1.width(), endBounds1.height())
+        verify(mockStartTransaction)
+            .setPosition(leash1, endPosition1.x.toFloat(), endPosition1.y.toFloat())
+        verify(mockStartTransaction).setWindowCrop(leash2, endBounds2.width(), endBounds2.height())
+        verify(mockStartTransaction)
+            .setPosition(leash2, endPosition2.x.toFloat(), endPosition2.y.toFloat())
+        verify(mockStartTransaction).apply()
+        verify(mockFinishCallback).onTransitionFinished(null)
+    }
+}
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/VisualIndicatorViewContainerTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/VisualIndicatorViewContainerTest.kt
index 79b0f1c..4c8cb38 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/VisualIndicatorViewContainerTest.kt
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/VisualIndicatorViewContainerTest.kt
@@ -38,6 +38,7 @@
 import com.android.wm.shell.common.SyncTransactionQueue
 import com.android.wm.shell.shared.bubbles.BubbleDropTargetBoundsProvider
 import com.android.wm.shell.windowdecor.WindowDecoration.SurfaceControlViewHostFactory
+import com.android.wm.shell.windowdecor.tiling.SnapEventHandler
 import com.google.common.truth.Truth.assertThat
 import kotlin.test.Test
 import org.junit.Before
@@ -71,6 +72,7 @@
     @Mock private lateinit var mockSurfaceControlViewHostFactory: SurfaceControlViewHostFactory
     @Mock private lateinit var mockBackground: LayerDrawable
     @Mock private lateinit var bubbleDropTargetBoundsProvider: BubbleDropTargetBoundsProvider
+    @Mock private lateinit var snapEventHandler: SnapEventHandler
     private val taskInfo: RunningTaskInfo = createTaskInfo()
     private val mainExecutor = TestShellExecutor()
     private val desktopExecutor = TestShellExecutor()
@@ -81,6 +83,8 @@
         whenever(displayLayout.getStableBounds(any())).thenAnswer { i ->
             (i.arguments.first() as Rect).set(DISPLAY_BOUNDS)
         }
+        whenever(snapEventHandler.getRightSnapBoundsIfTiled(any())).thenReturn(Rect(1, 2, 3, 4))
+        whenever(snapEventHandler.getLeftSnapBoundsIfTiled(any())).thenReturn(Rect(5, 6, 7, 8))
         whenever(mockSurfaceControlViewHostFactory.create(any(), any(), any()))
             .thenReturn(mock(SurfaceControlViewHost::class.java))
     }
@@ -117,7 +121,7 @@
             DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR,
         )
         desktopExecutor.flushAll()
-        verify(spyViewContainer).fadeInIndicator(any(), any())
+        verify(spyViewContainer).fadeInIndicator(any(), any(), any(), any())
     }
 
     @Test
@@ -135,6 +139,8 @@
                 any(),
                 eq(DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR),
                 anyOrNull(),
+                eq(taskInfo.displayId),
+                eq(snapEventHandler),
             )
     }
 
@@ -167,6 +173,8 @@
                     DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR,
                     displayLayout,
                     bubbleDropTargetBoundsProvider,
+                    taskInfo.displayId,
+                    snapEventHandler,
                 )
             }
         assertThat(animator?.indicatorStartBounds).isEqualTo(Rect(15, 15, 985, 985))
@@ -174,6 +182,46 @@
     }
 
     @Test
+    fun testFadeInBoundsCalculationForLeftSnap() {
+        val spyIndicator = setupSpyViewContainer()
+        val animator =
+            spyIndicator.indicatorView?.let {
+                VisualIndicatorViewContainer.VisualIndicatorAnimator.fadeBoundsIn(
+                    it,
+                    DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_LEFT_INDICATOR,
+                    displayLayout,
+                    bubbleDropTargetBoundsProvider,
+                    taskInfo.displayId,
+                    snapEventHandler,
+                )
+            }
+
+        // Right bound is the same as whatever right bound snapEventHandler returned minus padding,
+        // in this case, the right bound for the left app is 7.
+        assertThat(animator?.indicatorEndBounds).isEqualTo(Rect(0, 0, 7, 1000))
+    }
+
+    @Test
+    fun testFadeInBoundsCalculationForRightSnap() {
+        val spyIndicator = setupSpyViewContainer()
+        val animator =
+            spyIndicator.indicatorView?.let {
+                VisualIndicatorViewContainer.VisualIndicatorAnimator.fadeBoundsIn(
+                    it,
+                    DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_RIGHT_INDICATOR,
+                    displayLayout,
+                    bubbleDropTargetBoundsProvider,
+                    taskInfo.displayId,
+                    snapEventHandler,
+                )
+            }
+
+        // Left bound is the same as whatever left bound snapEventHandler returned plus padding
+        // in this case, the left bound of the right app is 1.
+        assertThat(animator?.indicatorEndBounds).isEqualTo(Rect(1, 0, 1000, 1000))
+    }
+
+    @Test
     fun testFadeOutBoundsCalculation() {
         val spyIndicator = setupSpyViewContainer()
         val animator =
@@ -183,6 +231,8 @@
                     DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR,
                     displayLayout,
                     bubbleDropTargetBoundsProvider,
+                    taskInfo.displayId,
+                    snapEventHandler,
                 )
             }
         assertThat(animator?.indicatorStartBounds).isEqualTo(Rect(0, 0, 1000, 1000))
@@ -199,6 +249,8 @@
                 DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR,
                 DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_LEFT_INDICATOR,
                 bubbleDropTargetBoundsProvider,
+                taskInfo.displayId,
+                snapEventHandler,
             )
         // Test desktop to split-right bounds.
         animator =
@@ -208,6 +260,8 @@
                 DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR,
                 DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_RIGHT_INDICATOR,
                 bubbleDropTargetBoundsProvider,
+                taskInfo.displayId,
+                snapEventHandler,
             )
     }
 
@@ -220,6 +274,7 @@
                 syncQueue,
                 mockSurfaceControlViewHostFactory,
                 bubbleDropTargetBoundsProvider,
+                snapEventHandler,
             )
         viewContainer.createView(
             context,
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/pip/PipTaskOrganizerTest.java b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/pip/PipTaskOrganizerTest.java
index 2668823..c6a0fc3 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/pip/PipTaskOrganizerTest.java
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/pip/PipTaskOrganizerTest.java
@@ -164,10 +164,12 @@
 
     @Test
     public void startSwipePipToHome_updatesOverrideMinSize() {
-        final Size minSize = new Size(400, 320);
+        final Rational aspectRatio = new Rational(2, 1);
+        final Size defaultSize = mSizeSpecSource.getDefaultSize(aspectRatio.floatValue());
+        final Size minSize = new Size(defaultSize.getWidth() / 2, defaultSize.getHeight() / 2);
 
         mPipTaskOrganizer.startSwipePipToHome(mComponent1, createActivityInfo(minSize),
-                createPipParams(null));
+                createPipParams(aspectRatio));
 
         assertEquals(minSize, mPipBoundsState.getOverrideMinSize());
     }
@@ -192,10 +194,12 @@
 
     @Test
     public void onTaskAppeared_updatesOverrideMinSize() {
-        final Size minSize = new Size(400, 320);
+        final Rational aspectRatio = new Rational(2, 1);
+        final Size defaultSize = mSizeSpecSource.getDefaultSize(aspectRatio.floatValue());
+        final Size minSize = new Size(defaultSize.getWidth() / 2, defaultSize.getHeight() / 2);
 
         mPipTaskOrganizer.onTaskAppeared(
-                createTaskInfo(mComponent1, createPipParams(null), minSize),
+                createTaskInfo(mComponent1, createPipParams(aspectRatio), minSize),
                 mock(SurfaceControl.class));
 
         assertEquals(minSize, mPipBoundsState.getOverrideMinSize());
@@ -248,13 +252,15 @@
 
     @Test
     public void onTaskInfoChanged_inPip_updatesOverrideMinSize() {
+        final Rational aspectRatio = new Rational(2, 1);
+        final Size defaultSize = mSizeSpecSource.getDefaultSize(aspectRatio.floatValue());
+        final Size minSize = new Size(defaultSize.getWidth() / 2, defaultSize.getHeight() / 2);
         mPipTaskOrganizer.onTaskAppeared(createTaskInfo(mComponent1,
-                createPipParams(null)), mock(SurfaceControl.class));
+                createPipParams(aspectRatio)), mock(SurfaceControl.class));
         sendOnPipTransitionFinished(TRANSITION_DIRECTION_TO_PIP);
 
-        final Size minSize = new Size(400, 320);
         mPipTaskOrganizer.onTaskInfoChanged(createTaskInfo(mComponent2,
-                createPipParams(null), minSize));
+                createPipParams(aspectRatio), minSize));
 
         assertEquals(minSize, mPipBoundsState.getOverrideMinSize());
     }
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/pip/tv/OWNERS b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/pip/tv/OWNERS
index 736d4cf..a7d1890 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/pip/tv/OWNERS
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/pip/tv/OWNERS
@@ -1,3 +1,2 @@
 # WM shell sub-module TV pip owners
-galinap@google.com
-bronger@google.com
\ No newline at end of file
+bronger@google.com
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/pip2/phone/PipSchedulerTest.java b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/pip2/phone/PipSchedulerTest.java
index 0c19529..275e488 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/pip2/phone/PipSchedulerTest.java
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/pip2/phone/PipSchedulerTest.java
@@ -28,6 +28,7 @@
 import static org.mockito.kotlin.VerificationKt.verify;
 
 import android.app.ActivityManager;
+import android.app.PictureInPictureParams;
 import android.content.Context;
 import android.content.res.Resources;
 import android.graphics.Matrix;
@@ -47,6 +48,7 @@
 import com.android.wm.shell.pip2.PipSurfaceTransactionHelper;
 import com.android.wm.shell.pip2.animation.PipAlphaAnimator;
 import com.android.wm.shell.splitscreen.SplitScreenController;
+import com.android.wm.shell.util.StubTransaction;
 
 import org.junit.Before;
 import org.junit.Test;
@@ -107,6 +109,8 @@
         mPipScheduler.setSurfaceControlTransactionFactory(mMockFactory);
         mPipScheduler.setPipAlphaAnimatorSupplier((context, leash, startTx, finishTx, direction) ->
                 mMockAlphaAnimator);
+        final PictureInPictureParams params = new PictureInPictureParams.Builder().build();
+        mPipScheduler.setPipParamsSupplier(() -> params);
 
         SurfaceControl testLeash = new SurfaceControl.Builder()
                 .setContainerLayer()
@@ -289,6 +293,28 @@
         verify(mMockUpdateMovementBoundsRunnable, times(1)).run();
     }
 
+    @Test
+    public void finishResize_nonSeamless_alphaAnimatorStarted() {
+        final PictureInPictureParams params =
+                new PictureInPictureParams.Builder().setSeamlessResizeEnabled(false).build();
+        mPipScheduler.setPipParamsSupplier(() -> params);
+        when(mMockFactory.getTransaction()).thenReturn(new StubTransaction());
+
+        mPipScheduler.scheduleFinishResizePip(TEST_BOUNDS);
+
+        verify(mMockAlphaAnimator, times(1)).start();
+    }
+
+    @Test
+    public void finishResize_seamless_animatorNotStarted() {
+        final PictureInPictureParams params =
+                new PictureInPictureParams.Builder().setSeamlessResizeEnabled(true).build();
+        mPipScheduler.setPipParamsSupplier(() -> params);
+
+        mPipScheduler.scheduleFinishResizePip(TEST_BOUNDS);
+        verify(mMockAlphaAnimator, never()).start();
+    }
+
     private void setNullPipTaskToken() {
         when(mMockPipTransitionState.getPipTaskToken()).thenReturn(null);
     }
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/pip2/phone/PipTaskListenerTest.java b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/pip2/phone/PipTaskListenerTest.java
index 1b462c3..333569a 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/pip2/phone/PipTaskListenerTest.java
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/pip2/phone/PipTaskListenerTest.java
@@ -294,6 +294,8 @@
         mPipTaskListener = new PipTaskListener(mMockContext, mMockShellTaskOrganizer,
                 mMockPipTransitionState, mMockPipScheduler, mMockPipBoundsState,
                 mMockPipBoundsAlgorithm, mMockShellExecutor);
+        clearInvocations(mMockPipScheduler);
+
         Bundle extras = new Bundle();
         extras.putBoolean(ANIMATING_ASPECT_RATIO_CHANGE, false);
 
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/shared/desktopmode/DesktopModeStatusTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/shared/desktopmode/DesktopModeStatusTest.kt
index 4082ffd..fb62ba7 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/shared/desktopmode/DesktopModeStatusTest.kt
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/shared/desktopmode/DesktopModeStatusTest.kt
@@ -16,6 +16,7 @@
 
 package com.android.wm.shell.shared.desktopmode
 
+import android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM
 import android.content.Context
 import android.content.res.Resources
 import android.platform.test.annotations.DisableFlags
@@ -27,6 +28,7 @@
 import com.android.internal.R
 import com.android.window.flags.Flags
 import com.android.wm.shell.ShellTestCase
+import com.android.wm.shell.util.createTaskInfo
 import com.google.common.truth.Truth.assertThat
 import org.junit.After
 import org.junit.Before
@@ -152,6 +154,70 @@
         assertThat(DesktopModeStatus.canEnterDesktopMode(mockContext)).isTrue()
     }
 
+    @EnableFlags(
+        Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE,
+        Flags.FLAG_ENABLE_OPAQUE_BACKGROUND_FOR_TRANSPARENT_WINDOWS,
+    )
+    @Test
+    fun shouldSetBackground_BTWFlagEnabled_freeformTask_returnsTrue() {
+        val freeFormTaskInfo = createTaskInfo(deviceWindowingMode = WINDOWING_MODE_FREEFORM)
+        assertThat(DesktopModeStatus.shouldSetBackground(freeFormTaskInfo)).isTrue()
+    }
+
+    @EnableFlags(
+        Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE,
+        Flags.FLAG_ENABLE_OPAQUE_BACKGROUND_FOR_TRANSPARENT_WINDOWS,
+    )
+    @Test
+    fun shouldSetBackground_BTWFlagEnabled_notFreeformTask_returnsFalse() {
+        val notFreeFormTaskInfo = createTaskInfo()
+        assertThat(DesktopModeStatus.shouldSetBackground(notFreeFormTaskInfo)).isFalse()
+    }
+
+    @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE)
+    @DisableFlags(Flags.FLAG_ENABLE_OPAQUE_BACKGROUND_FOR_TRANSPARENT_WINDOWS)
+    @Test
+    fun shouldSetBackground_BTWFlagDisabled_freeformTaskAndFluid_returnsTrue() {
+        val freeFormTaskInfo = createTaskInfo(deviceWindowingMode = WINDOWING_MODE_FREEFORM)
+
+        setIsVeiledResizeEnabled(false)
+        assertThat(DesktopModeStatus.shouldSetBackground(freeFormTaskInfo)).isTrue()
+    }
+
+    @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE)
+    @DisableFlags(Flags.FLAG_ENABLE_OPAQUE_BACKGROUND_FOR_TRANSPARENT_WINDOWS)
+    @Test
+    fun shouldSetBackground_BTWFlagDisabled_freeformTaskAndVeiled_returnsFalse() {
+        val freeFormTaskInfo = createTaskInfo(deviceWindowingMode = WINDOWING_MODE_FREEFORM)
+
+        setIsVeiledResizeEnabled(true)
+        assertThat(DesktopModeStatus.shouldSetBackground(freeFormTaskInfo)).isFalse()
+    }
+
+    @EnableFlags(
+        Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE,
+        Flags.FLAG_ENABLE_OPAQUE_BACKGROUND_FOR_TRANSPARENT_WINDOWS,
+    )
+    @Test
+    fun shouldSetBackground_BTWFlagEnabled_freeformTaskAndFluid_returnsTrue() {
+        val freeFormTaskInfo = createTaskInfo(deviceWindowingMode = WINDOWING_MODE_FREEFORM)
+
+        setIsVeiledResizeEnabled(false)
+        assertThat(DesktopModeStatus.shouldSetBackground(freeFormTaskInfo)).isTrue()
+    }
+
+    @EnableFlags(
+        Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE,
+        Flags.FLAG_ENABLE_OPAQUE_BACKGROUND_FOR_TRANSPARENT_WINDOWS,
+    )
+    @Test
+    fun shouldSetBackground_BTWFlagEnabled_windowModesTask_freeformTaskAndVeiled_returnsTrue() {
+        val freeFormTaskInfo = createTaskInfo(deviceWindowingMode = WINDOWING_MODE_FREEFORM)
+
+        setIsVeiledResizeEnabled(true)
+        assertThat(DesktopModeStatus.shouldSetBackground(freeFormTaskInfo)).isTrue()
+    }
+
     @Test
     fun isDeviceEligibleForDesktopMode_configDEModeOnAndIntDispHostsDesktop_returnsTrue() {
         doReturn(true).whenever(mockResources).getBoolean(eq(R.bool.config_isDesktopModeSupported))
@@ -254,4 +320,11 @@
         deviceRestrictions.isAccessible = true
         deviceRestrictions.setBoolean(/* obj= */ null, /* z= */ !eligible)
     }
+
+    private fun setIsVeiledResizeEnabled(enabled: Boolean) {
+        val deviceRestrictions =
+            DesktopModeStatus::class.java.getDeclaredField("IS_VEILED_RESIZE_ENABLED")
+        deviceRestrictions.isAccessible = true
+        deviceRestrictions.setBoolean(/* obj= */ null, /* z= */ enabled)
+    }
 }
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitTestUtils.java b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitTestUtils.java
index 414c014..ffef0d1 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitTestUtils.java
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitTestUtils.java
@@ -16,6 +16,8 @@
 
 package com.android.wm.shell.splitscreen;
 
+import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_50_50;
+
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.mock;
 
@@ -58,6 +60,7 @@
         doReturn(leash).when(out).getDividerLeash();
         doReturn(bounds1).when(out).getTopLeftBounds();
         doReturn(bounds2).when(out).getBottomRightBounds();
+        doReturn(SNAP_TO_2_50_50).when(out).calculateCurrentSnapPosition();
         return out;
     }
 
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/transition/ShellTransitionTests.java b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/transition/ShellTransitionTests.java
index 6f73db0..6773307 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/transition/ShellTransitionTests.java
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/transition/ShellTransitionTests.java
@@ -1316,9 +1316,11 @@
                         mTransactionPool, createTestDisplayController(), mMainExecutor,
                         mMainHandler, mAnimExecutor, mock(HomeTransitionObserver.class),
                         mock(FocusTransitionObserver.class));
+        final RecentTasksController mockRecentsTaskController = mock(RecentTasksController.class);
+        doReturn(mContext).when(mockRecentsTaskController).getContext();
         final RecentsTransitionHandler recentsHandler =
                 new RecentsTransitionHandler(shellInit, mock(ShellTaskOrganizer.class), transitions,
-                        mock(RecentTasksController.class), mock(HomeTransitionObserver.class));
+                        mockRecentsTaskController, mock(HomeTransitionObserver.class));
         transitions.replaceDefaultHandlerForTest(mDefaultHandler);
         shellInit.init();
 
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModelTests.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModelTests.kt
index 16c7935..e89a122 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModelTests.kt
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModelTests.kt
@@ -321,6 +321,19 @@
     }
 
     @Test
+    fun testOnTaskInfoChanged_tilingNotified() {
+        val task = createTask(
+            windowingMode = WINDOWING_MODE_FREEFORM
+        )
+        setUpMockDecorationsForTasks(task)
+
+        onTaskOpening(task)
+        desktopModeWindowDecorViewModel.onTaskInfoChanged(task)
+
+        verify(mockTilingWindowDecoration).onTaskInfoChange(task)
+    }
+
+    @Test
     @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_IMMERSIVE_HANDLE_HIDING)
     fun testInsetsStateChanged_notifiesAllDecorsInDisplay() {
         val task1 = createTask(windowingMode = WINDOWING_MODE_FREEFORM, displayId = 1)
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/WindowDecorationTests.java b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/WindowDecorationTests.java
index af01623..a2927fa 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/WindowDecorationTests.java
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/WindowDecorationTests.java
@@ -24,7 +24,6 @@
 import static android.view.WindowInsets.Type.mandatorySystemGestures;
 import static android.view.WindowInsets.Type.statusBars;
 
-import static com.android.dx.mockito.inline.extended.ExtendedMockito.mockitoSession;
 import static com.android.wm.shell.MockSurfaceControlHelper.createMockSurfaceControlBuilder;
 import static com.android.wm.shell.MockSurfaceControlHelper.createMockSurfaceControlTransaction;
 
@@ -51,7 +50,6 @@
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
-import static org.mockito.quality.Strictness.LENIENT;
 
 import android.annotation.NonNull;
 import android.app.ActivityManager;
@@ -79,13 +77,11 @@
 
 import androidx.test.filters.SmallTest;
 
-import com.android.dx.mockito.inline.extended.StaticMockitoSession;
 import com.android.wm.shell.ShellTaskOrganizer;
 import com.android.wm.shell.ShellTestCase;
 import com.android.wm.shell.TestRunningTaskInfoBuilder;
 import com.android.wm.shell.common.DisplayController;
 import com.android.wm.shell.desktopmode.DesktopModeEventLogger;
-import com.android.wm.shell.shared.desktopmode.DesktopModeStatus;
 import com.android.wm.shell.tests.R;
 import com.android.wm.shell.windowdecor.additionalviewcontainer.AdditionalViewContainer;
 import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHost;
@@ -564,12 +560,7 @@
     }
 
     @Test
-    public void testRelayout_fluidResizeEnabled_freeformTask_setTaskSurfaceColor() {
-        StaticMockitoSession mockitoSession = mockitoSession().mockStatic(
-                DesktopModeStatus.class).strictness(
-                LENIENT).startMocking();
-        when(DesktopModeStatus.isVeiledResizeEnabled()).thenReturn(false);
-
+    public void testRelayout_shouldSetBackground_freeformTask_setTaskSurfaceColor() {
         final Display defaultDisplay = mock(Display.class);
         doReturn(defaultDisplay).when(mMockDisplayController)
                 .getDisplay(Display.DEFAULT_DISPLAY);
@@ -595,11 +586,10 @@
                 .build();
         final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo);
 
+        mRelayoutParams.mShouldSetBackground = true;
         windowDecor.relayout(taskInfo, true /* hasGlobalFocus */);
 
         verify(mMockSurfaceControlStartT).setColor(mMockTaskSurface, new float[]{1.f, 1.f, 0.f});
-
-        mockitoSession.finishMocking();
     }
 
     @Test
@@ -627,11 +617,7 @@
     }
 
     @Test
-    public void testRelayout_fluidResizeEnabled_fullscreenTask_clearTaskSurfaceColor() {
-        StaticMockitoSession mockitoSession = mockitoSession().mockStatic(
-                DesktopModeStatus.class).strictness(LENIENT).startMocking();
-        when(DesktopModeStatus.isVeiledResizeEnabled()).thenReturn(false);
-
+    public void testRelayout_shouldNotSetBackground_fullscreenTask_clearTaskSurfaceColor() {
         final Display defaultDisplay = mock(Display.class);
         doReturn(defaultDisplay).when(mMockDisplayController)
                 .getDisplay(Display.DEFAULT_DISPLAY);
@@ -655,12 +641,11 @@
                 .setWindowingMode(WINDOWING_MODE_FULLSCREEN)
                 .build();
         final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo);
+        mRelayoutParams.mIsCaptionVisible = false;
 
         windowDecor.relayout(taskInfo, true /* hasGlobalFocus */);
 
         verify(mMockSurfaceControlStartT).unsetColor(mMockTaskSurface);
-
-        mockitoSession.finishMocking();
     }
 
     @Test
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDecorViewModelTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDecorViewModelTest.kt
index 2cabb9a..646ec21 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDecorViewModelTest.kt
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDecorViewModelTest.kt
@@ -16,6 +16,7 @@
 package com.android.wm.shell.windowdecor.tiling
 
 import android.content.Context
+import android.content.res.Resources
 import android.graphics.Rect
 import android.testing.AndroidTestingRunner
 import androidx.test.filters.SmallTest
@@ -23,12 +24,13 @@
 import com.android.wm.shell.ShellTaskOrganizer
 import com.android.wm.shell.ShellTestCase
 import com.android.wm.shell.common.DisplayController
+import com.android.wm.shell.common.DisplayLayout
 import com.android.wm.shell.common.ShellExecutor
 import com.android.wm.shell.common.SyncTransactionQueue
 import com.android.wm.shell.desktopmode.DesktopModeEventLogger
-import com.android.wm.shell.desktopmode.DesktopUserRepositories
 import com.android.wm.shell.desktopmode.DesktopTasksController
 import com.android.wm.shell.desktopmode.DesktopTestHelpers.createFreeformTask
+import com.android.wm.shell.desktopmode.DesktopUserRepositories
 import com.android.wm.shell.desktopmode.ReturnToDragStartAnimator
 import com.android.wm.shell.desktopmode.ToggleResizeDesktopTaskTransitionHandler
 import com.android.wm.shell.transition.FocusTransitionObserver
@@ -52,6 +54,7 @@
 @RunWith(AndroidTestingRunner::class)
 class DesktopTilingDecorViewModelTest : ShellTestCase() {
     private val contextMock: Context = mock()
+    private val resourcesMock: Resources = mock()
     private val mainDispatcher: MainCoroutineDispatcher = mock()
     private val bgScope: CoroutineScope = mock()
     private val displayControllerMock: DisplayController = mock()
@@ -70,6 +73,7 @@
     private val desktopTilingDecoration: DesktopTilingWindowDecoration = mock()
     private val taskResourceLoader: WindowDecorTaskResourceLoader = mock()
     private val focusTransitionObserver: FocusTransitionObserver = mock()
+    private val displayLayout: DisplayLayout = mock()
     private val mainExecutor: ShellExecutor = mock()
     private lateinit var desktopTilingDecorViewModel: DesktopTilingDecorViewModel
 
@@ -91,9 +95,16 @@
                 desktopModeEventLogger,
                 taskResourceLoader,
                 focusTransitionObserver,
-                mainExecutor
+                mainExecutor,
             )
         whenever(contextMock.createContextAsUser(any(), any())).thenReturn(contextMock)
+        whenever(displayControllerMock.getDisplayLayout(any())).thenReturn(displayLayout)
+        whenever(displayLayout.getStableBounds(any())).thenAnswer { i ->
+            (i.arguments.first() as Rect).set(STABLE_BOUNDS)
+        }
+        whenever(contextMock.createContextAsUser(any(), any())).thenReturn(context)
+        whenever(contextMock.resources).thenReturn(resourcesMock)
+        whenever(resourcesMock.getDimensionPixelSize(any())).thenReturn(10)
     }
 
     @Test
@@ -202,7 +213,21 @@
         verify(desktopTilingDecoration, times(1)).resetTilingSession()
     }
 
+    @Test
+    fun getTiledAppBounds_NoTilingTransitionHandlerObject() {
+        // Right bound of the left app here represents default 8 / 2 - 2 ( {Right bound} / 2 -
+        // {divider pixel size})
+        assertThat(desktopTilingDecorViewModel.getLeftSnapBoundsIfTiled(1))
+            .isEqualTo(Rect(6, 7, 2, 9))
+
+        // Left bound of the right app here represents default 8 / 2 + 6 + 2 ( {Left bound} +
+        // {width}/ 2 + {divider pixel size})
+        assertThat(desktopTilingDecorViewModel.getRightSnapBoundsIfTiled(1))
+            .isEqualTo(Rect(12, 7, 8, 9))
+    }
+
     companion object {
         private val BOUNDS = Rect(1, 2, 3, 4)
+        private val STABLE_BOUNDS = Rect(6, 7, 8, 9)
     }
 }
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDividerWindowManagerTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDividerWindowManagerTest.kt
index 121e0e9..8442056 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDividerWindowManagerTest.kt
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDividerWindowManagerTest.kt
@@ -81,6 +81,7 @@
                 transactionSupplierMock,
                 BOUNDS,
                 context,
+                /* isDarkMode= */ true
             )
     }
 
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/TilingDividerViewTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/TilingDividerViewTest.kt
index 9a9d05a..9a3d5d8 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/TilingDividerViewTest.kt
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/TilingDividerViewTest.kt
@@ -60,7 +60,7 @@
         tilingDividerView =
             LayoutInflater.from(mContext).inflate(R.layout.tiling_split_divider, /* root= */ null)
                 as TilingDividerView
-        tilingDividerView.setup(dividerMoveCallbackMock, DIVIDER_BOUNDS, HANDLE_SIZE)
+        tilingDividerView.setup(dividerMoveCallbackMock, DIVIDER_BOUNDS, HANDLE_SIZE, true)
         tilingDividerView.handleY = 0..1500
     }
 
diff --git a/libs/hwui/Android.bp b/libs/hwui/Android.bp
index 38ac8ab..a892e88 100644
--- a/libs/hwui/Android.bp
+++ b/libs/hwui/Android.bp
@@ -141,6 +141,7 @@
                 "libsync",
                 "libui",
                 "aconfig_text_flags_c_lib",
+                "aconfig_view_accessibility_flags_c_lib",
                 "server_configurable_flags",
                 "libaconfig_storage_read_api_cc",
                 "libgraphicsenv",
diff --git a/libs/hwui/FeatureFlags.h b/libs/hwui/FeatureFlags.h
index 5f84f47..5ceb97c 100644
--- a/libs/hwui/FeatureFlags.h
+++ b/libs/hwui/FeatureFlags.h
@@ -18,6 +18,7 @@
 #define ANDROID_HWUI_FEATURE_FLAGS_H
 
 #ifdef __ANDROID__
+#include <android_view_accessibility.h>
 #include <com_android_text_flags.h>
 #endif  // __ANDROID__
 
@@ -44,6 +45,19 @@
 
 }  // namespace text_feature
 
+namespace view_accessibility_flags {
+
+inline bool force_invert_color() {
+#ifdef __ANDROID__
+    static bool flag = android::view::accessibility::force_invert_color();
+    return flag;
+#else
+    return true;
+#endif  // __ANDROID__
+}
+
+}  // namespace view_accessibility_flags
+
 }  // namespace android
 
 #endif  // ANDROID_HWUI_FEATURE_FLAGS_H
diff --git a/libs/hwui/OWNERS b/libs/hwui/OWNERS
index 70d13ab..9c06fd5 100644
--- a/libs/hwui/OWNERS
+++ b/libs/hwui/OWNERS
@@ -3,7 +3,7 @@
 alecmouri@google.com
 djsollen@google.com
 jreck@google.com
-njawad@google.com
+nscobie@google.com
 sumir@google.com
 
 # For text, e.g. Typeface, Font, Minikin, etc.
diff --git a/libs/hwui/renderthread/CanvasContext.h b/libs/hwui/renderthread/CanvasContext.h
index f119102..3de8e05 100644
--- a/libs/hwui/renderthread/CanvasContext.h
+++ b/libs/hwui/renderthread/CanvasContext.h
@@ -312,7 +312,7 @@
     };
 
     // Need at least 4 because we do quad buffer. Add a few more for good measure.
-    RingBuffer<SwapHistory, 7> mSwapHistory;
+    RingBuffer<SwapHistory, 8> mSwapHistory;
     // Frame numbers start at 1, 0 means uninitialized
     uint64_t mFrameNumber = 0;
     int64_t mDamageId = 0;
diff --git a/location/java/android/location/GnssAntennaInfo.java b/location/java/android/location/GnssAntennaInfo.java
index 3558dd5..39ce8a3 100644
--- a/location/java/android/location/GnssAntennaInfo.java
+++ b/location/java/android/location/GnssAntennaInfo.java
@@ -33,6 +33,8 @@
  *
  * <p> Antenna info parameters are measured for each specific device model by the device
  * manufacturers and provided to the Android framework.
+ *
+ * <p> {@link GnssAntennaInfo} is returned per frequency band at the center frequency of the band.
  */
 public final class GnssAntennaInfo implements Parcelable {
     private final double mCarrierFrequencyMHz;
@@ -479,6 +481,7 @@
         }
     }
 
+    /** Returns the center frequency of the corresponding carrier frequency band. */
     @FloatRange(from = 0.0f)
     public double getCarrierFrequencyMHz() {
         return mCarrierFrequencyMHz;
diff --git a/location/java/android/location/GnssMeasurement.java b/location/java/android/location/GnssMeasurement.java
index 200d4ef..6ae73a2 100644
--- a/location/java/android/location/GnssMeasurement.java
+++ b/location/java/android/location/GnssMeasurement.java
@@ -1484,6 +1484,10 @@
      * in an open sky test - the important aspect of this output is that changes in this value are
      * indicative of changes on input signal power in the frequency band for this measurement.
      *
+     * <p> This field is part of the GnssMeasurement object so it is only reported when the GNSS
+     * measurement is reported. E.g., when a GNSS signal is too weak to be acquired, the AGC value
+     * is not reported.
+     *
      * <p> The value is only available if {@link #hasAutomaticGainControlLevelDb()} is {@code true}
      *
      * @deprecated Use {@link GnssMeasurementsEvent#getGnssAutomaticGainControls()} instead.
diff --git a/location/java/android/location/GnssMeasurementsEvent.java b/location/java/android/location/GnssMeasurementsEvent.java
index 4fc2ee8..8cdfd01 100644
--- a/location/java/android/location/GnssMeasurementsEvent.java
+++ b/location/java/android/location/GnssMeasurementsEvent.java
@@ -158,6 +158,14 @@
     /**
      * Gets the collection of {@link GnssAutomaticGainControl} associated with the
      * current event.
+     *
+     * <p>This field must be reported when the GNSS measurement engine is running, even when the
+     * GnssMeasurement or GnssClock fields are not reported yet. E.g., when a GNSS signal is too
+     * weak to be acquired, the AGC value must still be reported.
+     *
+     * <p>For devices that do not support this field, an empty collection is returned. In that case,
+     * please use {@link GnssMeasurement#hasAutomaticGainControlLevelDb()}
+     * and {@link GnssMeasuremen#getAutomaticGainControlLevelDb()}.
      */
     @NonNull
     public Collection<GnssAutomaticGainControl> getGnssAutomaticGainControls() {
diff --git a/location/java/com/android/internal/location/GpsNetInitiatedHandler.java b/location/java/com/android/internal/location/GpsNetInitiatedHandler.java
index 8b6194f..fb89973 100644
--- a/location/java/com/android/internal/location/GpsNetInitiatedHandler.java
+++ b/location/java/com/android/internal/location/GpsNetInitiatedHandler.java
@@ -28,7 +28,6 @@
 import android.util.Log;
 
 import com.android.internal.annotations.KeepForWeakReference;
-import com.android.internal.telephony.flags.Flags;
 
 import java.util.concurrent.TimeUnit;
 
@@ -146,17 +145,12 @@
                         < emergencyExtensionMillis);
         boolean isInEmergencyCallback = false;
         boolean isInEmergencySmsMode = false;
-        if (!Flags.enforceTelephonyFeatureMappingForPublicApis()) {
+        PackageManager pm = mContext.getPackageManager();
+        if (pm != null && pm.hasSystemFeature(PackageManager.FEATURE_TELEPHONY_CALLING)) {
             isInEmergencyCallback = mTelephonyManager.getEmergencyCallbackMode();
+        }
+        if (pm != null && pm.hasSystemFeature(PackageManager.FEATURE_TELEPHONY_MESSAGING)) {
             isInEmergencySmsMode = mTelephonyManager.isInEmergencySmsMode();
-        } else {
-            PackageManager pm = mContext.getPackageManager();
-            if (pm != null && pm.hasSystemFeature(PackageManager.FEATURE_TELEPHONY_CALLING)) {
-                isInEmergencyCallback = mTelephonyManager.getEmergencyCallbackMode();
-            }
-            if (pm != null && pm.hasSystemFeature(PackageManager.FEATURE_TELEPHONY_MESSAGING)) {
-                isInEmergencySmsMode = mTelephonyManager.isInEmergencySmsMode();
-            }
         }
         return mIsInEmergencyCall || isInEmergencyCallback || isInEmergencyExtension
                 || isInEmergencySmsMode;
diff --git a/media/OWNERS b/media/OWNERS
index 5e39195..50995ea 100644
--- a/media/OWNERS
+++ b/media/OWNERS
@@ -18,5 +18,4 @@
 include platform/frameworks/av:/media/janitors/media_solutions_OWNERS
 
 # SEA/KIR/BVE
-jtinker@google.com
 robertshih@google.com
diff --git a/media/java/android/media/AudioSystem.java b/media/java/android/media/AudioSystem.java
index e01cb92..ad6f2e52 100644
--- a/media/java/android/media/AudioSystem.java
+++ b/media/java/android/media/AudioSystem.java
@@ -1134,6 +1134,9 @@
     public static final Set<Integer> DEVICE_ALL_HDMI_SYSTEM_AUDIO_AND_SPEAKER_SET;
     /** @hide */
     public static final Set<Integer> DEVICE_OUT_ALL_BLE_SET;
+    /** @hide */
+    public static final Set<Integer> DEVICE_OUT_PICK_FOR_VOLUME_SET;
+
     static {
         DEVICE_OUT_ALL_SET = new HashSet<>();
         DEVICE_OUT_ALL_SET.add(DEVICE_OUT_EARPIECE);
@@ -1201,6 +1204,22 @@
         DEVICE_OUT_ALL_BLE_SET.add(DEVICE_OUT_BLE_HEADSET);
         DEVICE_OUT_ALL_BLE_SET.add(DEVICE_OUT_BLE_SPEAKER);
         DEVICE_OUT_ALL_BLE_SET.add(DEVICE_OUT_BLE_BROADCAST);
+
+        DEVICE_OUT_PICK_FOR_VOLUME_SET = new HashSet<>();
+        DEVICE_OUT_PICK_FOR_VOLUME_SET.add(DEVICE_OUT_WIRED_HEADSET);
+        DEVICE_OUT_PICK_FOR_VOLUME_SET.add(DEVICE_OUT_WIRED_HEADPHONE);
+        DEVICE_OUT_PICK_FOR_VOLUME_SET.add(DEVICE_OUT_USB_DEVICE);
+        DEVICE_OUT_PICK_FOR_VOLUME_SET.add(DEVICE_OUT_USB_HEADSET);
+        DEVICE_OUT_PICK_FOR_VOLUME_SET.add(DEVICE_OUT_BLUETOOTH_A2DP);
+        DEVICE_OUT_PICK_FOR_VOLUME_SET.add(DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES);
+        DEVICE_OUT_PICK_FOR_VOLUME_SET.add(DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER);
+        DEVICE_OUT_PICK_FOR_VOLUME_SET.add(DEVICE_OUT_BLUETOOTH_SCO);
+        DEVICE_OUT_PICK_FOR_VOLUME_SET.add(DEVICE_OUT_BLUETOOTH_SCO_HEADSET);
+        DEVICE_OUT_PICK_FOR_VOLUME_SET.add(DEVICE_OUT_BLUETOOTH_SCO_CARKIT);
+        DEVICE_OUT_PICK_FOR_VOLUME_SET.add(DEVICE_OUT_HEARING_AID);
+        DEVICE_OUT_PICK_FOR_VOLUME_SET.add(DEVICE_OUT_BLE_HEADSET);
+        DEVICE_OUT_PICK_FOR_VOLUME_SET.add(DEVICE_OUT_BLE_SPEAKER);
+        DEVICE_OUT_PICK_FOR_VOLUME_SET.add(DEVICE_OUT_BLE_BROADCAST);
     }
 
     // input devices
diff --git a/media/java/android/media/MediaExtractor.java b/media/java/android/media/MediaExtractor.java
index b11a810..4e1d472 100644
--- a/media/java/android/media/MediaExtractor.java
+++ b/media/java/android/media/MediaExtractor.java
@@ -375,6 +375,9 @@
     /**
      * Extract DRM initialization data if it exists
      *
+     * <p>If the media contains a PSSH box, only PSSH version 0 is supported. The result for media
+     * with other PSSH versions is undefined.
+     *
      * @return DRM initialization data in the content, or {@code null}
      * if no recognizable DRM format is found;
      * @see DrmInitData
@@ -460,6 +463,10 @@
 
     /**
      * Get the PSSH info if present.
+     *
+     * <p>This method only supports version 0 PSSH boxes. The result for other versions is
+     * undefined.
+     *
      * @return a map of uuid-to-bytes, with the uuid specifying
      * the crypto scheme, and the bytes being the data specific to that scheme.
      * This can be {@code null} if the source does not contain PSSH info.
diff --git a/media/java/android/media/flags/projection.aconfig b/media/java/android/media/flags/projection.aconfig
index 6d4f0b4..846448b 100644
--- a/media/java/android/media/flags/projection.aconfig
+++ b/media/java/android/media/flags/projection.aconfig
@@ -39,3 +39,12 @@
     }
     is_exported: true
 }
+
+flag {
+    namespace: "media_projection"
+    name: "app_content_sharing"
+    description: "Enable apps to share some sub-surface"
+    bug: "379989921"
+    is_exported: true
+}
+
diff --git a/media/java/android/media/musicrecognition/OWNERS b/media/java/android/media/musicrecognition/OWNERS
index 037b048..820be00 100644
--- a/media/java/android/media/musicrecognition/OWNERS
+++ b/media/java/android/media/musicrecognition/OWNERS
@@ -1,5 +1,4 @@
 # Bug component: 830636
 
 oni@google.com
-volnov@google.com
 
diff --git a/media/java/android/media/projection/MediaProjectionConfig.java b/media/java/android/media/projection/MediaProjectionConfig.java
index 30f34fe..598b534 100644
--- a/media/java/android/media/projection/MediaProjectionConfig.java
+++ b/media/java/android/media/projection/MediaProjectionConfig.java
@@ -27,7 +27,6 @@
 import android.os.Parcelable;
 
 import com.android.internal.util.AnnotationValidations;
-import com.android.internal.util.DataClass;
 
 import java.lang.annotation.Retention;
 
@@ -35,36 +34,25 @@
  * Configure the {@link MediaProjection} session requested from
  * {@link MediaProjectionManager#createScreenCaptureIntent(MediaProjectionConfig)}.
  */
-@DataClass(
-        genEqualsHashCode = true,
-        genAidl = true,
-        genSetters = false,
-        genConstructor = false,
-        genBuilder = false,
-        genToString = false,
-        genHiddenConstDefs = true,
-        genHiddenGetters = true,
-        genConstDefs = false
-)
 public final class MediaProjectionConfig implements Parcelable {
 
     /**
      * The user, rather than the host app, determines which region of the display to capture.
+     *
      * @hide
      */
     public static final int CAPTURE_REGION_USER_CHOICE = 0;
 
     /**
      * The host app specifies a particular display to capture.
+     *
      * @hide
      */
     public static final int CAPTURE_REGION_FIXED_DISPLAY = 1;
 
     /** @hide */
-    @IntDef(prefix = "CAPTURE_REGION_", value = {
-            CAPTURE_REGION_USER_CHOICE,
-            CAPTURE_REGION_FIXED_DISPLAY
-    })
+    @IntDef(prefix = "CAPTURE_REGION_", value = {CAPTURE_REGION_USER_CHOICE,
+            CAPTURE_REGION_FIXED_DISPLAY})
     @Retention(SOURCE)
     public @interface CaptureRegion {
     }
@@ -72,7 +60,7 @@
     /**
      * The particular display to capture. Only used when {@link #getRegionToCapture()} is
      * {@link #CAPTURE_REGION_FIXED_DISPLAY}; ignored otherwise.
-     *
+     * <p>
      * Only supports values of {@link android.view.Display#DEFAULT_DISPLAY}.
      */
     @IntRange(from = DEFAULT_DISPLAY, to = DEFAULT_DISPLAY)
@@ -82,13 +70,7 @@
      * The region to capture. Defaults to the user's choice.
      */
     @CaptureRegion
-    private int mRegionToCapture = CAPTURE_REGION_USER_CHOICE;
-
-    /**
-     * Default instance, with region set to the user's choice.
-     */
-    private MediaProjectionConfig() {
-    }
+    private int mRegionToCapture;
 
     /**
      * Customized instance, with region set to the provided value.
@@ -129,51 +111,29 @@
      */
     @NonNull
     private static String captureRegionToString(int value) {
-        switch (value) {
-            case CAPTURE_REGION_USER_CHOICE:
-                return "CAPTURE_REGION_USERS_CHOICE";
-            case CAPTURE_REGION_FIXED_DISPLAY:
-                return "CAPTURE_REGION_GIVEN_DISPLAY";
-            default:
-                return Integer.toHexString(value);
-        }
+        return switch (value) {
+            case CAPTURE_REGION_USER_CHOICE -> "CAPTURE_REGION_USERS_CHOICE";
+            case CAPTURE_REGION_FIXED_DISPLAY -> "CAPTURE_REGION_GIVEN_DISPLAY";
+            default -> Integer.toHexString(value);
+        };
     }
 
     @Override
     public String toString() {
-        return "MediaProjectionConfig { "
-                + "displayToCapture = " + mDisplayToCapture + ", "
-                + "regionToCapture = " + captureRegionToString(mRegionToCapture)
-                + " }";
+        return "MediaProjectionConfig { " + "displayToCapture = " + mDisplayToCapture + ", "
+                + "regionToCapture = " + captureRegionToString(mRegionToCapture) + " }";
     }
 
 
-
-
-
-    // Code below generated by codegen v1.0.23.
-    //
-    // DO NOT MODIFY!
-    // CHECKSTYLE:OFF Generated code
-    //
-    // To regenerate run:
-    // $ codegen $ANDROID_BUILD_TOP/frameworks/base/media/java/android/media/projection/MediaProjectionConfig.java
-    //
-    // To exclude the generated code from IntelliJ auto-formatting enable (one-time):
-    //   Settings > Editor > Code Style > Formatter Control
-    //@formatter:off
-
-
     /**
      * The particular display to capture. Only used when {@link #getRegionToCapture()} is
      * {@link #CAPTURE_REGION_FIXED_DISPLAY}; ignored otherwise.
-     *
+     * <p>
      * Only supports values of {@link android.view.Display#DEFAULT_DISPLAY}.
      *
      * @hide
      */
-    @DataClass.Generated.Member
-    public @IntRange(from = DEFAULT_DISPLAY, to = DEFAULT_DISPLAY) int getDisplayToCapture() {
+    public int getDisplayToCapture() {
         return mDisplayToCapture;
     }
 
@@ -182,34 +142,21 @@
      *
      * @hide
      */
-    @DataClass.Generated.Member
     public @CaptureRegion int getRegionToCapture() {
         return mRegionToCapture;
     }
 
     @Override
-    @DataClass.Generated.Member
     public boolean equals(@Nullable Object o) {
-        // You can override field equality logic by defining either of the methods like:
-        // boolean fieldNameEquals(MediaProjectionConfig other) { ... }
-        // boolean fieldNameEquals(FieldType otherValue) { ... }
-
         if (this == o) return true;
         if (o == null || getClass() != o.getClass()) return false;
-        @SuppressWarnings("unchecked")
         MediaProjectionConfig that = (MediaProjectionConfig) o;
-        //noinspection PointlessBooleanExpression
-        return true
-                && mDisplayToCapture == that.mDisplayToCapture
+        return mDisplayToCapture == that.mDisplayToCapture
                 && mRegionToCapture == that.mRegionToCapture;
     }
 
     @Override
-    @DataClass.Generated.Member
     public int hashCode() {
-        // You can override field hashCode logic by defining methods like:
-        // int fieldNameHashCode() { ... }
-
         int _hash = 1;
         _hash = 31 * _hash + mDisplayToCapture;
         _hash = 31 * _hash + mRegionToCapture;
@@ -217,65 +164,36 @@
     }
 
     @Override
-    @DataClass.Generated.Member
     public void writeToParcel(@NonNull android.os.Parcel dest, int flags) {
-        // You can override field parcelling by defining methods like:
-        // void parcelFieldName(Parcel dest, int flags) { ... }
-
         dest.writeInt(mDisplayToCapture);
         dest.writeInt(mRegionToCapture);
     }
 
     @Override
-    @DataClass.Generated.Member
-    public int describeContents() { return 0; }
+    public int describeContents() {
+        return 0;
+    }
 
     /** @hide */
-    @SuppressWarnings({"unchecked", "RedundantCast"})
-    @DataClass.Generated.Member
     /* package-private */ MediaProjectionConfig(@NonNull android.os.Parcel in) {
-        // You can override field unparcelling by defining methods like:
-        // static FieldType unparcelFieldName(Parcel in) { ... }
-
         int displayToCapture = in.readInt();
         int regionToCapture = in.readInt();
 
-        this.mDisplayToCapture = displayToCapture;
-        AnnotationValidations.validate(
-                IntRange.class, null, mDisplayToCapture,
-                "from", DEFAULT_DISPLAY,
-                "to", DEFAULT_DISPLAY);
-        this.mRegionToCapture = regionToCapture;
-        AnnotationValidations.validate(
-                CaptureRegion.class, null, mRegionToCapture);
-
-        // onConstructed(); // You can define this method to get a callback
+        mDisplayToCapture = displayToCapture;
+        mRegionToCapture = regionToCapture;
+        AnnotationValidations.validate(CaptureRegion.class, null, mRegionToCapture);
     }
 
-    @DataClass.Generated.Member
-    public static final @NonNull Parcelable.Creator<MediaProjectionConfig> CREATOR
-            = new Parcelable.Creator<MediaProjectionConfig>() {
-        @Override
-        public MediaProjectionConfig[] newArray(int size) {
-            return new MediaProjectionConfig[size];
-        }
+    public static final @NonNull Parcelable.Creator<MediaProjectionConfig> CREATOR =
+            new Parcelable.Creator<>() {
+                @Override
+                public MediaProjectionConfig[] newArray(int size) {
+                    return new MediaProjectionConfig[size];
+                }
 
-        @Override
-        public MediaProjectionConfig createFromParcel(@NonNull android.os.Parcel in) {
-            return new MediaProjectionConfig(in);
-        }
-    };
-
-    @DataClass.Generated(
-            time = 1673548980960L,
-            codegenVersion = "1.0.23",
-            sourceFile = "frameworks/base/media/java/android/media/projection/MediaProjectionConfig.java",
-            inputSignatures = "public static final  int CAPTURE_REGION_USER_CHOICE\npublic static final  int CAPTURE_REGION_FIXED_DISPLAY\nprivate @android.annotation.IntRange int mDisplayToCapture\nprivate @android.media.projection.MediaProjectionConfig.CaptureRegion int mRegionToCapture\npublic static @android.annotation.NonNull android.media.projection.MediaProjectionConfig createConfigForDefaultDisplay()\npublic static @android.annotation.NonNull android.media.projection.MediaProjectionConfig createConfigForUserChoice()\nprivate static @android.annotation.NonNull java.lang.String captureRegionToString(int)\npublic @java.lang.Override java.lang.String toString()\nclass MediaProjectionConfig extends java.lang.Object implements [android.os.Parcelable]\n@com.android.internal.util.DataClass(genEqualsHashCode=true, genAidl=true, genSetters=false, genConstructor=false, genBuilder=false, genToString=false, genHiddenConstDefs=true, genHiddenGetters=true, genConstDefs=false)")
-    @Deprecated
-    private void __metadata() {}
-
-
-    //@formatter:on
-    // End of generated code
-
+                @Override
+                public MediaProjectionConfig createFromParcel(@NonNull android.os.Parcel in) {
+                    return new MediaProjectionConfig(in);
+                }
+            };
 }
diff --git a/media/java/android/media/tv/flags/media_tv.aconfig b/media/java/android/media/tv/flags/media_tv.aconfig
index 28da556..7670514 100644
--- a/media/java/android/media/tv/flags/media_tv.aconfig
+++ b/media/java/android/media/tv/flags/media_tv.aconfig
@@ -129,4 +129,14 @@
   metadata {
     purpose: PURPOSE_BUGFIX
   }
+}
+
+flag {
+  name: "media_quality_fw_bugfix"
+  namespace: "tv_os"
+  description: "Bug fix flag for Media Quality framework"
+  bug: "398304867"
+  metadata {
+    purpose: PURPOSE_BUGFIX
+  }
 }
\ No newline at end of file
diff --git a/media/jni/OWNERS b/media/jni/OWNERS
index fdddf13..84618a3 100644
--- a/media/jni/OWNERS
+++ b/media/jni/OWNERS
@@ -1,5 +1,5 @@
 # extra for MTP related files
-per-file android_mtp_*.cpp=aprasath@google.com,anothermark@google.com,kumarashishg@google.com,sarup@google.com,jsharkey@android.com,jameswei@google.com,rmojumder@google.com
+per-file android_mtp_*.cpp=aprasath@google.com,anothermark@google.com,sarup@google.com,jsharkey@android.com,jameswei@google.com,rmojumder@google.com
 
 # extra for TV related files
 per-file android_media_tv_*=hgchen@google.com,quxiangfang@google.com
diff --git a/media/jni/android_media_MediaCodec.cpp b/media/jni/android_media_MediaCodec.cpp
index 61c287b..ae54c18 100644
--- a/media/jni/android_media_MediaCodec.cpp
+++ b/media/jni/android_media_MediaCodec.cpp
@@ -2990,11 +2990,16 @@
         }
         *memory = context->toHidlMemory();
     }
-    if (context->mBlock == nullptr || context->mReadWriteMapping == nullptr) {
-        ALOGW("extractMemoryFromContext: Cannot extract memory as C2Block is not created/mapped");
+    if (context->mBlock == nullptr) {
+        // this should be ok as we may only have IMemory/hidlMemory
+        // e.g. video codecs may only have IMemory and no mBlock
         return;
     }
-    if (context->mReadWriteMapping->error() != C2_OK) {
+
+    // if we have mBlock and memory, then we will copy data from mBlock to hidlMemory
+    // e.g. audio codecs may only have mBlock and wanted to decrypt using hidlMemory
+    // and also wanted to re-use mBlock
+    if (context->mReadWriteMapping == nullptr || context->mReadWriteMapping->error() != C2_OK) {
         ALOGW("extractMemoryFromContext: failed to map C2Block (%d)",
                 context->mReadWriteMapping->error());
         return;
diff --git a/native/android/OWNERS b/native/android/OWNERS
index 3ea2d35..1e8d30d 100644
--- a/native/android/OWNERS
+++ b/native/android/OWNERS
@@ -6,8 +6,7 @@
 
 # Networking
 per-file libandroid_net.map.txt, net.c = set noparent
-per-file libandroid_net.map.txt, net.c = codewiz@google.com, jchalard@google.com, junyulai@google.com
-per-file libandroid_net.map.txt, net.c = lorenzo@google.com, reminv@google.com, satk@google.com
+per-file libandroid_net.map.txt, net.c = file:platform/packages/modules/Connectivity:main:/OWNERS_core_networking
 
 # Fonts
 per-file system_fonts.cpp = file:/graphics/java/android/graphics/fonts/OWNERS
diff --git a/opengl/java/android/opengl/OWNERS b/opengl/java/android/opengl/OWNERS
index e340bc6..4ec9e29 100644
--- a/opengl/java/android/opengl/OWNERS
+++ b/opengl/java/android/opengl/OWNERS
@@ -3,4 +3,3 @@
 sumir@google.com
 prahladk@google.com
 ianelliott@google.com
-lpy@google.com
diff --git a/packages/CompanionDeviceManager/res/drawable/btn_positive_bottom.xml b/packages/CompanionDeviceManager/res/drawable/btn_positive_button.xml
similarity index 82%
rename from packages/CompanionDeviceManager/res/drawable/btn_positive_bottom.xml
rename to packages/CompanionDeviceManager/res/drawable/btn_positive_button.xml
index 2cff473..30cf60a 100644
--- a/packages/CompanionDeviceManager/res/drawable/btn_positive_bottom.xml
+++ b/packages/CompanionDeviceManager/res/drawable/btn_positive_button.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-  ~ Copyright (C) 2022 The Android Open Source Project
+  ~ Copyright (C) 2025 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -16,8 +16,8 @@
   -->
 
 <shape xmlns:android="http://schemas.android.com/apk/res/android"
-       android:shape="rectangle">
+    android:shape="rectangle">
     <solid android:color="@android:color/system_accent1_100"/>
     <corners android:topLeftRadius="12dp" android:topRightRadius="12dp"
-             android:bottomLeftRadius="4dp" android:bottomRightRadius="4dp"/>
-</shape>
+        android:bottomLeftRadius="4dp" android:bottomRightRadius="4dp"/>
+</shape>
\ No newline at end of file
diff --git a/packages/CompanionDeviceManager/res/drawable/btn_positive_button_with_arrow.xml b/packages/CompanionDeviceManager/res/drawable/btn_positive_button_with_arrow.xml
new file mode 100644
index 0000000..1fe4af7
--- /dev/null
+++ b/packages/CompanionDeviceManager/res/drawable/btn_positive_button_with_arrow.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2025 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.
+  -->
+
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
+    <item>
+        <shape android:shape="rectangle">
+            <solid android:color="@android:color/system_accent1_100" />
+            <corners
+                android:bottomLeftRadius="4dp"
+                android:bottomRightRadius="4dp"
+                android:topLeftRadius="12dp"
+                android:topRightRadius="12dp" />
+        </shape>
+    </item>
+    <item
+        android:drawable="@drawable/ic_downward_arrow"
+        android:gravity="center" />
+</layer-list>
\ No newline at end of file
diff --git a/packages/CompanionDeviceManager/res/drawable/ic_downward_arrow.xml b/packages/CompanionDeviceManager/res/drawable/ic_downward_arrow.xml
new file mode 100644
index 0000000..98fd71b
--- /dev/null
+++ b/packages/CompanionDeviceManager/res/drawable/ic_downward_arrow.xml
@@ -0,0 +1,25 @@
+<!--
+  ~ Copyright (C) 2025 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="960"
+    android:viewportHeight="960"
+    android:tint="?attr/colorControlNormal">
+    <path android:fillColor="@android:color/system_accent1_600"
+        android:pathData="M480,720L240,480L296,424L440,568L440,200L520,200L520,568L664,424L720,480L480,720Z"/>
+</vector>
\ No newline at end of file
diff --git a/packages/CompanionDeviceManager/res/values-af/strings.xml b/packages/CompanionDeviceManager/res/values-af/strings.xml
index 9476dc5..b802d0f 100644
--- a/packages/CompanionDeviceManager/res/values-af/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-af/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Moenie toelaat nie"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Kanselleer"</string>
     <string name="consent_back" msgid="2560683030046918882">"Terug"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Vou <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> uit"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Vou <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> in"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Gee programme op &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; dieselfde toestemmings as op &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-am/strings.xml b/packages/CompanionDeviceManager/res/values-am/strings.xml
index e53efce..d4d0b07 100644
--- a/packages/CompanionDeviceManager/res/values-am/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-am/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"አትፍቀድ"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"ይቅር"</string>
     <string name="consent_back" msgid="2560683030046918882">"ተመለስ"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>ን ዘርጋ"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>ን ሰብስብ"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"በ&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; ላይ ላሉ መተግበሪያዎች በ&lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; ላይ ካሉት ጋር ተመሳሳይ ፈቃዶች ይሰጣቸው?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ar/strings.xml b/packages/CompanionDeviceManager/res/values-ar/strings.xml
index 5b6ea65..f4e1721 100644
--- a/packages/CompanionDeviceManager/res/values-ar/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ar/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"عدم السماح"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"إلغاء"</string>
     <string name="consent_back" msgid="2560683030046918882">"رجوع"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"توسيع <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"تصغير <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"‏هل تريد منح التطبيقات على &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; نفس الأذونات على &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;؟"</string>
diff --git a/packages/CompanionDeviceManager/res/values-as/strings.xml b/packages/CompanionDeviceManager/res/values-as/strings.xml
index 9001a2c..322d422 100644
--- a/packages/CompanionDeviceManager/res/values-as/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-as/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"অনুমতি নিদিব"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"বাতিল কৰক"</string>
     <string name="consent_back" msgid="2560683030046918882">"উভতি যাওক"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> বিস্তাৰ কৰক"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> সংকোচন কৰক"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"এপ্‌সমূহক &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;ত দিয়াৰ দৰে &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt;তো একে অনুমতি প্ৰদান কৰিবনে?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-az/strings.xml b/packages/CompanionDeviceManager/res/values-az/strings.xml
index 2ffe84e..9f3ab2bd 100644
--- a/packages/CompanionDeviceManager/res/values-az/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-az/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"İcazə verməyin"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Ləğv edin"</string>
     <string name="consent_back" msgid="2560683030046918882">"Geriyə"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Genişləndirin: <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Yığcamlaşdırın: <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; cihazındakı tətbiqlərə &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; cihazındakılarla eyni icazələr verilsin?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-b+sr+Latn/strings.xml b/packages/CompanionDeviceManager/res/values-b+sr+Latn/strings.xml
index dfe3cbe..d28b9b2 100644
--- a/packages/CompanionDeviceManager/res/values-b+sr+Latn/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-b+sr+Latn/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Ne dozvoli"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Otkaži"</string>
     <string name="consent_back" msgid="2560683030046918882">"Nazad"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Proširi <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Skupi <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Aplikcijama na uređaju &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; dajete sve dozvole kao na uređaju &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-be/strings.xml b/packages/CompanionDeviceManager/res/values-be/strings.xml
index 6e5e1b5..14878c1 100644
--- a/packages/CompanionDeviceManager/res/values-be/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-be/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Не дазваляць"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Скасаваць"</string>
     <string name="consent_back" msgid="2560683030046918882">"Назад"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Разгарнуць <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Згарнуць <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Даць праграмам на прыладзе &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; такія самыя дазволы, што і на прыладзе &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-bg/strings.xml b/packages/CompanionDeviceManager/res/values-bg/strings.xml
index 9c3b94e..6e5b323 100644
--- a/packages/CompanionDeviceManager/res/values-bg/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-bg/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Забраняване"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Отказ"</string>
     <string name="consent_back" msgid="2560683030046918882">"Назад"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Разгъване на <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Свиване на <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Искате ли да дадете на приложенията на &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; същите разрешения както на &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-bn/strings.xml b/packages/CompanionDeviceManager/res/values-bn/strings.xml
index 88db2a5..214dc71 100644
--- a/packages/CompanionDeviceManager/res/values-bn/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-bn/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"অনুমতি দেবেন না"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"বাতিল করুন"</string>
     <string name="consent_back" msgid="2560683030046918882">"ফিরুন"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> বড় করুন"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> আড়াল করুন"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;-এ যে অনুমতি দেওয়া আছে &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt;-এও সেই একই অনুমতি দিতে চান?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-bs/strings.xml b/packages/CompanionDeviceManager/res/values-bs/strings.xml
index bc74b1a..b23f600 100644
--- a/packages/CompanionDeviceManager/res/values-bs/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-bs/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Nemoj dozvoliti"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Otkaži"</string>
     <string name="consent_back" msgid="2560683030046918882">"Nazad"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Proširivanje stavke <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Sužavanje stavke <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Dati aplikacijama na uređaju &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; ista odobrenja kao na uređaju &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ca/strings.xml b/packages/CompanionDeviceManager/res/values-ca/strings.xml
index 8c0b117..21f3871 100644
--- a/packages/CompanionDeviceManager/res/values-ca/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ca/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"No permetis"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Cancel·la"</string>
     <string name="consent_back" msgid="2560683030046918882">"Enrere"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Desplega <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Replega <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Vols concedir a les aplicacions del dispositiu &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; els mateixos permisos que tenen a &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-cs/strings.xml b/packages/CompanionDeviceManager/res/values-cs/strings.xml
index cde31af..cd89130 100644
--- a/packages/CompanionDeviceManager/res/values-cs/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-cs/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Nepovolovat"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Zrušit"</string>
     <string name="consent_back" msgid="2560683030046918882">"Zpět"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Rozbalit sekci <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Sbalit sekci <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Udělit aplikacím v zařízení &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; stejné oprávnění, jako mají v zařízení &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-da/strings.xml b/packages/CompanionDeviceManager/res/values-da/strings.xml
index 1062af8..6dc34e7 100644
--- a/packages/CompanionDeviceManager/res/values-da/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-da/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Tillad ikke"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Annuller"</string>
     <string name="consent_back" msgid="2560683030046918882">"Tilbage"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Udvid <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Skjul <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Vil du give apps på &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; de samme tilladelser som på &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-de/strings.xml b/packages/CompanionDeviceManager/res/values-de/strings.xml
index 6f8a902..4dc2929 100644
--- a/packages/CompanionDeviceManager/res/values-de/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-de/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Nicht zulassen"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Abbrechen"</string>
     <string name="consent_back" msgid="2560683030046918882">"Zurück"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> maximieren"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> minimieren"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Apps auf &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; die gleichen Berechtigungen geben wie auf &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-el/strings.xml b/packages/CompanionDeviceManager/res/values-el/strings.xml
index c90bf21..1dc00dc 100644
--- a/packages/CompanionDeviceManager/res/values-el/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-el/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Να μην επιτρέπεται"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Ακύρωση"</string>
     <string name="consent_back" msgid="2560683030046918882">"Πίσω"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Ανάπτυξη <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Σύμπτυξη <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Παραχώρηση των ίδιων αδειών στις εφαρμογές στη συσκευή &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; όπως στη συσκευή &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;;"</string>
diff --git a/packages/CompanionDeviceManager/res/values-en-rAU/strings.xml b/packages/CompanionDeviceManager/res/values-en-rAU/strings.xml
index 8590e9f..bbd81bf 100644
--- a/packages/CompanionDeviceManager/res/values-en-rAU/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-en-rAU/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Don\'t allow"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Cancel"</string>
     <string name="consent_back" msgid="2560683030046918882">"Back"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Expand <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Collapse <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Give apps on &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; the same permissions as on &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-en-rCA/strings.xml b/packages/CompanionDeviceManager/res/values-en-rCA/strings.xml
index 041966e..8d73380 100644
--- a/packages/CompanionDeviceManager/res/values-en-rCA/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-en-rCA/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Don\'t allow"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Cancel"</string>
     <string name="consent_back" msgid="2560683030046918882">"Back"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Expand <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Collapse <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Give apps on &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; the same permissions as on &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-en-rGB/strings.xml b/packages/CompanionDeviceManager/res/values-en-rGB/strings.xml
index 8590e9f..bbd81bf 100644
--- a/packages/CompanionDeviceManager/res/values-en-rGB/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-en-rGB/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Don\'t allow"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Cancel"</string>
     <string name="consent_back" msgid="2560683030046918882">"Back"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Expand <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Collapse <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Give apps on &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; the same permissions as on &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-en-rIN/strings.xml b/packages/CompanionDeviceManager/res/values-en-rIN/strings.xml
index 8590e9f..bbd81bf 100644
--- a/packages/CompanionDeviceManager/res/values-en-rIN/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-en-rIN/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Don\'t allow"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Cancel"</string>
     <string name="consent_back" msgid="2560683030046918882">"Back"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Expand <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Collapse <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Give apps on &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; the same permissions as on &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-es-rUS/strings.xml b/packages/CompanionDeviceManager/res/values-es-rUS/strings.xml
index 88ae3ed..50f7654 100644
--- a/packages/CompanionDeviceManager/res/values-es-rUS/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-es-rUS/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"No permitir"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Cancelar"</string>
     <string name="consent_back" msgid="2560683030046918882">"Atrás"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Expandir <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Contraer <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"¿Dar a las apps de &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; los mismos permisos que tienen en &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-es/strings.xml b/packages/CompanionDeviceManager/res/values-es/strings.xml
index a309d7c..f8e2c74 100644
--- a/packages/CompanionDeviceManager/res/values-es/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-es/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"No permitir"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Cancelar"</string>
     <string name="consent_back" msgid="2560683030046918882">"Atrás"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Desplegar <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Contraer <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"¿Dar a las aplicaciones de &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; los mismos permisos que &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-et/strings.xml b/packages/CompanionDeviceManager/res/values-et/strings.xml
index 91d1b69..0f390e1 100644
--- a/packages/CompanionDeviceManager/res/values-et/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-et/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Ära luba"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Tühista"</string>
     <string name="consent_back" msgid="2560683030046918882">"Tagasi"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Laienda: <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Ahenda: <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Kas anda rakendustele seadmes &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; samad load, mis seadmes &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-eu/strings.xml b/packages/CompanionDeviceManager/res/values-eu/strings.xml
index c52c2b9..1c7f1f3 100644
--- a/packages/CompanionDeviceManager/res/values-eu/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-eu/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Ez eman baimenik"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Utzi"</string>
     <string name="consent_back" msgid="2560683030046918882">"Atzera"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Zabaldu <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Tolestu <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; gailuan dituzten baimen berberak eman nahi dizkiezu &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; gailuko aplikazioei?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-fa/strings.xml b/packages/CompanionDeviceManager/res/values-fa/strings.xml
index 048bf3e..fb36c46 100644
--- a/packages/CompanionDeviceManager/res/values-fa/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-fa/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"اجازه ندادن"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"لغو"</string>
     <string name="consent_back" msgid="2560683030046918882">"برگشتن"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"ازهم بازکردن <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"جمع کردن <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"‏به برنامه‌های موجود در &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; همان اجازه‌های &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; داده شود؟"</string>
diff --git a/packages/CompanionDeviceManager/res/values-fi/strings.xml b/packages/CompanionDeviceManager/res/values-fi/strings.xml
index 3f4a9d3..ff6cae1 100644
--- a/packages/CompanionDeviceManager/res/values-fi/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-fi/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Älä salli"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Peruuta"</string>
     <string name="consent_back" msgid="2560683030046918882">"Takaisin"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Laajenna <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Tiivistä <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Anna laitteen &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; sovelluksille samat luvat kuin laitteella &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-fr-rCA/strings.xml b/packages/CompanionDeviceManager/res/values-fr-rCA/strings.xml
index 52b136c..4d7de76 100644
--- a/packages/CompanionDeviceManager/res/values-fr-rCA/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-fr-rCA/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Ne pas autoriser"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Annuler"</string>
     <string name="consent_back" msgid="2560683030046918882">"Retour"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Développer <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Réduire <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Accorder aux applis sur &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; les autorisations déjà accordées sur &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-fr/strings.xml b/packages/CompanionDeviceManager/res/values-fr/strings.xml
index e7741c4..d4c12fb 100644
--- a/packages/CompanionDeviceManager/res/values-fr/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-fr/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Ne pas autoriser"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Annuler"</string>
     <string name="consent_back" msgid="2560683030046918882">"Retour"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Développer <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Réduire <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Accorder les mêmes autorisations aux applis sur &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; que sur &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; ?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-gl/strings.xml b/packages/CompanionDeviceManager/res/values-gl/strings.xml
index bf58761..999ab97 100644
--- a/packages/CompanionDeviceManager/res/values-gl/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-gl/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Non permitir"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Cancelar"</string>
     <string name="consent_back" msgid="2560683030046918882">"Atrás"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Despregar <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Contraer <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Queres darlles ás aplicacións de &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; os mesmos permisos que teñen as de &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-gu/strings.xml b/packages/CompanionDeviceManager/res/values-gu/strings.xml
index 9df54da..51d07c9 100644
--- a/packages/CompanionDeviceManager/res/values-gu/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-gu/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"મંજૂરી આપશો નહીં"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"રદ કરો"</string>
     <string name="consent_back" msgid="2560683030046918882">"પાછળ"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>ને મોટું કરો"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>ને નાનું કરો"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; પરની ઍપને &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; પર છે તે જ પરવાનગીઓ આપીએ?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-hi/strings.xml b/packages/CompanionDeviceManager/res/values-hi/strings.xml
index fe04cbd..f7086c6 100644
--- a/packages/CompanionDeviceManager/res/values-hi/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-hi/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"अनुमति न दें"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"रद्द करें"</string>
     <string name="consent_back" msgid="2560683030046918882">"वापस जाएं"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> को बड़ा करें"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> को छोटा करें"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"क्या &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; पर ऐप्लिकेशन को वही अनुमतियां देनी हैं जो &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; पर दी हैं?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-hr/strings.xml b/packages/CompanionDeviceManager/res/values-hr/strings.xml
index c5ed386..04872e5 100644
--- a/packages/CompanionDeviceManager/res/values-hr/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-hr/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Nemoj dopustiti"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Odustani"</string>
     <string name="consent_back" msgid="2560683030046918882">"Natrag"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Proširi <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Sažmi <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Dati jednaka dopuštenja aplikacijama na uređaju &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; kao i na uređaju &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-hu/strings.xml b/packages/CompanionDeviceManager/res/values-hu/strings.xml
index 9fb92c3..5d3b313 100644
--- a/packages/CompanionDeviceManager/res/values-hu/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-hu/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Tiltás"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Mégse"</string>
     <string name="consent_back" msgid="2560683030046918882">"Vissza"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> kibontása"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> összecsukása"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Ugyanolyan engedélyeket ad a(z) &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; eszközön található alkalmazásoknak, mint a(z) &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; eszköz esetén?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-hy/strings.xml b/packages/CompanionDeviceManager/res/values-hy/strings.xml
index b398b94..e7c7139 100644
--- a/packages/CompanionDeviceManager/res/values-hy/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-hy/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Չթույլատրել"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Չեղարկել"</string>
     <string name="consent_back" msgid="2560683030046918882">"Հետ"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Ծավալել «<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>» բաժինը"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Ծալել «<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>» բաժինը"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt;-ում հավելվածներին տա՞լ նույն թույլտվությունները, ինչ &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;-ում"</string>
diff --git a/packages/CompanionDeviceManager/res/values-in/strings.xml b/packages/CompanionDeviceManager/res/values-in/strings.xml
index 9c9144c..f582205 100644
--- a/packages/CompanionDeviceManager/res/values-in/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-in/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Jangan izinkan"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Batal"</string>
     <string name="consent_back" msgid="2560683030046918882">"Kembali"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Luaskan <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Ciutkan <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Berikan aplikasi di &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; izin yang sama seperti di &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-is/strings.xml b/packages/CompanionDeviceManager/res/values-is/strings.xml
index 1247aae..b66133c 100644
--- a/packages/CompanionDeviceManager/res/values-is/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-is/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Ekki leyfa"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Hætta við"</string>
     <string name="consent_back" msgid="2560683030046918882">"Til baka"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Stækka <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Minnka <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Veita forritum í &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; sömu heimildir og í &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-it/strings.xml b/packages/CompanionDeviceManager/res/values-it/strings.xml
index 36647ad..3496718 100644
--- a/packages/CompanionDeviceManager/res/values-it/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-it/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Non consentire"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Annulla"</string>
     <string name="consent_back" msgid="2560683030046918882">"Indietro"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Espandi <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Comprimi <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Vuoi dare alle app su &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; le stesse autorizzazioni che hai dato su &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-iw/strings.xml b/packages/CompanionDeviceManager/res/values-iw/strings.xml
index f08ee6e..626ae7a 100644
--- a/packages/CompanionDeviceManager/res/values-iw/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-iw/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"אין אישור"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"ביטול"</string>
     <string name="consent_back" msgid="2560683030046918882">"חזרה"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"הרחבה של <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"כיווץ של <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"‏האם לתת לאפליקציות ב-‎&lt;strong&gt;‎‏<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>‏‎&lt;/strong&gt;‎‏ את אותן הרשאות כמו ב-‏‎&lt;strong&gt;‎‏<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>‏‎&lt;/strong&gt;‎‏?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ja/strings.xml b/packages/CompanionDeviceManager/res/values-ja/strings.xml
index 0ad41cd..a8dc756 100644
--- a/packages/CompanionDeviceManager/res/values-ja/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ja/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"許可しない"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"キャンセル"</string>
     <string name="consent_back" msgid="2560683030046918882">"戻る"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>を開く"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>を閉じる"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; のアプリに &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; の場合と同じ権限を付与しますか？"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ka/strings.xml b/packages/CompanionDeviceManager/res/values-ka/strings.xml
index 3fb5519..97f3087 100644
--- a/packages/CompanionDeviceManager/res/values-ka/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ka/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"არ დაიშვას"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"გაუქმება"</string>
     <string name="consent_back" msgid="2560683030046918882">"უკან"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>-ის გაფართოება"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>-ის ჩაკეცვა"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"გსურთ აპებს &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt;-ზე იგივე ნებართვები მიანიჭოთ, როგორიც აქვს &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;-ზე?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-kk/strings.xml b/packages/CompanionDeviceManager/res/values-kk/strings.xml
index 06b82ec..4d77c6c 100644
--- a/packages/CompanionDeviceManager/res/values-kk/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-kk/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Рұқсат бермеу"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Бас тарту"</string>
     <string name="consent_back" msgid="2560683030046918882">"Артқа"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"\"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>\" панелін жаю"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"\"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>\" панелін жию"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; құрылғысындағы қолданбаларға &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; құрылғысындағыдай рұқсаттар берілсін бе?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-km/strings.xml b/packages/CompanionDeviceManager/res/values-km/strings.xml
index 3f6eacf..9047b05 100644
--- a/packages/CompanionDeviceManager/res/values-km/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-km/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"មិនអនុញ្ញាត"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"បោះបង់"</string>
     <string name="consent_back" msgid="2560683030046918882">"ថយក្រោយ"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"ពង្រីក <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"បង្រួម <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"ផ្ដល់​ការអនុញ្ញាតឱ្យ​កម្មវិធីនៅលើ &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; ដូចនៅលើ &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; ឬ?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-kn/strings.xml b/packages/CompanionDeviceManager/res/values-kn/strings.xml
index 269d729..751ac1f 100644
--- a/packages/CompanionDeviceManager/res/values-kn/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-kn/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"ಅನುಮತಿಸಬೇಡಿ"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"ರದ್ದುಮಾಡಿ"</string>
     <string name="consent_back" msgid="2560683030046918882">"ಹಿಂದೆ"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> ಅನ್ನು ವಿಸ್ತರಿಸಿ"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> ಅನ್ನು ಕುಗ್ಗಿಸಿ"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;/strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; ನಲ್ಲಿನ ಅನುಮತಿಗಳನ್ನೇ &lt;/strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; ನಲ್ಲಿನ ಆ್ಯಪ್‌ಗಳಿಗೆ ನೀಡಬೇಕೆ?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ko/strings.xml b/packages/CompanionDeviceManager/res/values-ko/strings.xml
index 0b4274e..a7a5dc1 100644
--- a/packages/CompanionDeviceManager/res/values-ko/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ko/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"허용 안함"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"취소"</string>
     <string name="consent_back" msgid="2560683030046918882">"뒤로"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> 펼치기"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> 접기"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt;에 설치된 앱에 &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;에 설치된 앱과 동일한 권한을 부여하시겠습니까?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ky/strings.xml b/packages/CompanionDeviceManager/res/values-ky/strings.xml
index a7b4f40..991fc9f 100644
--- a/packages/CompanionDeviceManager/res/values-ky/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ky/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Уруксат берилбесин"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Жок"</string>
     <string name="consent_back" msgid="2560683030046918882">"Артка"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> жайып көрсөтүү"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> жыйыштыруу"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; түзмөгүнө да &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; түзмөгүнө берилген уруксаттар берилсинби?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-lo/strings.xml b/packages/CompanionDeviceManager/res/values-lo/strings.xml
index d7f777d..91399b6 100644
--- a/packages/CompanionDeviceManager/res/values-lo/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-lo/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"ບໍ່ອະນຸຍາດ"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"ຍົກເລີກ"</string>
     <string name="consent_back" msgid="2560683030046918882">"ກັບຄືນ"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"ຂະຫຍາຍ <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"ຫຍໍ້ <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> ລົງ"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"ໃຫ້ການອະນຸຍາດແອັບຢູ່ &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; ເປັນການອະນຸຍາດດຽວກັນກັບຢູ່ &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; ບໍ?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-lt/strings.xml b/packages/CompanionDeviceManager/res/values-lt/strings.xml
index 5dd1d06..a3ac47b 100644
--- a/packages/CompanionDeviceManager/res/values-lt/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-lt/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Neleisti"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Atšaukti"</string>
     <string name="consent_back" msgid="2560683030046918882">"Atgal"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Išskleisti „<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>“"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Sutraukti „<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>“"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Suteikti &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; esančioms programoms tuos pačius leidimus kaip &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; esančioms programoms?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-lv/strings.xml b/packages/CompanionDeviceManager/res/values-lv/strings.xml
index 40de5d1..35c7481 100644
--- a/packages/CompanionDeviceManager/res/values-lv/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-lv/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Neatļaut"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Atcelt"</string>
     <string name="consent_back" msgid="2560683030046918882">"Atpakaļ"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Izvērst: <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Sakļaut: <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Vai lietotnēm ierīcē &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; piešķirt tādas pašas atļaujas kā ierīcē &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-mk/strings.xml b/packages/CompanionDeviceManager/res/values-mk/strings.xml
index db1c06a..1eaf2d2 100644
--- a/packages/CompanionDeviceManager/res/values-mk/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-mk/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Не дозволувај"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Откажи"</string>
     <string name="consent_back" msgid="2560683030046918882">"Назад"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Прошири <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Собери <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Дасе дадат исти дозволи на апликациите на &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; како на &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ml/strings.xml b/packages/CompanionDeviceManager/res/values-ml/strings.xml
index de50fc7..52fcb1f 100644
--- a/packages/CompanionDeviceManager/res/values-ml/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ml/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"അനുവദിക്കരുത്"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"റദ്ദാക്കുക"</string>
     <string name="consent_back" msgid="2560683030046918882">"മടങ്ങുക"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> വികസിപ്പിക്കുക"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> ചുരുക്കുക"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; എന്നതിലെ അതേ അനുമതികൾ &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; എന്നതിലെ ആപ്പുകൾക്ക് നൽകണോ?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-mn/strings.xml b/packages/CompanionDeviceManager/res/values-mn/strings.xml
index e76f688..5faf241 100644
--- a/packages/CompanionDeviceManager/res/values-mn/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-mn/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Бүү зөвшөөр"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Цуцлах"</string>
     <string name="consent_back" msgid="2560683030046918882">"Буцах"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>-г дэлгэх"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>-г хураах"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; дээрх аппуудад &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; дээрхтэй адил зөвшөөрөл өгөх үү?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-mr/strings.xml b/packages/CompanionDeviceManager/res/values-mr/strings.xml
index 03a5271..94e49fe 100644
--- a/packages/CompanionDeviceManager/res/values-mr/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-mr/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"अनुमती देऊ नका"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"रद्द करा"</string>
     <string name="consent_back" msgid="2560683030046918882">"मागे जा"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> चा विस्तार करा"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> कोलॅप्स करा"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; वरील अ‍ॅप्सना &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; प्रमाणेच परवानग्या द्यायच्या आहेत का?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ms/strings.xml b/packages/CompanionDeviceManager/res/values-ms/strings.xml
index ca41c6f..8b1170b 100644
--- a/packages/CompanionDeviceManager/res/values-ms/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ms/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Jangan benarkan"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Batal"</string>
     <string name="consent_back" msgid="2560683030046918882">"Kembali"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Kembangkan <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Kuncupkan <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Beri apl pada &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; kebenaran yang sama seperti pada &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-my/strings.xml b/packages/CompanionDeviceManager/res/values-my/strings.xml
index f03048b..faca3e3 100644
--- a/packages/CompanionDeviceManager/res/values-my/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-my/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"ခွင့်မပြုပါ"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"မလုပ်တော့"</string>
     <string name="consent_back" msgid="2560683030046918882">"နောက်သို့"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> ကို ပိုပြရန်"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> ကို လျှော့ပြရန်"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"အက်ပ်များကို &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; တွင်ပေးထားသည့် ခွင့်ပြုချက်များအတိုင်း &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; တွင် ပေးမလား။"</string>
diff --git a/packages/CompanionDeviceManager/res/values-nb/strings.xml b/packages/CompanionDeviceManager/res/values-nb/strings.xml
index 6008299..4188951 100644
--- a/packages/CompanionDeviceManager/res/values-nb/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-nb/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Ikke tillat"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Avbryt"</string>
     <string name="consent_back" msgid="2560683030046918882">"Tilbake"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Vis <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Skjul <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Vil du gi apper på &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; de samme tillatelsene som på &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ne/strings.xml b/packages/CompanionDeviceManager/res/values-ne/strings.xml
index dd8b1ae..2cd4fef 100644
--- a/packages/CompanionDeviceManager/res/values-ne/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ne/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"अनुमति नदिनुहोस्"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"रद्द गर्नुहोस्"</string>
     <string name="consent_back" msgid="2560683030046918882">"पछाडि"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> एक्स्पान्ड गर्नुहोस्"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> कोल्याप्स गर्नुहोस्"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; मा भएका एपहरूलाई पनि &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; मा दिइएकै अनुमति दिने हो?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-nl/strings.xml b/packages/CompanionDeviceManager/res/values-nl/strings.xml
index 22feb9d..2f0fc9a 100644
--- a/packages/CompanionDeviceManager/res/values-nl/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-nl/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Niet toestaan"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Annuleren"</string>
     <string name="consent_back" msgid="2560683030046918882">"Terug"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> uitvouwen"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> samenvouwen"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Apps op de &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; dezelfde rechten geven als op de &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-or/strings.xml b/packages/CompanionDeviceManager/res/values-or/strings.xml
index 96c6207..8298a5b 100644
--- a/packages/CompanionDeviceManager/res/values-or/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-or/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"ଅନୁମତି ଦିଅନ୍ତୁ ନାହିଁ"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"ବାତିଲ କରନ୍ତୁ"</string>
     <string name="consent_back" msgid="2560683030046918882">"ପଛକୁ ଫେରନ୍ତୁ"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>କୁ ବିସ୍ତାର କରନ୍ତୁ"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>କୁ ସଙ୍କୁଚିତ କରନ୍ତୁ"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;ପରି &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt;ରେ ଥିବା ଆପ୍ସକୁ ସମାନ ଅନୁମତିଗୁଡ଼ିକ ଦେବେ?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-pa/strings.xml b/packages/CompanionDeviceManager/res/values-pa/strings.xml
index c2db62f..fe13c00 100644
--- a/packages/CompanionDeviceManager/res/values-pa/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-pa/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"ਆਗਿਆ ਨਾ ਦਿਓ"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"ਰੱਦ ਕਰੋ"</string>
     <string name="consent_back" msgid="2560683030046918882">"ਪਿੱਛੇ"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> ਦਾ ਵਿਸਤਾਰ ਕਰੋ"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> ਨੂੰ ਸਮੇਟੋ"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"ਕੀ &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; \'ਤੇ ਮੌਜੂਦ ਐਪਾਂ ਨੂੰ &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; \'ਤੇ ਮੌਜੂਦ ਐਪਾਂ ਵਾਂਗ ਇਜਾਜ਼ਤਾਂ ਦੇਣੀਆਂ ਹਨ?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-pl/strings.xml b/packages/CompanionDeviceManager/res/values-pl/strings.xml
index 62a0d40..1599f3f 100644
--- a/packages/CompanionDeviceManager/res/values-pl/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-pl/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Nie zezwalaj"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Anuluj"</string>
     <string name="consent_back" msgid="2560683030046918882">"Wstecz"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Rozwiń sekcję <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Zwiń sekcję <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Czy aplikacjom na urządzeniu &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; przyznać te same uprawnienia co na urządzeniu &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-pt-rBR/strings.xml b/packages/CompanionDeviceManager/res/values-pt-rBR/strings.xml
index 81c50c1..85c23ea7 100644
--- a/packages/CompanionDeviceManager/res/values-pt-rBR/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-pt-rBR/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Não permitir"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Cancelar"</string>
     <string name="consent_back" msgid="2560683030046918882">"Voltar"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Abrir <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Fechar <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Dar aos apps no dispositivo &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; as mesmas permissões do dispositivo &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-pt-rPT/strings.xml b/packages/CompanionDeviceManager/res/values-pt-rPT/strings.xml
index bec6f11..bee8e91 100644
--- a/packages/CompanionDeviceManager/res/values-pt-rPT/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-pt-rPT/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Não permitir"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Cancelar"</string>
     <string name="consent_back" msgid="2560683030046918882">"Voltar"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Expandir <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Reduzir <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Dar às apps no dispositivo &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; as mesmas autorizações de &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-pt/strings.xml b/packages/CompanionDeviceManager/res/values-pt/strings.xml
index 81c50c1..85c23ea7 100644
--- a/packages/CompanionDeviceManager/res/values-pt/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-pt/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Não permitir"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Cancelar"</string>
     <string name="consent_back" msgid="2560683030046918882">"Voltar"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Abrir <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Fechar <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Dar aos apps no dispositivo &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; as mesmas permissões do dispositivo &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ro/strings.xml b/packages/CompanionDeviceManager/res/values-ro/strings.xml
index 40ae72e..6820d5b 100644
--- a/packages/CompanionDeviceManager/res/values-ro/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ro/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Nu permite"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Anulează"</string>
     <string name="consent_back" msgid="2560683030046918882">"Înapoi"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Extinde <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Restrânge <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Acorzi aplicațiilor de pe &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; aceleași permisiuni ca pe &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ru/strings.xml b/packages/CompanionDeviceManager/res/values-ru/strings.xml
index a5b5b59..3213a2f 100644
--- a/packages/CompanionDeviceManager/res/values-ru/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ru/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Запретить"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Отмена"</string>
     <string name="consent_back" msgid="2560683030046918882">"Назад"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Разворачивать список \"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>\"."</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Сворачивать список \"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>\"."</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Предоставить приложениям на устройстве &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; те же разрешения, что на устройстве &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-si/strings.xml b/packages/CompanionDeviceManager/res/values-si/strings.xml
index cc04f4b..7fd6611 100644
--- a/packages/CompanionDeviceManager/res/values-si/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-si/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"ඉඩ නොදෙන්න"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"අවලංගු කරන්න"</string>
     <string name="consent_back" msgid="2560683030046918882">"ආපසු"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> විදහන්න"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> හකුළන්න"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; the හි යෙදුම්වලට &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; හි අවසරම දෙන්නද?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-sk/strings.xml b/packages/CompanionDeviceManager/res/values-sk/strings.xml
index f46252e..5194f21 100644
--- a/packages/CompanionDeviceManager/res/values-sk/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-sk/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Nepovoliť"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Zrušiť"</string>
     <string name="consent_back" msgid="2560683030046918882">"Späť"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Rozbaliť sekciu <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Zbaliť sekciu <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Chcete udeliť aplikáciám v zariadení &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; rovnaké povolenia ako v zariadení &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-sl/strings.xml b/packages/CompanionDeviceManager/res/values-sl/strings.xml
index 0696c98..2200220 100644
--- a/packages/CompanionDeviceManager/res/values-sl/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-sl/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Ne dovoli"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Prekliči"</string>
     <string name="consent_back" msgid="2560683030046918882">"Nazaj"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Razširi dovoljenje »<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>«"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Strni dovoljenje »<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>«"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Ali želite aplikacijam v napravi &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; odobriti enaka dovoljenja kot v napravi &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-sq/strings.xml b/packages/CompanionDeviceManager/res/values-sq/strings.xml
index 02f88ce..f683dd9 100644
--- a/packages/CompanionDeviceManager/res/values-sq/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-sq/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Mos lejo"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Anulo"</string>
     <string name="consent_back" msgid="2560683030046918882">"Pas"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Zgjero: <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Palos: <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"T\'i jepen aplikacioneve në &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; të njëjtat leje si në &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-sr/strings.xml b/packages/CompanionDeviceManager/res/values-sr/strings.xml
index 5f7e53d..d568009 100644
--- a/packages/CompanionDeviceManager/res/values-sr/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-sr/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Не дозволи"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Откажи"</string>
     <string name="consent_back" msgid="2560683030046918882">"Назад"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Прошири <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Скупи <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Апликцијама на уређају &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; дајете све дозволе као на уређају &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-sv/strings.xml b/packages/CompanionDeviceManager/res/values-sv/strings.xml
index a622ff4..5c6f5ba 100644
--- a/packages/CompanionDeviceManager/res/values-sv/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-sv/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Tillåt inte"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Avbryt"</string>
     <string name="consent_back" msgid="2560683030046918882">"Tillbaka"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Utöka <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Komprimera <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Vill du ge apparna på &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; samma behörigheter som de har på &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-sw/strings.xml b/packages/CompanionDeviceManager/res/values-sw/strings.xml
index c010837..7a1cf98 100644
--- a/packages/CompanionDeviceManager/res/values-sw/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-sw/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Usiruhusu"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Ghairi"</string>
     <string name="consent_back" msgid="2560683030046918882">"Nyuma"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Panua <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Kunja <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Ungependa kuzipa programu katika &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; ruhusa ile ile kama kwenye &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ta/strings.xml b/packages/CompanionDeviceManager/res/values-ta/strings.xml
index 96f7d63..2313cc3 100644
--- a/packages/CompanionDeviceManager/res/values-ta/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ta/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"அனுமதிக்க வேண்டாம்"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"ரத்துசெய்"</string>
     <string name="consent_back" msgid="2560683030046918882">"பின்செல்"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> ஐ விரிவாக்கும்"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> ஐச் சுருக்கும்"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; சாதனத்தில் இருக்கும் அதே அனுமதிகளை &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; சாதனத்தில் உள்ள ஆப்ஸுக்கும் வழங்கவா?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-te/strings.xml b/packages/CompanionDeviceManager/res/values-te/strings.xml
index f353b80..eed0eee 100644
--- a/packages/CompanionDeviceManager/res/values-te/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-te/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"అనుమతించవద్దు"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"రద్దు చేయండి"</string>
     <string name="consent_back" msgid="2560683030046918882">"వెనుకకు"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>‌ను విస్తరించండి"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>‌ను కుదించండి"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt;లోని యాప్‌లకు &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;లో ఉన్న అనుమతులను ఇవ్వాలా?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-th/strings.xml b/packages/CompanionDeviceManager/res/values-th/strings.xml
index 6a38c99..bf14f4c 100644
--- a/packages/CompanionDeviceManager/res/values-th/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-th/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"ไม่อนุญาต"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"ยกเลิก"</string>
     <string name="consent_back" msgid="2560683030046918882">"กลับ"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"ขยาย <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"ยุบ <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"ให้แอปใน &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; มีสิทธิ์เหมือนกับใน &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; ไหม"</string>
diff --git a/packages/CompanionDeviceManager/res/values-tl/strings.xml b/packages/CompanionDeviceManager/res/values-tl/strings.xml
index 8d5470c..90e5eb7 100644
--- a/packages/CompanionDeviceManager/res/values-tl/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-tl/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Huwag payagan"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Kanselahin"</string>
     <string name="consent_back" msgid="2560683030046918882">"Bumalik"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"I-expand ang <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"I-collapse ang <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Bigyan ang mga app sa &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; ng mga pahintulot na mayroon din sa &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-tr/strings.xml b/packages/CompanionDeviceManager/res/values-tr/strings.xml
index 86c0e46..56997d7 100644
--- a/packages/CompanionDeviceManager/res/values-tr/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-tr/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"İzin verme"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"İptal"</string>
     <string name="consent_back" msgid="2560683030046918882">"Geri"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> panelini genişlet"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> panelini daralt"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; cihazındaki uygulamalara, &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; cihazındakiyle aynı izinler verilsin mi?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-uk/strings.xml b/packages/CompanionDeviceManager/res/values-uk/strings.xml
index ff93a65..7d7b9de 100644
--- a/packages/CompanionDeviceManager/res/values-uk/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-uk/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Не дозволяти"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Скасувати"</string>
     <string name="consent_back" msgid="2560683030046918882">"Назад"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Розгорнути дозвіл \"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>\""</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Згорнути дозвіл \"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>\""</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Надати додаткам на пристрої &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; такі самі дозволи, що й на пристрої &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ur/strings.xml b/packages/CompanionDeviceManager/res/values-ur/strings.xml
index 8c50d81..690e439 100644
--- a/packages/CompanionDeviceManager/res/values-ur/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ur/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"اجازت نہ دیں"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"منسوخ کریں"</string>
     <string name="consent_back" msgid="2560683030046918882">"پیچھے"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> کو پھیلائیں"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g> کو سکیڑیں"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"‏ایپس کو &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; پر وہی اجازتیں دیں جو &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; پر دی گئی ہیں؟"</string>
diff --git a/packages/CompanionDeviceManager/res/values-uz/strings.xml b/packages/CompanionDeviceManager/res/values-uz/strings.xml
index 076bb74..e1a024c 100644
--- a/packages/CompanionDeviceManager/res/values-uz/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-uz/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Ruxsat berilmasin"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Bekor qilish"</string>
     <string name="consent_back" msgid="2560683030046918882">"Orqaga"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Yoyish: <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Yopish: <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; ilovalariga &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; qurilmasidagi kabi bir xil ruxsatlar berilsinmi?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-vi/strings.xml b/packages/CompanionDeviceManager/res/values-vi/strings.xml
index a44af74..0293317 100644
--- a/packages/CompanionDeviceManager/res/values-vi/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-vi/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Không cho phép"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Huỷ"</string>
     <string name="consent_back" msgid="2560683030046918882">"Quay lại"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Mở rộng <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Thu gọn <xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Cấp cho các ứng dụng trên &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; các quyền giống như trên &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values-zh-rCN/strings.xml b/packages/CompanionDeviceManager/res/values-zh-rCN/strings.xml
index ccc046b..ed68dd3 100644
--- a/packages/CompanionDeviceManager/res/values-zh-rCN/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-zh-rCN/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"不允许"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"取消"</string>
     <string name="consent_back" msgid="2560683030046918882">"返回"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"展开<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"收起<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"要让&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt;上的应用享有在&lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;上的同等权限吗？"</string>
diff --git a/packages/CompanionDeviceManager/res/values-zh-rHK/strings.xml b/packages/CompanionDeviceManager/res/values-zh-rHK/strings.xml
index 3dcaa9f..17d3482f 100644
--- a/packages/CompanionDeviceManager/res/values-zh-rHK/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-zh-rHK/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"不允許"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"取消"</string>
     <string name="consent_back" msgid="2560683030046918882">"返回"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"展開<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"收合<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"&lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; 上的應用程式可獲在 &lt;strong&gt;<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt; 上的相同權限嗎？"</string>
diff --git a/packages/CompanionDeviceManager/res/values-zh-rTW/strings.xml b/packages/CompanionDeviceManager/res/values-zh-rTW/strings.xml
index a96e43f..542a73fc 100644
--- a/packages/CompanionDeviceManager/res/values-zh-rTW/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-zh-rTW/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"不允許"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"取消"</string>
     <string name="consent_back" msgid="2560683030046918882">"返回"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"展開<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"收合<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"要讓「<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>」&lt;strong&gt;&lt;/strong&gt;的應用程式沿用在「<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>」&lt;strong&gt;&lt;/strong&gt;上的權限嗎？"</string>
diff --git a/packages/CompanionDeviceManager/res/values-zu/strings.xml b/packages/CompanionDeviceManager/res/values-zu/strings.xml
index bc7bb81..b1c7a14 100644
--- a/packages/CompanionDeviceManager/res/values-zu/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-zu/strings.xml
@@ -51,6 +51,10 @@
     <string name="consent_no" msgid="2640796915611404382">"Ungavumeli"</string>
     <string name="consent_cancel" msgid="5655005528379285841">"Khansela"</string>
     <string name="consent_back" msgid="2560683030046918882">"Emuva"</string>
+    <!-- no translation found for downward_arrow_action (2327165938832076333) -->
+    <skip />
+    <!-- no translation found for downward_arrow (2292427714411156088) -->
+    <skip />
     <string name="permission_expand" msgid="893185038020887411">"Nweba i-<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_collapse" msgid="3320833884220844084">"Goqa i-<xliff:g id="PERMISSION_TYPE">%1$s</xliff:g>"</string>
     <string name="permission_sync_confirmation_title" msgid="4409622174437248702">"Nikeza ama-app &lt;strong&gt;<xliff:g id="COMPANION_DEVICE_NAME">%1$s</xliff:g>&lt;/strong&gt; izimvume ezifanayot &lt;strong&gt;njengaku-<xliff:g id="PRIMARY_DEVICE_NAME">%2$s</xliff:g>&lt;/strong&gt;?"</string>
diff --git a/packages/CompanionDeviceManager/res/values/strings.xml b/packages/CompanionDeviceManager/res/values/strings.xml
index 20ede5f..60f209b 100644
--- a/packages/CompanionDeviceManager/res/values/strings.xml
+++ b/packages/CompanionDeviceManager/res/values/strings.xml
@@ -139,6 +139,12 @@
     <!-- Back button for the helper consent dialog [CHAR LIMIT=30] -->
     <string name="consent_back">Back</string>
 
+    <!-- Downward arrow button action for scroll down the permission list [CHAR LIMIT=30] -->
+    <string name="downward_arrow_action">Scroll down the list</string>
+
+    <!-- Downward arrow button [CHAR LIMIT=30] -->
+    <string name="downward_arrow">Downward arrow</string>
+
     <!-- Expand permission in the list CHAR LIMIT=30] -->
     <string name="permission_expand">Expand <xliff:g id="permission_type" example="Notification">%1$s</xliff:g></string>
 
diff --git a/packages/CompanionDeviceManager/res/values/styles.xml b/packages/CompanionDeviceManager/res/values/styles.xml
index 30813ba..814cc4d 100644
--- a/packages/CompanionDeviceManager/res/values/styles.xml
+++ b/packages/CompanionDeviceManager/res/values/styles.xml
@@ -119,7 +119,7 @@
         <item name="android:layout_marginEnd">32dp</item>
         <item name="android:textColor">@android:color/system_neutral1_900</item>
         <item name="android:textAppearance">@android:style/TextAppearance.DeviceDefault.Medium</item>
-        <item name="android:background">@drawable/btn_positive_bottom</item>
+        <item name="android:background">@drawable/btn_positive_button</item>
     </style>
 
     <style name="NegativeButton"
diff --git a/packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionAssociationActivity.java b/packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionAssociationActivity.java
index ea40e13..dd77c61 100644
--- a/packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionAssociationActivity.java
+++ b/packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionAssociationActivity.java
@@ -176,6 +176,8 @@
     // an association to CDM.
     private boolean mApproved;
     private boolean mCancelled;
+    // Indicates user has completely scrolled through the permissions list.
+    private boolean mIsPermissionsListScrolledToBottom;
     // A reference to the device selected by the user, to be sent back to the application via
     // onActivityResult() after the association is created.
     private @Nullable DeviceFilterPair<?> mSelectedDevice;
@@ -450,7 +452,7 @@
     }
 
     private void stopDiscovery() {
-        if (!mRequest.isSelfManaged()) {
+        if (mRequest != null && !mRequest.isSelfManaged()) {
             CompanionDeviceDiscoveryService.stop(this);
         }
     }
@@ -590,6 +592,15 @@
             mDeviceListRecyclerView.setVisibility(View.VISIBLE);
         }
 
+        // Set accessibility action for mCancelScanLayout (wraps mButtonCancelScan) for TalkBack.
+        mButtonCancelScan.setAccessibilityDelegate(new View.AccessibilityDelegate() {
+            public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfo info) {
+                super.onInitializeAccessibilityNodeInfo(host, info);
+                info.addAction(AccessibilityNodeInfo.AccessibilityAction.ACTION_CLICK);
+            }
+        });
+
+
         mSummary.setVisibility(View.GONE);
         mButtonAllow.setVisibility(View.GONE);
         mButtonNotAllow.setVisibility(View.GONE);
@@ -670,10 +681,30 @@
 
     private void onPositiveButtonClick(View v) {
         Slog.d(TAG, "onPositiveButtonClick()");
+        // Scroll the permission list when a user presses the `Allow` button.
+        if (mPermissionListRecyclerView != null
+                && mPermissionListRecyclerView.isVisibleToUser()
+                && !mIsPermissionsListScrolledToBottom) {
+            LinearLayoutManager layoutManager =
+                    (LinearLayoutManager) mPermissionListRecyclerView.getLayoutManager();
+            if (layoutManager == null) return;
 
+            int lastVisibleItemPosition = layoutManager.findLastCompletelyVisibleItemPosition();
+            int firstVisibleItemPosition = layoutManager.findFirstCompletelyVisibleItemPosition();
+            int scrollOffset = lastVisibleItemPosition - firstVisibleItemPosition;
+            int numItems = mPermissionListRecyclerView.getAdapter().getItemCount();
+
+            // Calculate the next scroll position with the offset
+            int nextScrollPosition = Math.min(
+                    lastVisibleItemPosition + scrollOffset + 1, numItems - 1);
+            mPermissionListRecyclerView.smoothScrollToPosition(nextScrollPosition);
+
+            return;
+        }
         // Disable the button, to prevent more clicks.
         v.setEnabled(false);
 
+        // Approved the association creation if the list is scrolled to the bottom.
         if (mRequest.isSelfManaged()) {
             onAssociationApproved(null);
         } else {
@@ -774,31 +805,48 @@
         }
     }
 
-    // Disable and grey out the Allow and Don't allow buttons if the last permission in the
+    // 1. Disable and grey out the Don't allow button if the last permission in the
     // permission list is not visible to the users.
+    // 2. Remove the text for Allow button.
+    // 3. Set the background that includes the downward arrow icon.
     private void disableButtons() {
-        mButtonAllow.setEnabled(false);
+        mButtonAllow.setText("");
+        mButtonAllow.setBackgroundResource(R.drawable.btn_positive_button_with_arrow);
+        mButtonAllow.setContentDescription("");
+        mButtonAllow.setAccessibilityDelegate(new View.AccessibilityDelegate() {
+            public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfo info) {
+                super.onInitializeAccessibilityNodeInfo(host, info);
+                info.setContentDescription(getString(R.string.downward_arrow));
+                info.addAction(
+                        new AccessibilityNodeInfo.AccessibilityAction(
+                                AccessibilityNodeInfo.ACTION_CLICK,
+                                getString(R.string.downward_arrow_action)
+                        )
+                );
+            }
+        });
+
         mButtonNotAllow.setEnabled(false);
-        mButtonAllow.setTextColor(
-                getResources().getColor(android.R.color.system_neutral1_400, null));
         mButtonNotAllow.setTextColor(
                 getResources().getColor(android.R.color.system_neutral1_400, null));
-        mButtonAllow.getBackground().setColorFilter(
-                (new BlendModeColorFilter(Color.LTGRAY,  BlendMode.DARKEN)));
         mButtonNotAllow.getBackground().setColorFilter(
                 (new BlendModeColorFilter(Color.LTGRAY,  BlendMode.DARKEN)));
     }
-    // Enable and restore the color for the Allow and Don't allow buttons if the last permission in
-    // the permission list is visible to the users.
+    // 1.Enable and restore the color for the Allow and Don't allow buttons if the
+    // last permission in the permission list is visible to the users.
+    // 2. Re-set the background for the Allow button which remove the downward arrow icon.
     private void enableButtons() {
-        mButtonAllow.setEnabled(true);
+        mButtonAllow.setText(R.string.consent_yes);
+        mButtonAllow.setBackgroundResource(R.drawable.btn_positive_button);
+        mButtonAllow.setContentDescription(getString(R.string.consent_yes));
+        mButtonAllow.setAccessibilityDelegate(null);
+
         mButtonNotAllow.setEnabled(true);
-        mButtonAllow.getBackground().setColorFilter(null);
         mButtonNotAllow.getBackground().setColorFilter(null);
-        mButtonAllow.setTextColor(
-                getResources().getColor(android.R.color.system_neutral1_900, null));
         mButtonNotAllow.setTextColor(
                 getResources().getColor(android.R.color.system_neutral1_900, null));
+
+        mIsPermissionsListScrolledToBottom = true;
     }
 
     private final ResultReceiver mOnAssociationCreatedReceiver =
diff --git a/packages/CredentialManager/res/values-sv/strings.xml b/packages/CredentialManager/res/values-sv/strings.xml
index cab499a..4bdd408 100644
--- a/packages/CredentialManager/res/values-sv/strings.xml
+++ b/packages/CredentialManager/res/values-sv/strings.xml
@@ -93,6 +93,6 @@
     <string name="get_dialog_heading_from_another_device" msgid="1166697017046724072">"Via en annan enhet"</string>
     <string name="get_dialog_option_headline_use_a_different_device" msgid="8201578814988047549">"Använd en annan enhet"</string>
     <string name="request_cancelled_by" msgid="3735222326886267820">"Begäran avbruten av <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
-    <string name="dropdown_presentation_more_sign_in_options_text" msgid="1693727354272417902">"Inloggningsalternativ"</string>
+    <string name="dropdown_presentation_more_sign_in_options_text" msgid="1693727354272417902">"Inloggnings­alternativ"</string>
     <string name="more_options_content_description" msgid="1323427365788198808">"Mer"</string>
 </resources>
diff --git a/packages/SettingsLib/CollapsingToolbarBaseActivity/res/layout-v31/non_collapsing_toolbar_base_layout.xml b/packages/SettingsLib/CollapsingToolbarBaseActivity/res/layout-v31/non_collapsing_toolbar_base_layout.xml
index 1e48443..a49f4be 100644
--- a/packages/SettingsLib/CollapsingToolbarBaseActivity/res/layout-v31/non_collapsing_toolbar_base_layout.xml
+++ b/packages/SettingsLib/CollapsingToolbarBaseActivity/res/layout-v31/non_collapsing_toolbar_base_layout.xml
@@ -19,7 +19,8 @@
     android:id="@+id/content_parent"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
-    android:fitsSystemWindows="true">
+    android:fitsSystemWindows="true"
+    android:filterTouchesWhenObscured="false">
 
     <include layout="@layout/non_collapsing_toolbar_content_layout"/>
 </androidx.coordinatorlayout.widget.CoordinatorLayout>
diff --git a/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/CollapsingToolbarDelegate.java b/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/CollapsingToolbarDelegate.java
index 01ecb66..de0d609 100644
--- a/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/CollapsingToolbarDelegate.java
+++ b/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/CollapsingToolbarDelegate.java
@@ -89,6 +89,10 @@
 
     private boolean mIsExpressiveTheme;
 
+    public CollapsingToolbarDelegate(@NonNull HostCallback hostCallback) {
+        this(hostCallback, /* useCollapsingToolbar= */ true);
+    }
+
     public CollapsingToolbarDelegate(@NonNull HostCallback hostCallback,
             boolean useCollapsingToolbar) {
         mHostCallback = hostCallback;
diff --git a/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/widget/CollapsingCoordinatorLayout.java b/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/widget/CollapsingCoordinatorLayout.java
index 51d7504..25d0400 100644
--- a/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/widget/CollapsingCoordinatorLayout.java
+++ b/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/widget/CollapsingCoordinatorLayout.java
@@ -105,6 +105,7 @@
         return true;
     }
 
+    @SuppressWarnings("RestrictTo")
     private void init() {
         int resId = SettingsThemeHelper.isExpressiveTheme(getContext())
                 ? R.layout.settingslib_expressive_collapsing_toolbar_content_layout
diff --git a/packages/SettingsLib/IntroPreference/src/com/android/settingslib/widget/IntroPreference.kt b/packages/SettingsLib/IntroPreference/src/com/android/settingslib/widget/IntroPreference.kt
index 9d037e9..806580b 100644
--- a/packages/SettingsLib/IntroPreference/src/com/android/settingslib/widget/IntroPreference.kt
+++ b/packages/SettingsLib/IntroPreference/src/com/android/settingslib/widget/IntroPreference.kt
@@ -17,20 +17,20 @@
 package com.android.settingslib.widget
 
 import android.content.Context
-import android.os.Build
 import android.text.TextUtils
 import android.util.AttributeSet
 import android.view.View
-import androidx.annotation.RequiresApi
 import androidx.preference.Preference
 import androidx.preference.PreferenceViewHolder
 import com.android.settingslib.widget.preference.intro.R
 
-class IntroPreference @JvmOverloads constructor(
+class IntroPreference
+@JvmOverloads
+constructor(
     context: Context,
     attrs: AttributeSet? = null,
     defStyleAttr: Int = 0,
-    defStyleRes: Int = 0
+    defStyleRes: Int = 0,
 ) : Preference(context, attrs, defStyleAttr, defStyleRes), GroupSectionDividerMixin {
 
     private var isCollapsable: Boolean = true
@@ -66,9 +66,9 @@
 
     /**
      * Sets whether the summary is collapsable.
+     *
      * @param collapsable True if the summary should be collapsable, false otherwise.
      */
-    @RequiresApi(Build.VERSION_CODES.VANILLA_ICE_CREAM)
     fun setCollapsable(collapsable: Boolean) {
         isCollapsable = collapsable
         minLines = if (isCollapsable) DEFAULT_MIN_LINES else DEFAULT_MAX_LINES
@@ -77,9 +77,9 @@
 
     /**
      * Sets the minimum number of lines to display when collapsed.
+     *
      * @param lines The minimum number of lines.
      */
-    @RequiresApi(Build.VERSION_CODES.VANILLA_ICE_CREAM)
     fun setMinLines(lines: Int) {
         minLines = lines.coerceIn(1, DEFAULT_MAX_LINES)
         notifyChanged()
@@ -87,9 +87,9 @@
 
     /**
      * Sets the action when clicking on the hyperlink in the text.
+     *
      * @param listener The click listener for hyperlink.
      */
-    @RequiresApi(Build.VERSION_CODES.VANILLA_ICE_CREAM)
     fun setHyperlinkListener(listener: View.OnClickListener) {
         if (hyperlinkListener != listener) {
             hyperlinkListener = listener
@@ -99,9 +99,9 @@
 
     /**
      * Sets the action when clicking on the learn more view.
+     *
      * @param listener The click listener for learn more.
      */
-    @RequiresApi(Build.VERSION_CODES.VANILLA_ICE_CREAM)
     fun setLearnMoreAction(listener: View.OnClickListener) {
         if (learnMoreListener != listener) {
             learnMoreListener = listener
@@ -111,9 +111,9 @@
 
     /**
      * Sets the text of learn more view.
+     *
      * @param text The text of learn more.
      */
-    @RequiresApi(Build.VERSION_CODES.VANILLA_ICE_CREAM)
     fun setLearnMoreText(text: CharSequence) {
         if (!TextUtils.equals(learnMoreText, text)) {
             learnMoreText = text
diff --git a/packages/SettingsLib/Preference/src/com/android/settingslib/preference/PreferenceScreenBindingHelper.kt b/packages/SettingsLib/Preference/src/com/android/settingslib/preference/PreferenceScreenBindingHelper.kt
index 1cb8005..02bef9f 100644
--- a/packages/SettingsLib/Preference/src/com/android/settingslib/preference/PreferenceScreenBindingHelper.kt
+++ b/packages/SettingsLib/Preference/src/com/android/settingslib/preference/PreferenceScreenBindingHelper.kt
@@ -59,8 +59,6 @@
     private val preferenceHierarchy: PreferenceHierarchy,
 ) : KeyedDataObservable<String>() {
 
-    private val mainExecutor = HandlerExecutor.main
-
     private val preferenceLifecycleContext =
         object : PreferenceLifecycleContext(context) {
             override val lifecycleScope: LifecycleCoroutineScope
@@ -88,11 +86,11 @@
     private val preferences: ImmutableMap<String, PreferenceHierarchyNode>
     private val dependencies: ImmutableMultimap<String, String>
     private val lifecycleAwarePreferences: Array<PreferenceLifecycleProvider>
-    private val storages = mutableMapOf<String, KeyedObservable<String>>()
+    private val observables = mutableMapOf<String, KeyedObservable<String>>()
 
     private val preferenceObserver: KeyedObserver<String?>
 
-    private val storageObserver =
+    private val observer =
         KeyedObserver<String> { key, reason ->
             if (DataChangeReason.isDataChange(reason)) {
                 notifyChange(key, PreferenceChangeReason.VALUE)
@@ -133,15 +131,19 @@
         this.dependencies = dependenciesBuilder.build()
         this.lifecycleAwarePreferences = lifecycleAwarePreferences.toTypedArray()
 
+        val executor = HandlerExecutor.main
         preferenceObserver = KeyedObserver { key, reason -> onPreferenceChange(key, reason) }
-        addObserver(preferenceObserver, mainExecutor)
+        addObserver(preferenceObserver, executor)
 
         preferenceScreen.forEachRecursively {
-            it.preferenceDataStore?.findKeyValueStore()?.let { keyValueStore ->
-                val key = it.key
-                storages[key] = keyValueStore
-                keyValueStore.addObserver(key, storageObserver, mainExecutor)
-            }
+            val key = it.key ?: return@forEachRecursively
+            @Suppress("UNCHECKED_CAST")
+            val observable =
+                it.preferenceDataStore?.findKeyValueStore()
+                    ?: (preferences[key]?.metadata as? KeyedObservable<String>)
+                    ?: return@forEachRecursively
+            observables[key] = observable
+            observable.addObserver(key, observer, executor)
         }
     }
 
@@ -212,7 +214,7 @@
 
     fun onDestroy() {
         removeObserver(preferenceObserver)
-        for ((key, storage) in storages) storage.removeObserver(key, storageObserver)
+        for ((key, observable) in observables) observable.removeObserver(key, observer)
         for (preference in lifecycleAwarePreferences) {
             preference.onDestroy(preferenceLifecycleContext)
         }
diff --git a/packages/SettingsLib/SelectorWithWidgetPreference/res/layout-v36/preference_selector_with_widget.xml b/packages/SettingsLib/SelectorWithWidgetPreference/res/layout-v36/preference_selector_with_widget.xml
new file mode 100644
index 0000000..a79d69d
--- /dev/null
+++ b/packages/SettingsLib/SelectorWithWidgetPreference/res/layout-v36/preference_selector_with_widget.xml
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+    Copyright (C) 2025 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"
+    xmlns:settings="http://schemas.android.com/apk/res-auto"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:background="?android:attr/selectableItemBackground"
+    android:gravity="center_vertical"
+    android:minHeight="?android:attr/listPreferredItemHeightSmall"
+    android:paddingEnd="?android:attr/listPreferredItemPaddingEnd">
+
+    <LinearLayout
+        android:id="@android:id/widget_frame"
+        android:layout_width="wrap_content"
+        android:layout_height="match_parent"
+        android:paddingEnd="@dimen/settingslib_expressive_space_extrasmall6"
+        android:gravity="center"
+        android:minWidth="32dp"
+        android:orientation="vertical"/>
+
+    <LinearLayout
+        android:id="@+id/icon_frame"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:gravity="center_vertical"
+        android:minWidth="32dp"
+        android:orientation="horizontal"
+        android:layout_marginEnd="@dimen/settingslib_expressive_space_small1"
+        android:paddingTop="@dimen/settingslib_expressive_space_extrasmall2"
+        android:paddingBottom="@dimen/settingslib_expressive_space_extrasmall2">
+        <androidx.preference.internal.PreferenceImageView
+            android:id="@android:id/icon"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            settings:maxWidth="@dimen/secondary_app_icon_size"
+            settings:maxHeight="@dimen/secondary_app_icon_size"/>
+    </LinearLayout>
+
+    <LinearLayout
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:layout_weight="1"
+        android:orientation="vertical"
+        android:paddingTop="@dimen/settingslib_expressive_space_small1"
+        android:paddingBottom="@dimen/settingslib_expressive_space_small1"
+        android:paddingEnd="?android:attr/listPreferredItemPaddingEnd">
+
+        <TextView
+            android:id="@android:id/title"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:maxLines="2"
+            android:ellipsize="end"
+            android:hyphenationFrequency="normalFast"
+            android:lineBreakWordStyle="phrase"
+            android:textAppearance="?android:attr/textAppearanceListItem"/>
+
+        <LinearLayout
+            android:id="@+id/summary_container"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:visibility="gone">
+            <TextView
+                android:id="@android:id/summary"
+                android:layout_width="0dp"
+                android:layout_height="wrap_content"
+                android:layout_weight="1"
+                android:textAppearance="?android:attr/textAppearanceSmall"
+                android:textAlignment="viewStart"
+                android:hyphenationFrequency="normalFast"
+                android:lineBreakWordStyle="phrase"
+                android:textColor="?android:attr/textColorSecondary"/>
+
+            <TextView
+                android:id="@+id/appendix"
+                android:layout_width="0dp"
+                android:layout_height="wrap_content"
+                android:layout_weight="1"
+                android:textAppearance="?android:attr/textAppearanceSmall"
+                android:textAlignment="viewEnd"
+                android:textColor="?android:attr/textColorSecondary"
+                android:maxLines="1"
+                android:visibility="gone"
+                android:ellipsize="end"/>
+        </LinearLayout>
+    </LinearLayout>
+
+    <LinearLayout
+        android:id="@+id/selector_extra_widget_container"
+        android:layout_width="wrap_content"
+        android:layout_height="match_parent"
+        android:orientation="horizontal"
+        android:gravity="center_vertical">
+        <View
+            android:layout_width=".75dp"
+            android:layout_height="32dp"
+            android:layout_marginTop="@dimen/settingslib_expressive_space_small1"
+            android:layout_marginBottom="@dimen/settingslib_expressive_space_small1"
+            android:background="?android:attr/dividerVertical"/>
+        <ImageView
+            android:id="@+id/selector_extra_widget"
+            android:layout_width="match_parent"
+            android:minWidth="@dimen/two_target_min_width"
+            android:layout_height="fill_parent"
+            android:src="@drawable/ic_settings_accent"
+            android:contentDescription="@string/settings_label"
+            android:paddingStart="@dimen/settingslib_expressive_space_small4"
+            android:paddingEnd="@dimen/settingslib_expressive_space_small4"
+            android:layout_gravity="center"
+            android:background="?android:attr/selectableItemBackground"/>
+    </LinearLayout>
+</LinearLayout>
diff --git a/packages/SettingsLib/SelectorWithWidgetPreference/res/layout/preference_widget_checkbox.xml b/packages/SettingsLib/SelectorWithWidgetPreference/res/layout/settingslib_preference_widget_checkbox.xml
similarity index 100%
rename from packages/SettingsLib/SelectorWithWidgetPreference/res/layout/preference_widget_checkbox.xml
rename to packages/SettingsLib/SelectorWithWidgetPreference/res/layout/settingslib_preference_widget_checkbox.xml
diff --git a/packages/SettingsLib/SelectorWithWidgetPreference/res/layout/preference_widget_radiobutton.xml b/packages/SettingsLib/SelectorWithWidgetPreference/res/layout/settingslib_preference_widget_radiobutton.xml
similarity index 100%
rename from packages/SettingsLib/SelectorWithWidgetPreference/res/layout/preference_widget_radiobutton.xml
rename to packages/SettingsLib/SelectorWithWidgetPreference/res/layout/settingslib_preference_widget_radiobutton.xml
diff --git a/packages/SettingsLib/SelectorWithWidgetPreference/src/com/android/settingslib/widget/SelectorWithWidgetPreference.java b/packages/SettingsLib/SelectorWithWidgetPreference/src/com/android/settingslib/widget/SelectorWithWidgetPreference.java
index 218983a..cde8b33 100644
--- a/packages/SettingsLib/SelectorWithWidgetPreference/src/com/android/settingslib/widget/SelectorWithWidgetPreference.java
+++ b/packages/SettingsLib/SelectorWithWidgetPreference/src/com/android/settingslib/widget/SelectorWithWidgetPreference.java
@@ -234,9 +234,9 @@
     private void init(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr,
             int defStyleRes) {
         if (mIsCheckBox) {
-            setWidgetLayoutResource(R.layout.preference_widget_checkbox);
+            setWidgetLayoutResource(R.layout.settingslib_preference_widget_checkbox);
         } else {
-            setWidgetLayoutResource(R.layout.preference_widget_radiobutton);
+            setWidgetLayoutResource(R.layout.settingslib_preference_widget_radiobutton);
         }
         setLayoutResource(R.layout.preference_selector_with_widget);
         setIconSpaceReserved(false);
diff --git a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background.xml b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background.xml
index 9aa0bc3..0446873 100644
--- a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background.xml
+++ b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background.xml
@@ -19,16 +19,12 @@
     android:color="?android:colorControlHighlight">
     <item
         android:start="?android:attr/listPreferredItemPaddingStart"
-        android:end="?android:attr/listPreferredItemPaddingEnd"
-        android:top="2dp"
-        android:bottom="16dp">
+        android:end="?android:attr/listPreferredItemPaddingEnd">
         <shape android:shape="rectangle">
             <solid
                 android:color="@color/settingslib_materialColorSurfaceBright" />
             <corners
                 android:radius="@dimen/settingslib_preference_corner_radius" />
-            <padding
-                android:bottom="16dp"/>
         </shape>
     </item>
-</ripple>
\ No newline at end of file
+</ripple>
diff --git a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_bottom.xml b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_bottom.xml
index 554cba5..25a936d 100644
--- a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_bottom.xml
+++ b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_bottom.xml
@@ -19,9 +19,7 @@
     android:color="?android:colorControlHighlight">
     <item
         android:start="?android:attr/listPreferredItemPaddingStart"
-        android:end="?android:attr/listPreferredItemPaddingEnd"
-        android:top="2dp"
-        android:bottom="16dp">
+        android:end="?android:attr/listPreferredItemPaddingEnd">
         <shape android:shape="rectangle">
             <solid
                 android:color="@color/settingslib_materialColorSurfaceBright" />
@@ -30,8 +28,6 @@
                 android:bottomLeftRadius="@dimen/settingslib_preference_corner_radius"
                 android:topRightRadius="4dp"
                 android:bottomRightRadius="@dimen/settingslib_preference_corner_radius" />
-            <padding
-                android:bottom="16dp"/>
         </shape>
     </item>
-</ripple>
\ No newline at end of file
+</ripple>
diff --git a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_bottom_highlighted.xml b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_bottom_highlighted.xml
index c0c0869..db2800e 100644
--- a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_bottom_highlighted.xml
+++ b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_bottom_highlighted.xml
@@ -19,8 +19,7 @@
     <item
         android:bottom="16dp"
         android:end="?android:attr/listPreferredItemPaddingEnd"
-        android:start="?android:attr/listPreferredItemPaddingStart"
-        android:top="2dp">
+        android:start="?android:attr/listPreferredItemPaddingStart">
         <shape
             android:shape="rectangle"
             android:tint="?android:attr/colorAccent">
@@ -29,8 +28,7 @@
                 android:bottomRightRadius="@dimen/settingslib_preference_corner_radius"
                 android:topLeftRadius="4dp"
                 android:topRightRadius="4dp" />
-            <padding android:bottom="16dp" />
             <solid android:color="#42000000" />
         </shape>
     </item>
-</ripple>
\ No newline at end of file
+</ripple>
diff --git a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_bottom_selected.xml b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_bottom_selected.xml
index 543b237..98f95d92 100644
--- a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_bottom_selected.xml
+++ b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_bottom_selected.xml
@@ -19,9 +19,7 @@
     android:color="?android:colorControlHighlight">
     <item
         android:start="?android:attr/listPreferredItemPaddingStart"
-        android:end="?android:attr/listPreferredItemPaddingEnd"
-        android:top="2dp"
-        android:bottom="16dp">
+        android:end="?android:attr/listPreferredItemPaddingEnd">
         <shape android:shape="rectangle">
             <solid
                 android:color="@color/settingslib_materialColorSurfaceContainer" />
@@ -30,8 +28,6 @@
                 android:bottomLeftRadius="@dimen/settingslib_preference_corner_radius"
                 android:topRightRadius="4dp"
                 android:bottomRightRadius="@dimen/settingslib_preference_corner_radius" />
-            <padding
-                android:bottom="16dp"/>
         </shape>
     </item>
-</ripple>
\ No newline at end of file
+</ripple>
diff --git a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_center.xml b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_center.xml
index b89a0dd..c4286fd 100644
--- a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_center.xml
+++ b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_center.xml
@@ -19,8 +19,7 @@
     android:color="?android:colorControlHighlight">
     <item
         android:start="?android:attr/listPreferredItemPaddingStart"
-        android:end="?android:attr/listPreferredItemPaddingEnd"
-        android:top="2dp">
+        android:end="?android:attr/listPreferredItemPaddingEnd">
         <shape android:shape="rectangle">
             <solid
                 android:color="@color/settingslib_materialColorSurfaceBright" />
@@ -28,4 +27,4 @@
                 android:radius="4dp" />
         </shape>
     </item>
-</ripple>
\ No newline at end of file
+</ripple>
diff --git a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_center_highlighted.xml b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_center_highlighted.xml
index 8099d9b..194cdb0 100644
--- a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_center_highlighted.xml
+++ b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_center_highlighted.xml
@@ -18,8 +18,7 @@
     android:color="?android:colorControlHighlight">
     <item
         android:end="?android:attr/listPreferredItemPaddingEnd"
-        android:start="?android:attr/listPreferredItemPaddingStart"
-        android:top="2dp">
+        android:start="?android:attr/listPreferredItemPaddingStart">
         <shape
             android:shape="rectangle"
             android:tint="?android:attr/colorAccent">
@@ -27,4 +26,4 @@
             <solid android:color="#42000000" />
         </shape>
     </item>
-</ripple>
\ No newline at end of file
+</ripple>
diff --git a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_center_selected.xml b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_center_selected.xml
index 6d2cd1a..8bc2f2f 100644
--- a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_center_selected.xml
+++ b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_center_selected.xml
@@ -19,8 +19,7 @@
     android:color="?android:colorControlHighlight">
     <item
         android:start="?android:attr/listPreferredItemPaddingStart"
-        android:end="?android:attr/listPreferredItemPaddingEnd"
-        android:top="2dp">
+        android:end="?android:attr/listPreferredItemPaddingEnd">
         <shape android:shape="rectangle">
             <solid
                 android:color="@color/settingslib_materialColorSurfaceContainer" />
@@ -28,4 +27,4 @@
                 android:radius="4dp" />
         </shape>
     </item>
-</ripple>
\ No newline at end of file
+</ripple>
diff --git a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_highlighted.xml b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_highlighted.xml
index a119a4a..2341661 100644
--- a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_highlighted.xml
+++ b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_highlighted.xml
@@ -19,14 +19,12 @@
     <item
         android:bottom="16dp"
         android:end="?android:attr/listPreferredItemPaddingEnd"
-        android:start="?android:attr/listPreferredItemPaddingStart"
-        android:top="2dp">
+        android:start="?android:attr/listPreferredItemPaddingStart">
         <shape
             android:shape="rectangle"
             android:tint="?android:attr/colorAccent">
             <corners android:radius="@dimen/settingslib_preference_corner_radius" />
-            <padding android:bottom="16dp" />
             <solid android:color="#42000000" />
         </shape>
     </item>
-</ripple>
\ No newline at end of file
+</ripple>
diff --git a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_selected.xml b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_selected.xml
index bcdbf1d..99704f2d 100644
--- a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_selected.xml
+++ b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_selected.xml
@@ -19,16 +19,12 @@
     android:color="?android:colorControlHighlight">
     <item
         android:start="?android:attr/listPreferredItemPaddingStart"
-        android:end="?android:attr/listPreferredItemPaddingEnd"
-        android:top="2dp"
-        android:bottom="16dp">
+        android:end="?android:attr/listPreferredItemPaddingEnd">
         <shape android:shape="rectangle">
             <solid
                 android:color="@color/settingslib_materialColorSurfaceContainer" />
             <corners
                 android:radius="@dimen/settingslib_preference_corner_radius" />
-            <padding
-                android:bottom="16dp"/>
         </shape>
     </item>
-</ripple>
\ No newline at end of file
+</ripple>
diff --git a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_top.xml b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_top.xml
index 7955e44..3a59386 100644
--- a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_top.xml
+++ b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_top.xml
@@ -19,8 +19,7 @@
     android:color="?android:colorControlHighlight">
     <item
         android:start="?android:attr/listPreferredItemPaddingStart"
-        android:end="?android:attr/listPreferredItemPaddingEnd"
-        android:top="2dp">
+        android:end="?android:attr/listPreferredItemPaddingEnd">
         <shape android:shape="rectangle">
             <solid
                 android:color="@color/settingslib_materialColorSurfaceBright" />
@@ -31,4 +30,4 @@
                 android:bottomRightRadius="4dp" />
         </shape>
     </item>
-</ripple>
\ No newline at end of file
+</ripple>
diff --git a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_top_highlighted.xml b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_top_highlighted.xml
index 052eb01..edace29 100644
--- a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_top_highlighted.xml
+++ b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_top_highlighted.xml
@@ -19,8 +19,7 @@
     <item
         android:color="?android:attr/colorAccent"
         android:end="?android:attr/listPreferredItemPaddingEnd"
-        android:start="?android:attr/listPreferredItemPaddingStart"
-        android:top="2dp">
+        android:start="?android:attr/listPreferredItemPaddingStart">
         <shape
             android:shape="rectangle"
             android:tint="?android:attr/colorAccent">
@@ -32,4 +31,4 @@
             <solid android:color="#42000000" />
         </shape>
     </item>
-</ripple>
\ No newline at end of file
+</ripple>
diff --git a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_top_selected.xml b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_top_selected.xml
index d4b658c..b2d6d9d 100644
--- a/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_top_selected.xml
+++ b/packages/SettingsLib/SettingsTheme/res/drawable-v36/settingslib_round_background_top_selected.xml
@@ -19,8 +19,7 @@
     android:color="?android:colorControlHighlight">
     <item
         android:start="?android:attr/listPreferredItemPaddingStart"
-        android:end="?android:attr/listPreferredItemPaddingEnd"
-        android:top="2dp">
+        android:end="?android:attr/listPreferredItemPaddingEnd">
         <shape android:shape="rectangle">
             <solid
                 android:color="@color/settingslib_materialColorSurfaceContainer" />
@@ -31,4 +30,4 @@
                 android:bottomRightRadius="4dp" />
         </shape>
     </item>
-</ripple>
\ No newline at end of file
+</ripple>
diff --git a/packages/SettingsLib/SettingsTheme/res/values-v31/themes.xml b/packages/SettingsLib/SettingsTheme/res/values-v31/themes.xml
index 3ccbbc0..2d6b6cf 100644
--- a/packages/SettingsLib/SettingsTheme/res/values-v31/themes.xml
+++ b/packages/SettingsLib/SettingsTheme/res/values-v31/themes.xml
@@ -28,6 +28,7 @@
         <item name="switchStyle">@style/SwitchCompat.SettingsLib</item>
         <item name="android:progressBarStyleHorizontal">@style/HorizontalProgressBar.SettingsLib</item>
         <item name="android:listDivider">@drawable/settingslib_list_divider</item>
+        <item name="android:colorBackground">@color/settingslib_materialColorSurfaceContainerLowest</item>
     </style>
 
     <style name="Theme.SettingsBase" parent="Theme.SettingsBase_v31" />
diff --git a/packages/SettingsLib/SettingsTheme/src/com/android/settingslib/widget/SettingsBasePreferenceFragment.kt b/packages/SettingsLib/SettingsTheme/src/com/android/settingslib/widget/SettingsBasePreferenceFragment.kt
index 8d12f01..22cd873 100644
--- a/packages/SettingsLib/SettingsTheme/src/com/android/settingslib/widget/SettingsBasePreferenceFragment.kt
+++ b/packages/SettingsLib/SettingsTheme/src/com/android/settingslib/widget/SettingsBasePreferenceFragment.kt
@@ -16,6 +16,7 @@
 
 package com.android.settingslib.widget
 
+import android.graphics.Rect
 import android.os.Bundle
 import android.view.LayoutInflater;
 import android.view.View
@@ -24,6 +25,7 @@
 import androidx.preference.PreferenceFragmentCompat
 import androidx.preference.PreferenceScreen
 import androidx.recyclerview.widget.RecyclerView
+import com.android.settingslib.widget.theme.R
 
 /** Base class for Settings to use PreferenceFragmentCompat */
 abstract class SettingsBasePreferenceFragment : PreferenceFragmentCompat() {
@@ -43,6 +45,7 @@
         if (SettingsThemeHelper.isExpressiveTheme(requireContext())) {
             // Don't allow any divider in between the preferences in expressive design.
             setDivider(null)
+            this.listView.addItemDecoration(MarginItemDecoration())
         }
     }
 
@@ -51,4 +54,18 @@
             return SettingsPreferenceGroupAdapter(preferenceScreen)
         return super.onCreateAdapter(preferenceScreen)
     }
+
+    internal class MarginItemDecoration() : RecyclerView.ItemDecoration() {
+        override fun getItemOffsets(
+            outRect: Rect,
+            view: View,
+            parent: RecyclerView,
+            state: RecyclerView.State,
+        ) {
+            with(outRect) {
+                bottom =
+                    view.resources.getDimensionPixelSize(R.dimen.settingslib_expressive_radius_extrasmall1)
+            }
+        }
+  }
 }
diff --git a/packages/SettingsLib/SettingsTheme/src/com/android/settingslib/widget/SettingsThemeHelper.kt b/packages/SettingsLib/SettingsTheme/src/com/android/settingslib/widget/SettingsThemeHelper.kt
index 1f4a48d..5bf8f60 100644
--- a/packages/SettingsLib/SettingsTheme/src/com/android/settingslib/widget/SettingsThemeHelper.kt
+++ b/packages/SettingsLib/SettingsTheme/src/com/android/settingslib/widget/SettingsThemeHelper.kt
@@ -52,7 +52,7 @@
     private fun tryInit(context: Context) {
         expressiveThemeState =
             if (
-                (Build.VERSION.SDK_INT >= Build.VERSION_CODES.VANILLA_ICE_CREAM) &&
+                (Build.VERSION.SDK_INT > Build.VERSION_CODES.VANILLA_ICE_CREAM) &&
                         (getPropBoolean(context, IS_EXPRESSIVE_DESIGN_ENABLED, false) ||
                                 Flags.isExpressiveDesignEnabled())
             ) {
diff --git a/packages/SettingsLib/Spa/OWNERS b/packages/SettingsLib/Spa/OWNERS
index 67386d1..d2941de 100644
--- a/packages/SettingsLib/Spa/OWNERS
+++ b/packages/SettingsLib/Spa/OWNERS
@@ -1,9 +1,6 @@
 include platform/frameworks/base:/packages/SettingsLib/OWNERS
 
+zhibinliu@google.com
 chaohuiw@google.com
-hanxu@google.com
-kellyz@google.com
 pierreqian@google.com
-lijun@google.com
-songchenxi@google.com
-cyl@google.com
+lijun@google.com
\ No newline at end of file
diff --git a/packages/SettingsLib/Spa/build.gradle.kts b/packages/SettingsLib/Spa/build.gradle.kts
index 5e72c43..50408190 100644
--- a/packages/SettingsLib/Spa/build.gradle.kts
+++ b/packages/SettingsLib/Spa/build.gradle.kts
@@ -28,7 +28,7 @@
 
 allprojects {
     extra["androidTop"] = androidTop
-    extra["jetpackComposeVersion"] = "1.8.0-alpha08"
+    extra["jetpackComposeVersion"] = "1.8.0-beta02"
 }
 
 subprojects {
diff --git a/packages/SettingsLib/Spa/gradle/libs.versions.toml b/packages/SettingsLib/Spa/gradle/libs.versions.toml
index 4113ad8..b074f4b 100644
--- a/packages/SettingsLib/Spa/gradle/libs.versions.toml
+++ b/packages/SettingsLib/Spa/gradle/libs.versions.toml
@@ -15,7 +15,7 @@
 #
 
 [versions]
-agp = "8.8.0"
+agp = "8.8.1"
 dexmaker-mockito = "2.28.3"
 jvm = "21"
 kotlin = "2.0.21"
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_landscape_actionButtons.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_landscape_actionButtons.png
index b2f3cf1..65418b9 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_landscape_actionButtons.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_landscape_actionButtons.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_landscape_mainSwitchPreference.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_landscape_mainSwitchPreference.png
index 75c8e6e..c9091fb 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_landscape_mainSwitchPreference.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_landscape_mainSwitchPreference.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_landscape_spinner.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_landscape_spinner.png
index 06f0059..cdc1e79 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_landscape_spinner.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_landscape_spinner.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_actionButtons.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_actionButtons.png
index fa06927..614fbe9 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_actionButtons.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_actionButtons.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_imageIllustration.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_imageIllustration.png
index a5f3fa5..ce1257f 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_imageIllustration.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_imageIllustration.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_mainSwitchPreference.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_mainSwitchPreference.png
index b72c8db..6b1233c 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_mainSwitchPreference.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_mainSwitchPreference.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_slider.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_slider.png
index 928e926..782957d 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_slider.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_slider.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_spinner.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_spinner.png
index 06f0059..cdc1e79 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_spinner.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/phone/light_portrait_spinner.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_actionButtons.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_actionButtons.png
index 63983ee..427f202 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_actionButtons.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_actionButtons.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_barChart.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_barChart.png
index 8fcc350..e372f7b 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_barChart.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_barChart.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_footer.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_footer.png
index c2f6165..1ed1efc 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_footer.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_footer.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_imageIllustration.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_imageIllustration.png
index f32d7421..6283dd1 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_imageIllustration.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_imageIllustration.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_lineChart.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_lineChart.png
index 6659d7c..a4eb19e 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_lineChart.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_lineChart.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_mainSwitchPreference.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_mainSwitchPreference.png
index 15c86dc..bd1bb28 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_mainSwitchPreference.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_mainSwitchPreference.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_pieChart.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_pieChart.png
index 7b6e702..d0d5ac1 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_pieChart.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_pieChart.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_preference.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_preference.png
index cd44fb8..5cf7381 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_preference.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_preference.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_progressBar.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_progressBar.png
index d31f2c4..96f614c 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_progressBar.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_progressBar.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_slider.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_slider.png
index 8a2b800..3cbe715 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_slider.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_slider.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_spinner.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_spinner.png
index 5be3a21..f151798 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_spinner.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_spinner.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_switchPreference.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_switchPreference.png
index 9aee004..218e8e3 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_switchPreference.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_switchPreference.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_twoTargetSwitchPreference.png b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_twoTargetSwitchPreference.png
index cc74aac..44b32e2 100644
--- a/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_twoTargetSwitchPreference.png
+++ b/packages/SettingsLib/Spa/screenshot/robotests/assets/tablet/dark_portrait_twoTargetSwitchPreference.png
Binary files differ
diff --git a/packages/SettingsLib/Spa/spa/build.gradle.kts b/packages/SettingsLib/Spa/spa/build.gradle.kts
index de1fa4e..7ce5b71 100644
--- a/packages/SettingsLib/Spa/spa/build.gradle.kts
+++ b/packages/SettingsLib/Spa/spa/build.gradle.kts
@@ -51,16 +51,15 @@
 
 dependencies {
     api(project(":SettingsLibColor"))
-    api(project(":SettingsLib:SettingsTheme"))
     api("androidx.appcompat:appcompat:1.7.0")
-    api("androidx.compose.material3:material3:1.4.0-alpha05")
+    api("androidx.compose.material3:material3:1.4.0-alpha08")
     api("androidx.compose.material:material-icons-extended")
     api("androidx.compose.runtime:runtime-livedata:$jetpackComposeVersion")
     api("androidx.compose.ui:ui-tooling-preview:$jetpackComposeVersion")
     api("androidx.graphics:graphics-shapes-android:1.0.1")
     api("androidx.lifecycle:lifecycle-livedata-ktx")
     api("androidx.lifecycle:lifecycle-runtime-compose")
-    api("androidx.navigation:navigation-compose:2.9.0-alpha04")
+    api("androidx.navigation:navigation-compose:2.9.0-alpha06")
     api("com.github.PhilJay:MPAndroidChart:v3.1.0-alpha")
     api("com.google.android.material:material:1.13.0-alpha08")
     debugApi("androidx.compose.ui:ui-tooling:$jetpackComposeVersion")
diff --git a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/common/SpaEnvironment.kt b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/common/SpaEnvironment.kt
index 11ae9e9..53f97d2 100644
--- a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/common/SpaEnvironment.kt
+++ b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/common/SpaEnvironment.kt
@@ -21,6 +21,7 @@
 import android.util.Log
 import androidx.compose.runtime.Composable
 import androidx.compose.ui.platform.LocalContext
+import com.android.settingslib.spa.framework.util.SystemProperties
 
 private const val TAG = "SpaEnvironment"
 
@@ -50,9 +51,7 @@
         Log.d(TAG, "resetForPreview")
     }
 
-    fun isReady(): Boolean {
-        return spaEnvironment != null
-    }
+    fun isReady(): Boolean = spaEnvironment != null
 
     val instance: SpaEnvironment
         get() {
@@ -60,6 +59,14 @@
                 throw UnsupportedOperationException("Spa environment is not set")
             return spaEnvironment!!
         }
+
+    /**
+     * Optional instance of SpaEnvironment.
+     *
+     * Useful when there is fallback logic.
+     */
+    val optionalInstance: SpaEnvironment?
+        get() = spaEnvironment
 }
 
 abstract class SpaEnvironment(context: Context) {
@@ -81,6 +88,11 @@
     // Specify provider authorities for debugging purpose.
     open val searchProviderAuthorities: String? = null
 
+    /** Specify whether expressive design is enabled. */
+    open val isSpaExpressiveEnabled by lazy {
+        SystemProperties.getBoolean("is_expressive_design_enabled", false)
+    }
+
     // TODO: add other environment setup here.
     companion object {
         /**
diff --git a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/compose/TimeMeasurer.kt b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/compose/TimeMeasurer.kt
index b23f4e0..ef2745c 100644
--- a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/compose/TimeMeasurer.kt
+++ b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/compose/TimeMeasurer.kt
@@ -14,14 +14,11 @@
  * limitations under the License.
  */
 
-@file:OptIn(ExperimentalTime::class)
-
 package com.android.settingslib.spa.framework.compose
 
 import android.util.Log
 import androidx.compose.runtime.Composable
 import androidx.compose.runtime.remember
-import kotlin.time.ExperimentalTime
 import kotlin.time.TimeSource
 
 const val ENABLE_MEASURE_TIME = false
diff --git a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/theme/SettingsTheme.kt b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/theme/SettingsTheme.kt
index badf7ae..6531fba 100644
--- a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/theme/SettingsTheme.kt
+++ b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/theme/SettingsTheme.kt
@@ -21,8 +21,7 @@
 import androidx.compose.material3.MaterialTheme
 import androidx.compose.runtime.Composable
 import androidx.compose.runtime.CompositionLocalProvider
-import com.android.settingslib.spa.framework.util.SystemProperties
-import com.android.settingslib.widget.theme.flags.Flags
+import com.android.settingslib.spa.framework.common.SpaEnvironmentFactory
 
 /**
  * The Material 3 Theme for Settings.
@@ -44,6 +43,5 @@
 }
 
 val isSpaExpressiveEnabled by lazy {
-    SystemProperties.getBoolean("is_expressive_design_enabled", false) ||
-        Flags.isExpressiveDesignEnabled()
+    SpaEnvironmentFactory.optionalInstance?.isSpaExpressiveEnabled ?: false
 }
diff --git a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/util/SystemProperties.kt b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/util/SystemProperties.kt
index ed4936b..3b4a675 100644
--- a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/util/SystemProperties.kt
+++ b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/util/SystemProperties.kt
@@ -20,7 +20,7 @@
 import android.util.Log
 
 @SuppressLint("PrivateApi")
-object SystemProperties {
+internal object SystemProperties {
     private const val TAG = "SystemProperties"
 
     fun getBoolean(key: String, default: Boolean): Boolean = try {
diff --git a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/BaseLayout.kt b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/BaseLayout.kt
index b1bb79d..068ff06 100644
--- a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/BaseLayout.kt
+++ b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/BaseLayout.kt
@@ -87,15 +87,28 @@
 
 @Composable
 internal fun BaseIcon(icon: @Composable (() -> Unit)?, modifier: Modifier, paddingStart: Dp) {
-    if (icon != null) {
-        Box(
-            modifier = modifier.size(SettingsDimension.itemIconContainerSize),
-            contentAlignment = Alignment.Center,
-        ) {
-            icon()
+    if (isSpaExpressiveEnabled) {
+        Spacer(modifier = Modifier.width(width = paddingStart))
+        if (icon != null) {
+            Box(
+                modifier = modifier.size(SettingsDimension.itemIconContainerSizeSmall),
+                contentAlignment = Alignment.Center,
+            ) {
+                icon()
+            }
+            Spacer(modifier = Modifier.width(width = SettingsDimension.paddingExtraSmall6))
         }
     } else {
-        Spacer(modifier = Modifier.width(width = paddingStart))
+        if (icon != null) {
+            Box(
+                modifier = modifier.size(SettingsDimension.itemIconContainerSize),
+                contentAlignment = Alignment.Center,
+            ) {
+                icon()
+            }
+        } else {
+            Spacer(modifier = Modifier.width(width = paddingStart))
+        }
     }
 }
 
diff --git a/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/widget/button/ActionButtonsTest.kt b/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/widget/button/ActionButtonsTest.kt
index bab02b0..8d9bac6 100644
--- a/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/widget/button/ActionButtonsTest.kt
+++ b/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/widget/button/ActionButtonsTest.kt
@@ -16,8 +16,6 @@
 
 package com.android.settingslib.spa.widget.button
 
-import android.platform.test.annotations.RequiresFlagsDisabled
-import android.platform.test.flag.junit.DeviceFlagsValueProvider
 import androidx.compose.material.icons.Icons
 import androidx.compose.material.icons.automirrored.outlined.Launch
 import androidx.compose.material.icons.outlined.Close
@@ -30,7 +28,6 @@
 import androidx.compose.ui.test.onNodeWithText
 import androidx.compose.ui.test.performClick
 import androidx.test.ext.junit.runners.AndroidJUnit4
-import com.android.settingslib.widget.theme.flags.Flags.FLAG_IS_EXPRESSIVE_DESIGN_ENABLED
 import com.google.common.truth.Truth.assertThat
 import org.junit.Rule
 import org.junit.Test
@@ -40,8 +37,6 @@
 class ActionButtonsTest {
     @get:Rule
     val composeTestRule = createComposeRule()
-    @get:Rule
-    val mCheckFlagsRule = DeviceFlagsValueProvider.createCheckFlagsRule()
 
     @Test
     fun button_displayed() {
@@ -59,7 +54,6 @@
         composeTestRule.onNodeWithText("Open").assertIsDisplayed()
     }
 
-    @RequiresFlagsDisabled(FLAG_IS_EXPRESSIVE_DESIGN_ENABLED)
     @Test
     fun button_clickable() {
         var clicked by mutableStateOf(false)
diff --git a/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/widget/scaffold/CustomizedAppBarTest.kt b/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/widget/scaffold/CustomizedAppBarTest.kt
index 89206ba..0a4f0d9 100644
--- a/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/widget/scaffold/CustomizedAppBarTest.kt
+++ b/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/widget/scaffold/CustomizedAppBarTest.kt
@@ -16,8 +16,6 @@
 
 package com.android.settingslib.spa.widget.scaffold
 
-import android.platform.test.annotations.RequiresFlagsDisabled
-import android.platform.test.flag.junit.DeviceFlagsValueProvider
 import androidx.compose.foundation.layout.Box
 import androidx.compose.foundation.layout.fillMaxSize
 import androidx.compose.foundation.lazy.LazyColumn
@@ -54,7 +52,6 @@
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import com.android.settingslib.spa.testutils.rootWidth
 import com.android.settingslib.spa.testutils.setContentForSizeAssertions
-import com.android.settingslib.widget.theme.flags.Flags.FLAG_IS_EXPRESSIVE_DESIGN_ENABLED
 import com.google.common.truth.Truth.assertThat
 import org.junit.Rule
 import org.junit.Test
@@ -65,8 +62,6 @@
 class CustomizedAppBarTest {
 
     @get:Rule val rule = createComposeRule()
-    @get:Rule
-    val mCheckFlagsRule = DeviceFlagsValueProvider.createCheckFlagsRule()
 
     @Test
     fun smallTopAppBar_expandsToScreen() {
@@ -102,7 +97,6 @@
         assertThat(textStyle).isEqualTo(expectedTextStyle)
     }
 
-    @RequiresFlagsDisabled(FLAG_IS_EXPRESSIVE_DESIGN_ENABLED)
     @Test
     fun smallTopAppBar_contentColor() {
         var titleColor: Color = Color.Unspecified
diff --git a/packages/SettingsLib/res/layout-v33/preference_checkable_two_target.xml b/packages/SettingsLib/res/layout-v33/preference_checkable_two_target.xml
index 7ad018c..60d03e3 100644
--- a/packages/SettingsLib/res/layout-v33/preference_checkable_two_target.xml
+++ b/packages/SettingsLib/res/layout-v33/preference_checkable_two_target.xml
@@ -47,7 +47,7 @@
             android:clipToPadding="false"
             android:paddingTop="4dp"
             android:paddingBottom="4dp">
-            <include layout="@layout/preference_widget_checkbox" />
+            <include layout="@layout/settingslib_preference_widget_checkbox" />
         </LinearLayout>
 
         <RelativeLayout
diff --git a/packages/SettingsLib/res/layout/preference_checkable_two_target.xml b/packages/SettingsLib/res/layout/preference_checkable_two_target.xml
index f512f9b..ab7b04b 100644
--- a/packages/SettingsLib/res/layout/preference_checkable_two_target.xml
+++ b/packages/SettingsLib/res/layout/preference_checkable_two_target.xml
@@ -47,7 +47,7 @@
             android:clipToPadding="false"
             android:paddingTop="4dp"
             android:paddingBottom="4dp">
-            <include layout="@layout/preference_widget_checkbox" />
+            <include layout="@layout/settingslib_preference_widget_checkbox" />
         </LinearLayout>
 
         <RelativeLayout
diff --git a/packages/SettingsLib/res/values-ar/strings.xml b/packages/SettingsLib/res/values-ar/strings.xml
index e2487d7..5fbab96 100644
--- a/packages/SettingsLib/res/values-ar/strings.xml
+++ b/packages/SettingsLib/res/values-ar/strings.xml
@@ -386,8 +386,7 @@
     <string name="debug_hw_drawing_category" msgid="5830815169336975162">"عرض تسارع الأجهزة"</string>
     <string name="media_category" msgid="8122076702526144053">"الوسائط"</string>
     <string name="debug_monitoring_category" msgid="1597387133765424994">"المراقبة"</string>
-    <!-- no translation found for window_management_category (2015535427098365170) -->
-    <skip />
+    <string name="window_management_category" msgid="2015535427098365170">"إدارة النوافذ"</string>
     <string name="strict_mode" msgid="889864762140862437">"تفعيل الوضع المتشدد"</string>
     <string name="strict_mode_summary" msgid="1838248687233554654">"وميض الشاشة عند إجراء التطبيقات عمليات طويلة في سلسلة المحادثات الرئيسية"</string>
     <string name="pointer_location" msgid="7516929526199520173">"موقع المؤشر"</string>
diff --git a/packages/SettingsLib/res/values-da/strings.xml b/packages/SettingsLib/res/values-da/strings.xml
index 986c40f..ef14483 100644
--- a/packages/SettingsLib/res/values-da/strings.xml
+++ b/packages/SettingsLib/res/values-da/strings.xml
@@ -81,7 +81,7 @@
     <string name="speed_label_fast" msgid="2677719134596044051">"Hurtig"</string>
     <string name="speed_label_very_fast" msgid="8215718029533182439">"Meget hurtig"</string>
     <string name="wifi_passpoint_expired" msgid="6540867261754427561">"Udløbet"</string>
-    <string name="preference_summary_default_combination" msgid="2644094566845577901">"<xliff:g id="STATE">%1$s</xliff:g> – <xliff:g id="DESCRIPTION">%2$s</xliff:g>"</string>
+    <string name="preference_summary_default_combination" msgid="2644094566845577901">"<xliff:g id="STATE">%1$s</xliff:g> / <xliff:g id="DESCRIPTION">%2$s</xliff:g>"</string>
     <string name="bluetooth_disconnected" msgid="7739366554710388701">"Afbrudt"</string>
     <string name="bluetooth_disconnecting" msgid="7638892134401574338">"Afbryder ..."</string>
     <string name="bluetooth_connecting" msgid="5871702668260192755">"Opretter forbindelse..."</string>
diff --git a/packages/SettingsLib/res/values-iw/strings.xml b/packages/SettingsLib/res/values-iw/strings.xml
index d4c0773..c39521f 100644
--- a/packages/SettingsLib/res/values-iw/strings.xml
+++ b/packages/SettingsLib/res/values-iw/strings.xml
@@ -386,8 +386,7 @@
     <string name="debug_hw_drawing_category" msgid="5830815169336975162">"עיבוד מואץ של חומרה"</string>
     <string name="media_category" msgid="8122076702526144053">"מדיה"</string>
     <string name="debug_monitoring_category" msgid="1597387133765424994">"מעקב"</string>
-    <!-- no translation found for window_management_category (2015535427098365170) -->
-    <skip />
+    <string name="window_management_category" msgid="2015535427098365170">"ניהול החלונות"</string>
     <string name="strict_mode" msgid="889864762140862437">"מצב קפדני מופעל"</string>
     <string name="strict_mode_summary" msgid="1838248687233554654">"‏המסך יהבהב כשאפליקציות יבצעו פעולות ארוכות ב-thread הראשי"</string>
     <string name="pointer_location" msgid="7516929526199520173">"מיקום מצביע"</string>
diff --git a/packages/SettingsLib/res/values-pl/strings.xml b/packages/SettingsLib/res/values-pl/strings.xml
index 79be6b3..aed9b06 100644
--- a/packages/SettingsLib/res/values-pl/strings.xml
+++ b/packages/SettingsLib/res/values-pl/strings.xml
@@ -113,17 +113,17 @@
     <string name="bluetooth_hearing_device_ambient_error" msgid="6035857289108813878">"Nie udało się zaktualizować otoczenia"</string>
     <string name="bluetooth_active_media_only_battery_level" msgid="7772517511061834073">"Aktywne (tylko multimedia). <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> naładowania baterii."</string>
     <string name="bluetooth_active_media_only_battery_level_untethered" msgid="7444753133664620926">"Aktywne (tylko multimedia), lewa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, prawa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> naładowania baterii."</string>
-    <string name="bluetooth_guest_battery_level" msgid="2820003593899467676">"Urządzenie gościa. <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> naładowania baterii."</string>
-    <string name="bluetooth_guest_battery_level_untethered" msgid="5404013822067644960">"Urządzenie gościa. Lewa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, prawa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> naładowania baterii."</string>
-    <string name="bluetooth_guest_media_only_battery_level" msgid="7928347900623812299">"Urządzenie gościa (tylko multimedia). <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> naładowania baterii."</string>
-    <string name="bluetooth_guest_media_only_battery_level_untethered" msgid="4458143141394300892">"Urządzenie gościa (tylko multimedia). Lewa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, prawa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> naładowania baterii."</string>
+    <string name="bluetooth_guest_battery_level" msgid="2820003593899467676">"Urządzenie gościa. <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> baterii."</string>
+    <string name="bluetooth_guest_battery_level_untethered" msgid="5404013822067644960">"Urządzenie gościa. Lewa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, prawa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> baterii."</string>
+    <string name="bluetooth_guest_media_only_battery_level" msgid="7928347900623812299">"Urządzenie gościa (tylko multimedia). <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> baterii."</string>
+    <string name="bluetooth_guest_media_only_battery_level_untethered" msgid="4458143141394300892">"Urządzenie gościa (tylko multimedia). Lewa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, prawa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> baterii."</string>
     <string name="bluetooth_battery_level_lea_support" msgid="5968584103507988820">"Połączone (obsługa udostępniania dźwięku), <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> naładowania baterii."</string>
     <string name="bluetooth_battery_level_untethered_lea_support" msgid="803110681688633362">"Połączone (obsługa udostępniania dźwięku), lewa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, prawa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> naładowania baterii."</string>
     <string name="bluetooth_battery_level_untethered_left_lea_support" msgid="7707464334346454950">"Połączone (obsługa udostępniania dźwięku). Lewa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> naładowania baterii."</string>
     <string name="bluetooth_battery_level_untethered_right_lea_support" msgid="8941549024377771038">"Połączone (obsługa udostępniania dźwięku). Prawa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> naładowania baterii."</string>
     <string name="bluetooth_no_battery_level_lea_support" msgid="5721725041048434075">"Połączone (obsługa udostępniania dźwięku)"</string>
-    <string name="bluetooth_guest_battery_level_lea_support" msgid="8098327939585013928">"Urządzenie gościa (obsługuje udostępnianie dźwięku). <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> naładowania baterii."</string>
-    <string name="bluetooth_guest_battery_level_untethered_lea_support" msgid="3701035025565668360">"Urządzenie gościa (obsługuje udostępnianie dźwięku). Lewa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, prawa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> naładowania baterii."</string>
+    <string name="bluetooth_guest_battery_level_lea_support" msgid="8098327939585013928">"Urządzenie gościa (obsługuje udostępnianie dźwięku). <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE">%1$s</xliff:g> baterii."</string>
+    <string name="bluetooth_guest_battery_level_untethered_lea_support" msgid="3701035025565668360">"Urządzenie gościa (obsługuje udostępnianie dźwięku). Lewa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_0">%1$s</xliff:g>, prawa: <xliff:g id="BATTERY_LEVEL_AS_PERCENTAGE_1">%2$s</xliff:g> baterii."</string>
     <string name="bluetooth_guest_no_battery_level_lea_support" msgid="2977038548753103470">"Urządzenie gościa (obsługuje udostępnianie dźwięku)"</string>
     <string name="bluetooth_active_media_only_no_battery_level" msgid="71106861912593126">"Aktywne (tylko multimedia)"</string>
     <string name="bluetooth_guest_no_battery_level" msgid="9122974160381136920">"Urządzenie gościa"</string>
diff --git a/packages/SettingsLib/src/com/android/settingslib/bluetooth/BluetoothEventManager.java b/packages/SettingsLib/src/com/android/settingslib/bluetooth/BluetoothEventManager.java
index ebd5a1d..3625c00 100644
--- a/packages/SettingsLib/src/com/android/settingslib/bluetooth/BluetoothEventManager.java
+++ b/packages/SettingsLib/src/com/android/settingslib/bluetooth/BluetoothEventManager.java
@@ -29,6 +29,7 @@
 import android.content.Intent;
 import android.content.IntentFilter;
 import android.os.UserHandle;
+import android.os.UserManager;
 import android.telephony.TelephonyManager;
 import android.util.Log;
 
@@ -37,6 +38,8 @@
 import androidx.annotation.VisibleForTesting;
 
 import com.android.settingslib.R;
+import com.android.settingslib.flags.Flags;
+import com.android.settingslib.utils.ThreadUtils;
 
 import java.util.Collection;
 import java.util.HashMap;
@@ -65,6 +68,7 @@
     private final android.os.Handler mReceiverHandler;
     private final UserHandle mUserHandle;
     private final Context mContext;
+    private boolean mIsWorkProfile = false;
 
     interface Handler {
         void onReceive(Context context, Intent intent, BluetoothDevice device);
@@ -140,6 +144,9 @@
         addHandler(BluetoothAdapter.ACTION_AUTO_ON_STATE_CHANGED, new AutoOnStateChangedHandler());
 
         registerAdapterIntentReceiver();
+
+        UserManager userManager = context.getSystemService(UserManager.class);
+        mIsWorkProfile = userManager != null && userManager.isManagedProfile();
     }
 
     /** Register to start receiving callbacks for Bluetooth events. */
@@ -220,20 +227,32 @@
             callback.onProfileConnectionStateChanged(device, state, bluetoothProfile);
         }
 
+        if (mIsWorkProfile) {
+            Log.d(TAG, "Skip profileConnectionStateChanged for audio sharing, work profile");
+            return;
+        }
+
+        LocalBluetoothLeBroadcast broadcast = mBtManager == null ? null
+                : mBtManager.getProfileManager().getLeAudioBroadcastProfile();
+        LocalBluetoothLeBroadcastAssistant assistant = mBtManager == null ? null
+                : mBtManager.getProfileManager().getLeAudioBroadcastAssistantProfile();
         // Trigger updateFallbackActiveDeviceIfNeeded when ASSISTANT profile disconnected when
         // audio sharing is enabled.
         if (bluetoothProfile == BluetoothProfile.LE_AUDIO_BROADCAST_ASSISTANT
                 && state == BluetoothAdapter.STATE_DISCONNECTED
-                && BluetoothUtils.isAudioSharingUIAvailable(mContext)) {
-            LocalBluetoothProfileManager profileManager = mBtManager.getProfileManager();
-            if (profileManager != null
-                    && profileManager.getLeAudioBroadcastProfile() != null
-                    && profileManager.getLeAudioBroadcastProfile().isProfileReady()
-                    && profileManager.getLeAudioBroadcastAssistantProfile() != null
-                    && profileManager.getLeAudioBroadcastAssistantProfile().isProfileReady()) {
-                Log.d(TAG, "updateFallbackActiveDeviceIfNeeded, ASSISTANT profile disconnected");
-                profileManager.getLeAudioBroadcastProfile().updateFallbackActiveDeviceIfNeeded();
-            }
+                && BluetoothUtils.isAudioSharingUIAvailable(mContext)
+                && broadcast != null && assistant != null && broadcast.isProfileReady()
+                && assistant.isProfileReady()) {
+            Log.d(TAG, "updateFallbackActiveDeviceIfNeeded, ASSISTANT profile disconnected");
+            broadcast.updateFallbackActiveDeviceIfNeeded();
+        }
+        // Dispatch handleOnProfileStateChanged to local broadcast profile
+        if (Flags.promoteAudioSharingForSecondAutoConnectedLeaDevice()
+                && broadcast != null
+                && state == BluetoothAdapter.STATE_CONNECTED) {
+            Log.d(TAG, "dispatchProfileConnectionStateChanged to local broadcast profile");
+            var unused = ThreadUtils.postOnBackgroundThread(
+                    () -> broadcast.handleProfileConnected(device, bluetoothProfile, mBtManager));
         }
     }
 
diff --git a/packages/SettingsLib/src/com/android/settingslib/bluetooth/BluetoothUtils.java b/packages/SettingsLib/src/com/android/settingslib/bluetooth/BluetoothUtils.java
index 31948e4..e78a692 100644
--- a/packages/SettingsLib/src/com/android/settingslib/bluetooth/BluetoothUtils.java
+++ b/packages/SettingsLib/src/com/android/settingslib/bluetooth/BluetoothUtils.java
@@ -719,6 +719,30 @@
         }
     }
 
+    /** Check if the {@link CachedBluetoothDevice} is a media device */
+    @WorkerThread
+    public static boolean isMediaDevice(@Nullable CachedBluetoothDevice cachedDevice) {
+        if (cachedDevice == null) return false;
+        return cachedDevice.getProfiles().stream()
+                .anyMatch(
+                        profile ->
+                                profile instanceof A2dpProfile
+                                        || profile instanceof HearingAidProfile
+                                        || profile instanceof LeAudioProfile
+                                        || profile instanceof HeadsetProfile);
+    }
+
+    /** Check if the {@link CachedBluetoothDevice} supports LE Audio profile */
+    @WorkerThread
+    public static boolean isLeAudioSupported(@Nullable CachedBluetoothDevice cachedDevice) {
+        if (cachedDevice == null) return false;
+        return cachedDevice.getProfiles().stream()
+                .anyMatch(
+                        profile ->
+                                profile instanceof LeAudioProfile
+                                        && profile.isEnabled(cachedDevice.getDevice()));
+    }
+
     /** Returns if the broadcast is on-going. */
     @WorkerThread
     public static boolean isBroadcasting(@Nullable LocalBluetoothManager manager) {
diff --git a/packages/SettingsLib/src/com/android/settingslib/bluetooth/LocalBluetoothLeBroadcast.java b/packages/SettingsLib/src/com/android/settingslib/bluetooth/LocalBluetoothLeBroadcast.java
index f18a2da..08f7806 100644
--- a/packages/SettingsLib/src/com/android/settingslib/bluetooth/LocalBluetoothLeBroadcast.java
+++ b/packages/SettingsLib/src/com/android/settingslib/bluetooth/LocalBluetoothLeBroadcast.java
@@ -54,6 +54,7 @@
 import androidx.annotation.NonNull;
 import androidx.annotation.Nullable;
 import androidx.annotation.RequiresApi;
+import androidx.annotation.WorkerThread;
 
 import com.android.settingslib.R;
 import com.android.settingslib.flags.Flags;
@@ -64,6 +65,7 @@
 import java.lang.annotation.RetentionPolicy;
 import java.nio.charset.StandardCharsets;
 import java.security.SecureRandom;
+import java.sql.Timestamp;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
@@ -107,6 +109,7 @@
     private static final String SETTINGS_PKG = "com.android.settings";
     private static final String SYSUI_PKG = "com.android.systemui";
     private static final String TAG = "LocalBluetoothLeBroadcast";
+    private static final String AUTO_REJOIN_BROADCAST_TAG = "REJOIN_LE_BROADCAST_ID";
     private static final boolean DEBUG = BluetoothUtils.D;
     private static final String VALID_PASSWORD_CHARACTERS =
             "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()-_=+[]{}|;:,"
@@ -120,6 +123,7 @@
     // Order of this profile in device profiles list
     private static final int ORDINAL = 1;
     static final int UNKNOWN_VALUE_PLACEHOLDER = -1;
+    private static final int JUST_BOND_MILLIS_THRESHOLD = 30000; // 30s
     private static final Uri[] SETTINGS_URIS =
             new Uri[] {
                 Settings.Secure.getUriFor(Settings.Secure.BLUETOOTH_LE_BROADCAST_NAME),
@@ -1283,4 +1287,87 @@
         UserManager userManager = context.getSystemService(UserManager.class);
         return userManager != null && userManager.isManagedProfile();
     }
+
+    /** Handle profile connected for {@link CachedBluetoothDevice}. */
+    @WorkerThread
+    public void handleProfileConnected(@NonNull CachedBluetoothDevice cachedDevice,
+            int bluetoothProfile, @Nullable LocalBluetoothManager btManager) {
+        if (!Flags.promoteAudioSharingForSecondAutoConnectedLeaDevice()) {
+            Log.d(TAG, "Skip handleProfileConnected, flag off");
+            return;
+        }
+        if (!SYSUI_PKG.equals(mContext.getPackageName())) {
+            Log.d(TAG, "Skip handleProfileConnected, not a valid caller");
+            return;
+        }
+        if (!BluetoothUtils.isMediaDevice(cachedDevice)) {
+            Log.d(TAG, "Skip handleProfileConnected, not a media device");
+            return;
+        }
+        Timestamp bondTimestamp = cachedDevice.getBondTimestamp();
+        if (bondTimestamp != null) {
+            long diff = System.currentTimeMillis() - bondTimestamp.getTime();
+            if (diff <= JUST_BOND_MILLIS_THRESHOLD) {
+                Log.d(TAG, "Skip handleProfileConnected, just bond within " + diff);
+                return;
+            }
+        }
+        if (!isEnabled(null)) {
+            Log.d(TAG, "Skip handleProfileConnected, not broadcasting");
+            return;
+        }
+        BluetoothDevice device = cachedDevice.getDevice();
+        if (device == null) {
+            Log.d(TAG, "Skip handleProfileConnected, null device");
+            return;
+        }
+        // TODO: sync source in a reasonable place
+        if (BluetoothUtils.hasConnectedBroadcastSourceForBtDevice(device, btManager)) {
+            Log.d(TAG, "Skip handleProfileConnected, already has source");
+            return;
+        }
+        if (isAutoRejoinDevice(device)) {
+            Log.d(TAG, "Skip handleProfileConnected, auto rejoin device");
+            return;
+        }
+        boolean isLeAudioSupported = BluetoothUtils.isLeAudioSupported(cachedDevice);
+        // For eligible (LE audio) remote device, we only check assistant profile connected.
+        if (isLeAudioSupported
+                && bluetoothProfile != BluetoothProfile.LE_AUDIO_BROADCAST_ASSISTANT) {
+            Log.d(TAG, "Skip handleProfileConnected, lea sink, not the assistant profile");
+            return;
+        }
+        boolean isFirstConnectedProfile = isFirstConnectedProfile(cachedDevice, bluetoothProfile);
+        // For ineligible (classic) remote device, we only check its first connected profile.
+        if (!isLeAudioSupported && !isFirstConnectedProfile) {
+            Log.d(TAG, "Skip handleProfileConnected, classic sink, not the first profile");
+            return;
+        }
+
+        Intent intent = new Intent(
+                LocalBluetoothLeBroadcast.ACTION_LE_AUDIO_SHARING_DEVICE_CONNECTED);
+        intent.putExtra(LocalBluetoothLeBroadcast.EXTRA_BLUETOOTH_DEVICE, device);
+        intent.setPackage(SETTINGS_PKG);
+        Log.d(TAG, "notify device connected, device = " + device.getAnonymizedAddress());
+
+        mContext.sendBroadcast(intent);
+    }
+
+    private boolean isAutoRejoinDevice(@Nullable BluetoothDevice bluetoothDevice) {
+        String metadataValue = BluetoothUtils.getFastPairCustomizedField(bluetoothDevice,
+                AUTO_REJOIN_BROADCAST_TAG);
+        return getLatestBroadcastId() != UNKNOWN_VALUE_PLACEHOLDER && Objects.equals(metadataValue,
+                String.valueOf(getLatestBroadcastId()));
+    }
+
+    private boolean isFirstConnectedProfile(@Nullable CachedBluetoothDevice cachedDevice,
+            int bluetoothProfile) {
+        if (cachedDevice == null) return false;
+        return cachedDevice.getProfiles().stream()
+                .noneMatch(
+                        profile ->
+                                profile.getProfileId() != bluetoothProfile
+                                        && profile.getConnectionStatus(cachedDevice.getDevice())
+                                        == BluetoothProfile.STATE_CONNECTED);
+    }
 }
diff --git a/packages/SettingsLib/src/com/android/settingslib/qrcode/QrCamera.java b/packages/SettingsLib/src/com/android/settingslib/qrcode/QrCamera.java
index ae17acb..8bb41cc 100644
--- a/packages/SettingsLib/src/com/android/settingslib/qrcode/QrCamera.java
+++ b/packages/SettingsLib/src/com/android/settingslib/qrcode/QrCamera.java
@@ -16,8 +16,8 @@
 
 package com.android.settingslib.qrcode;
 
+import android.annotation.NonNull;
 import android.content.Context;
-import android.content.res.Configuration;
 import android.graphics.Matrix;
 import android.graphics.Rect;
 import android.graphics.SurfaceTexture;
@@ -75,12 +75,29 @@
 
     @VisibleForTesting
     Camera mCamera;
+    Camera.CameraInfo mCameraInfo;
+
+    /**
+     * The size of the preview image as requested to camera, e.g. 1920x1080.
+     */
     private Size mPreviewSize;
+
+    /**
+     * Whether the preview image would be displayed in "portrait" (width less
+     * than height) orientation in current display orientation.
+     *
+     * Note that we don't distinguish between a rotation of 90 degrees or 270
+     * degrees here, since we center crop all the preview.
+     *
+     * TODO: Handle external camera / multiple display, this likely requires
+     * migrating to newer Camera2 API.
+     */
+    private boolean mPreviewInPortrait;
+
     private WeakReference<Context> mContext;
     private ScannerCallback mScannerCallback;
     private MultiFormatReader mReader;
     private DecodingTask mDecodeTask;
-    private int mCameraOrientation;
     @VisibleForTesting
     Camera.Parameters mParameters;
 
@@ -152,8 +169,14 @@
          * @param previewSize       Is the preview size set by camera
          * @param cameraOrientation Is the orientation of current Camera
          * @return The rectangle would like to crop from the camera preview shot.
+         * @deprecated This is no longer used, and the frame position is
+         *     automatically calculated from the preview size and the
+         *     background View size.
          */
-        Rect getFramePosition(Size previewSize, int cameraOrientation);
+        @Deprecated
+        default @NonNull Rect getFramePosition(@NonNull Size previewSize, int cameraOrientation) {
+            throw new AssertionError("getFramePosition shouldn't be used");
+        }
 
         /**
          * Sets the transform to associate with preview area.
@@ -172,6 +195,41 @@
         boolean isValid(String qrCode);
     }
 
+    private boolean setPreviewDisplayOrientation() {
+        if (mContext.get() == null) {
+            return false;
+        }
+
+        final WindowManager winManager =
+                (WindowManager) mContext.get().getSystemService(Context.WINDOW_SERVICE);
+        final int rotation = winManager.getDefaultDisplay().getRotation();
+        int degrees = 0;
+        switch (rotation) {
+            case Surface.ROTATION_0:
+                degrees = 0;
+                break;
+            case Surface.ROTATION_90:
+                degrees = 90;
+                break;
+            case Surface.ROTATION_180:
+                degrees = 180;
+                break;
+            case Surface.ROTATION_270:
+                degrees = 270;
+                break;
+        }
+        int rotateDegrees = 0;
+        if (mCameraInfo.facing == Camera.CameraInfo.CAMERA_FACING_FRONT) {
+            rotateDegrees = (mCameraInfo.orientation + degrees) % 360;
+            rotateDegrees = (360 - rotateDegrees) % 360;  // compensate the mirror
+        } else {
+            rotateDegrees = (mCameraInfo.orientation - degrees + 360) % 360;
+        }
+        mCamera.setDisplayOrientation(rotateDegrees);
+        mPreviewInPortrait = (rotateDegrees == 90 || rotateDegrees == 270);
+        return true;
+    }
+
     @VisibleForTesting
     void setCameraParameter() {
         mParameters = mCamera.getParameters();
@@ -195,37 +253,39 @@
         mCamera.setParameters(mParameters);
     }
 
-    private boolean startPreview() {
-        if (mContext.get() == null) {
-            return false;
-        }
+    /**
+     * Set transform matrix to crop and center the preview picture.
+     */
+    private void setTransformationMatrix() {
+        final Size previewDisplaySize = rotateIfPortrait(mPreviewSize);
+        final Size viewSize = mScannerCallback.getViewSize();
+        final Rect cropRegion = calculateCenteredCrop(previewDisplaySize, viewSize);
 
-        final WindowManager winManager =
-                (WindowManager) mContext.get().getSystemService(Context.WINDOW_SERVICE);
-        final int rotation = winManager.getDefaultDisplay().getRotation();
-        int degrees = 0;
-        switch (rotation) {
-            case Surface.ROTATION_0:
-                degrees = 0;
-                break;
-            case Surface.ROTATION_90:
-                degrees = 90;
-                break;
-            case Surface.ROTATION_180:
-                degrees = 180;
-                break;
-            case Surface.ROTATION_270:
-                degrees = 270;
-                break;
-        }
-        final int rotateDegrees = (mCameraOrientation - degrees + 360) % 360;
-        mCamera.setDisplayOrientation(rotateDegrees);
+        // Note that strictly speaking, since the preview is mirrored in front
+        // camera case, we should also mirror the crop region here. But since
+        // we're cropping at the center, mirroring would result in the same
+        // crop region other than small off-by-one error from floating point
+        // calculation and wouldn't be noticeable.
+
+        // Calculate transformation matrix.
+        float scaleX = previewDisplaySize.getWidth() / (float) cropRegion.width();
+        float scaleY = previewDisplaySize.getHeight() / (float) cropRegion.height();
+        float translateX = -cropRegion.left / (float) cropRegion.width() * viewSize.getWidth();
+        float translateY = -cropRegion.top / (float) cropRegion.height() * viewSize.getHeight();
+
+        // Set the transform matrix.
+        final Matrix matrix = new Matrix();
+        matrix.setScale(scaleX, scaleY);
+        matrix.postTranslate(translateX, translateY);
+        mScannerCallback.setTransform(matrix);
+    }
+
+    private void startPreview() {
         mCamera.startPreview();
         if (Camera.Parameters.FOCUS_MODE_AUTO.equals(mParameters.getFocusMode())) {
             mCamera.autoFocus(/* Camera.AutoFocusCallback */ null);
             sendMessageDelayed(obtainMessage(MSG_AUTO_FOCUS), AUTOFOCUS_INTERVAL_MS);
         }
-        return true;
     }
 
     private class DecodingTask extends AsyncTask<Void, Void, String> {
@@ -300,7 +360,7 @@
                     if (cameraInfo.facing == Camera.CameraInfo.CAMERA_FACING_BACK) {
                         releaseCamera();
                         mCamera = Camera.open(i);
-                        mCameraOrientation = cameraInfo.orientation;
+                        mCameraInfo = cameraInfo;
                         break;
                     }
                 }
@@ -309,7 +369,7 @@
                     Camera.getCameraInfo(0, cameraInfo);
                     releaseCamera();
                     mCamera = Camera.open(0);
-                    mCameraOrientation = cameraInfo.orientation;
+                    mCameraInfo = cameraInfo;
                 }
             } catch (RuntimeException e) {
                 Log.e(TAG, "Fail to open camera: " + e);
@@ -323,11 +383,12 @@
                     throw new IOException("Cannot find available camera");
                 }
                 mCamera.setPreviewTexture(surface);
+                if (!setPreviewDisplayOrientation()) {
+                    throw new IOException("Lost context");
+                }
                 setCameraParameter();
                 setTransformationMatrix();
-                if (!startPreview()) {
-                    throw new IOException("Lost contex");
-                }
+                startPreview();
             } catch (IOException ioe) {
                 Log.e(TAG, "Fail to startPreview camera: " + ioe);
                 mCamera = null;
@@ -345,32 +406,30 @@
         }
     }
 
-    /** Set transform matrix to crop and center the preview picture */
-    private void setTransformationMatrix() {
-        final boolean isPortrait = mContext.get().getResources().getConfiguration().orientation
-                == Configuration.ORIENTATION_PORTRAIT;
-
-        final int previewWidth = isPortrait ? mPreviewSize.getWidth() : mPreviewSize.getHeight();
-        final int previewHeight = isPortrait ? mPreviewSize.getHeight() : mPreviewSize.getWidth();
-        final float ratioPreview = (float) getRatio(previewWidth, previewHeight);
-
-        // Calculate transformation matrix.
-        float scaleX = 1.0f;
-        float scaleY = 1.0f;
-        if (previewWidth > previewHeight) {
-            scaleY = scaleX / ratioPreview;
+    /**
+     * Calculates the crop region in `previewSize` to have the same aspect
+     * ratio as `viewSize` and center aligned.
+     */
+    private Rect calculateCenteredCrop(Size previewSize, Size viewSize) {
+        final double previewRatio = getRatio(previewSize);
+        final double viewRatio = getRatio(viewSize);
+        int width;
+        int height;
+        if (previewRatio > viewRatio) {
+            width = previewSize.getWidth();
+            height = (int) Math.round(width * viewRatio);
         } else {
-            scaleX = scaleY / ratioPreview;
+            height = previewSize.getHeight();
+            width = (int) Math.round(height / viewRatio);
         }
-
-        // Set the transform matrix.
-        final Matrix matrix = new Matrix();
-        matrix.setScale(scaleX, scaleY);
-        mScannerCallback.setTransform(matrix);
+        final int left = (previewSize.getWidth() - width) / 2;
+        final int top = (previewSize.getHeight() - height) / 2;
+        return new Rect(left, top, left + width, top + height);
     }
 
     private QrYuvLuminanceSource getFrameImage(byte[] imageData) {
-        final Rect frame = mScannerCallback.getFramePosition(mPreviewSize, mCameraOrientation);
+        final Size viewSize = mScannerCallback.getViewSize();
+        final Rect frame = calculateCenteredCrop(mPreviewSize, rotateIfPortrait(viewSize));
         final QrYuvLuminanceSource image = new QrYuvLuminanceSource(imageData,
                 mPreviewSize.getWidth(), mPreviewSize.getHeight());
         return (QrYuvLuminanceSource)
@@ -398,17 +457,18 @@
      */
     private Size getBestPreviewSize(Camera.Parameters parameters) {
         final double minRatioDiffPercent = 0.1;
-        final Size windowSize = mScannerCallback.getViewSize();
-        final double winRatio = getRatio(windowSize.getWidth(), windowSize.getHeight());
+        final Size viewSize = rotateIfPortrait(mScannerCallback.getViewSize());
+        final double viewRatio = getRatio(viewSize);
         double bestChoiceRatio = 0;
         Size bestChoice = new Size(0, 0);
         for (Camera.Size size : parameters.getSupportedPreviewSizes()) {
-            double ratio = getRatio(size.width, size.height);
+            final Size newSize = toAndroidSize(size);
+            final double ratio = getRatio(newSize);
             if (size.height * size.width > bestChoice.getWidth() * bestChoice.getHeight()
-                    && (Math.abs(bestChoiceRatio - winRatio) / winRatio > minRatioDiffPercent
-                    || Math.abs(ratio - winRatio) / winRatio <= minRatioDiffPercent)) {
-                bestChoice = new Size(size.width, size.height);
-                bestChoiceRatio = getRatio(size.width, size.height);
+                    && (Math.abs(bestChoiceRatio - viewRatio) / viewRatio > minRatioDiffPercent
+                    || Math.abs(ratio - viewRatio) / viewRatio <= minRatioDiffPercent)) {
+                bestChoice = newSize;
+                bestChoiceRatio = ratio;
             }
         }
         return bestChoice;
@@ -419,25 +479,26 @@
      * picture size and aspect ratio to choose the best one.
      */
     private Size getBestPictureSize(Camera.Parameters parameters) {
-        final Camera.Size previewSize = parameters.getPreviewSize();
-        final double previewRatio = getRatio(previewSize.width, previewSize.height);
+        final Size previewSize = mPreviewSize;
+        final double previewRatio = getRatio(previewSize);
         List<Size> bestChoices = new ArrayList<>();
         final List<Size> similarChoices = new ArrayList<>();
 
         // Filter by ratio
-        for (Camera.Size size : parameters.getSupportedPictureSizes()) {
-            double ratio = getRatio(size.width, size.height);
+        for (Camera.Size picSize : parameters.getSupportedPictureSizes()) {
+            final Size size = toAndroidSize(picSize);
+            final double ratio = getRatio(size);
             if (ratio == previewRatio) {
-                bestChoices.add(new Size(size.width, size.height));
+                bestChoices.add(size);
             } else if (Math.abs(ratio - previewRatio) < MAX_RATIO_DIFF) {
-                similarChoices.add(new Size(size.width, size.height));
+                similarChoices.add(size);
             }
         }
 
         if (bestChoices.size() == 0 && similarChoices.size() == 0) {
             Log.d(TAG, "No proper picture size, return default picture size");
             Camera.Size defaultPictureSize = parameters.getPictureSize();
-            return new Size(defaultPictureSize.width, defaultPictureSize.height);
+            return toAndroidSize(defaultPictureSize);
         }
 
         if (bestChoices.size() == 0) {
@@ -447,7 +508,7 @@
         // Get the best by area
         int bestAreaDifference = Integer.MAX_VALUE;
         Size bestChoice = null;
-        final int previewArea = previewSize.width * previewSize.height;
+        final int previewArea = previewSize.getWidth() * previewSize.getHeight();
         for (Size size : bestChoices) {
             int areaDifference = Math.abs(size.getWidth() * size.getHeight() - previewArea);
             if (areaDifference < bestAreaDifference) {
@@ -458,8 +519,20 @@
         return bestChoice;
     }
 
-    private double getRatio(double x, double y) {
-        return (x < y) ? x / y : y / x;
+    private Size rotateIfPortrait(Size size) {
+        if (mPreviewInPortrait) {
+            return new Size(size.getHeight(), size.getWidth());
+        } else {
+            return size;
+        }
+    }
+
+    private double getRatio(Size size) {
+        return size.getHeight() / (double) size.getWidth();
+    }
+
+    private Size toAndroidSize(Camera.Size size) {
+        return new Size(size.width, size.height);
     }
 
     @VisibleForTesting
diff --git a/packages/SettingsLib/src/com/android/settingslib/wifi/OWNERS b/packages/SettingsLib/src/com/android/settingslib/wifi/OWNERS
index b9449ac..50bfe8c 100644
--- a/packages/SettingsLib/src/com/android/settingslib/wifi/OWNERS
+++ b/packages/SettingsLib/src/com/android/settingslib/wifi/OWNERS
@@ -1,6 +1,5 @@
 # Default reviewers for this and subdirectories.
 andychou@google.com
-arcwang@google.com
 asapperstein@google.com
 changbetty@google.com
 qal@google.com
diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/bluetooth/BluetoothEventManagerTest.java b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/bluetooth/BluetoothEventManagerTest.java
index b86f4b3..eac69234 100644
--- a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/bluetooth/BluetoothEventManagerTest.java
+++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/bluetooth/BluetoothEventManagerTest.java
@@ -23,7 +23,6 @@
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.never;
 import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
@@ -38,12 +37,14 @@
 import android.content.IntentFilter;
 import android.os.UserHandle;
 import android.os.UserManager;
+import android.platform.test.annotations.EnableFlags;
 import android.platform.test.flag.junit.SetFlagsRule;
 import android.telephony.TelephonyManager;
 
 import com.android.settingslib.R;
 import com.android.settingslib.flags.Flags;
 import com.android.settingslib.testutils.shadow.ShadowBluetoothAdapter;
+import com.android.settingslib.utils.ThreadUtils;
 
 import org.junit.Before;
 import org.junit.Rule;
@@ -54,6 +55,8 @@
 import org.robolectric.RobolectricTestRunner;
 import org.robolectric.RuntimeEnvironment;
 import org.robolectric.annotation.Config;
+import org.robolectric.annotation.Implementation;
+import org.robolectric.annotation.Implements;
 import org.robolectric.shadow.api.Shadow;
 
 import java.util.ArrayList;
@@ -61,7 +64,7 @@
 import java.util.List;
 
 @RunWith(RobolectricTestRunner.class)
-@Config(shadows = {ShadowBluetoothAdapter.class})
+@Config(shadows = {ShadowBluetoothAdapter.class, BluetoothEventManagerTest.ShadowThreadUtils.class})
 public class BluetoothEventManagerTest {
     @Rule
     public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
@@ -100,6 +103,8 @@
     private BluetoothUtils.ErrorListener mErrorListener;
     @Mock
     private LocalBluetoothLeBroadcast mBroadcast;
+    @Mock
+    private UserManager mUserManager;
 
     private Context mContext;
     private Intent mIntent;
@@ -130,6 +135,7 @@
         mCachedDevice1 = new CachedBluetoothDevice(mContext, mLocalProfileManager, mDevice1);
         mCachedDevice2 = new CachedBluetoothDevice(mContext, mLocalProfileManager, mDevice2);
         mCachedDevice3 = new CachedBluetoothDevice(mContext, mLocalProfileManager, mDevice3);
+        when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager);
         BluetoothUtils.setErrorListener(mErrorListener);
     }
 
@@ -196,6 +202,7 @@
      * callback.
      */
     @Test
+    @EnableFlags(Flags.FLAG_PROMOTE_AUDIO_SHARING_FOR_SECOND_AUTO_CONNECTED_LEA_DEVICE)
     public void dispatchProfileConnectionStateChanged_registerCallback_shouldDispatchCallback() {
         mBluetoothEventManager.registerCallback(mBluetoothCallback);
 
@@ -208,10 +215,12 @@
 
     /**
      * dispatchProfileConnectionStateChanged should not call {@link
-     * LocalBluetoothLeBroadcast}#updateFallbackActiveDeviceIfNeeded when audio sharing flag is off.
+     * LocalBluetoothLeBroadcast}#updateFallbackActiveDeviceIfNeeded and
+     * {@link LocalBluetoothLeBroadcast}#handleProfileConnected when audio sharing flag is off.
      */
     @Test
-    public void dispatchProfileConnectionStateChanged_flagOff_noUpdateFallbackDevice() {
+    @EnableFlags(Flags.FLAG_PROMOTE_AUDIO_SHARING_FOR_SECOND_AUTO_CONNECTED_LEA_DEVICE)
+    public void dispatchProfileConnectionStateChanged_flagOff_noCallToBroadcastProfile() {
         setUpAudioSharing(/* enableFlag= */ false, /* enableFeature= */ true, /* enableProfile= */
                 true, /* workProfile= */ false);
         mBluetoothEventManager.dispatchProfileConnectionStateChanged(
@@ -219,16 +228,19 @@
                 BluetoothProfile.STATE_DISCONNECTED,
                 BluetoothProfile.LE_AUDIO_BROADCAST_ASSISTANT);
 
-        verify(mBroadcast, times(0)).updateFallbackActiveDeviceIfNeeded();
+        verify(mBroadcast, never()).updateFallbackActiveDeviceIfNeeded();
+        verify(mBroadcast, never()).handleProfileConnected(any(), anyInt(), any());
     }
 
     /**
      * dispatchProfileConnectionStateChanged should not call {@link
-     * LocalBluetoothLeBroadcast}#updateFallbackActiveDeviceIfNeeded when the device does not
-     * support audio sharing.
+     * LocalBluetoothLeBroadcast}#updateFallbackActiveDeviceIfNeeded and
+     * {@link LocalBluetoothLeBroadcast}#handleProfileConnected when the device does not support
+     * audio sharing.
      */
     @Test
-    public void dispatchProfileConnectionStateChanged_notSupport_noUpdateFallbackDevice() {
+    @EnableFlags(Flags.FLAG_PROMOTE_AUDIO_SHARING_FOR_SECOND_AUTO_CONNECTED_LEA_DEVICE)
+    public void dispatchProfileConnectionStateChanged_notSupport_noCallToBroadcastProfile() {
         setUpAudioSharing(/* enableFlag= */ true, /* enableFeature= */ false, /* enableProfile= */
                 true, /* workProfile= */ false);
         mBluetoothEventManager.dispatchProfileConnectionStateChanged(
@@ -236,7 +248,8 @@
                 BluetoothProfile.STATE_DISCONNECTED,
                 BluetoothProfile.LE_AUDIO_BROADCAST_ASSISTANT);
 
-        verify(mBroadcast, times(0)).updateFallbackActiveDeviceIfNeeded();
+        verify(mBroadcast, never()).updateFallbackActiveDeviceIfNeeded();
+        verify(mBroadcast, never()).handleProfileConnected(any(), anyInt(), any());
     }
 
     /**
@@ -245,6 +258,7 @@
      * not ready.
      */
     @Test
+    @EnableFlags(Flags.FLAG_PROMOTE_AUDIO_SHARING_FOR_SECOND_AUTO_CONNECTED_LEA_DEVICE)
     public void dispatchProfileConnectionStateChanged_profileNotReady_noUpdateFallbackDevice() {
         setUpAudioSharing(/* enableFlag= */ true, /* enableFeature= */ true, /* enableProfile= */
                 false, /* workProfile= */ false);
@@ -253,7 +267,7 @@
                 BluetoothProfile.STATE_DISCONNECTED,
                 BluetoothProfile.LE_AUDIO_BROADCAST_ASSISTANT);
 
-        verify(mBroadcast, times(0)).updateFallbackActiveDeviceIfNeeded();
+        verify(mBroadcast, never()).updateFallbackActiveDeviceIfNeeded();
     }
 
     /**
@@ -262,6 +276,7 @@
      * other than LE_AUDIO_BROADCAST_ASSISTANT or state other than STATE_DISCONNECTED.
      */
     @Test
+    @EnableFlags(Flags.FLAG_PROMOTE_AUDIO_SHARING_FOR_SECOND_AUTO_CONNECTED_LEA_DEVICE)
     public void dispatchProfileConnectionStateChanged_notAssistantProfile_noUpdateFallbackDevice() {
         setUpAudioSharing(/* enableFlag= */ true, /* enableFeature= */ true, /* enableProfile= */
                 true, /* workProfile= */ false);
@@ -270,16 +285,17 @@
                 BluetoothProfile.STATE_DISCONNECTED,
                 BluetoothProfile.LE_AUDIO);
 
-        verify(mBroadcast, times(0)).updateFallbackActiveDeviceIfNeeded();
+        verify(mBroadcast, never()).updateFallbackActiveDeviceIfNeeded();
     }
 
     /**
      * dispatchProfileConnectionStateChanged should not call {@link
-     * LocalBluetoothLeBroadcast}#updateFallbackActiveDeviceIfNeeded when triggered for
-     * work profile.
+     * LocalBluetoothLeBroadcast}#updateFallbackActiveDeviceIfNeeded and
+     * {@link LocalBluetoothLeBroadcast}#handleProfileConnected when triggered for work profile.
      */
     @Test
-    public void dispatchProfileConnectionStateChanged_workProfile_noUpdateFallbackDevice() {
+    @EnableFlags(Flags.FLAG_PROMOTE_AUDIO_SHARING_FOR_SECOND_AUTO_CONNECTED_LEA_DEVICE)
+    public void dispatchProfileConnectionStateChanged_workProfile_noCallToBroadcastProfile() {
         setUpAudioSharing(/* enableFlag= */ true, /* enableFeature= */ true, /* enableProfile= */
                 true, /* workProfile= */ true);
         mBluetoothEventManager.dispatchProfileConnectionStateChanged(
@@ -287,7 +303,8 @@
                 BluetoothProfile.STATE_DISCONNECTED,
                 BluetoothProfile.LE_AUDIO_BROADCAST_ASSISTANT);
 
-        verify(mBroadcast).updateFallbackActiveDeviceIfNeeded();
+        verify(mBroadcast, never()).updateFallbackActiveDeviceIfNeeded();
+        verify(mBroadcast, never()).handleProfileConnected(any(), anyInt(), any());
     }
 
     /**
@@ -296,7 +313,8 @@
      * disconnected and audio sharing is enabled.
      */
     @Test
-    public void dispatchProfileConnectionStateChanged_audioSharing_updateFallbackDevice() {
+    @EnableFlags(Flags.FLAG_PROMOTE_AUDIO_SHARING_FOR_SECOND_AUTO_CONNECTED_LEA_DEVICE)
+    public void dispatchProfileConnectionStateChanged_assistDisconnected_updateFallbackDevice() {
         setUpAudioSharing(/* enableFlag= */ true, /* enableFeature= */ true, /* enableProfile= */
                 true, /* workProfile= */ false);
         mBluetoothEventManager.dispatchProfileConnectionStateChanged(
@@ -305,6 +323,27 @@
                 BluetoothProfile.LE_AUDIO_BROADCAST_ASSISTANT);
 
         verify(mBroadcast).updateFallbackActiveDeviceIfNeeded();
+        verify(mBroadcast, never()).handleProfileConnected(any(), anyInt(), any());
+    }
+
+    /**
+     * dispatchProfileConnectionStateChanged should call {@link
+     * LocalBluetoothLeBroadcast}#handleProfileConnected when assistant profile is connected and
+     * audio sharing is enabled.
+     */
+    @Test
+    @EnableFlags(Flags.FLAG_PROMOTE_AUDIO_SHARING_FOR_SECOND_AUTO_CONNECTED_LEA_DEVICE)
+    public void dispatchProfileConnectionStateChanged_assistConnected_handleStateChanged() {
+        setUpAudioSharing(/* enableFlag= */ true, /* enableFeature= */ true, /* enableProfile= */
+                true, /* workProfile= */ false);
+        mBluetoothEventManager.dispatchProfileConnectionStateChanged(
+                mCachedBluetoothDevice,
+                BluetoothProfile.STATE_CONNECTED,
+                BluetoothProfile.LE_AUDIO_BROADCAST_ASSISTANT);
+
+        verify(mBroadcast, never()).updateFallbackActiveDeviceIfNeeded();
+        verify(mBroadcast).handleProfileConnected(mCachedBluetoothDevice,
+                BluetoothProfile.LE_AUDIO_BROADCAST_ASSISTANT, mBtManager);
     }
 
     private void setUpAudioSharing(boolean enableFlag, boolean enableFeature,
@@ -325,13 +364,19 @@
         LocalBluetoothLeBroadcastAssistant assistant =
                 mock(LocalBluetoothLeBroadcastAssistant.class);
         when(assistant.isProfileReady()).thenReturn(enableProfile);
-        LocalBluetoothProfileManager profileManager = mock(LocalBluetoothProfileManager.class);
-        when(profileManager.getLeAudioBroadcastProfile()).thenReturn(mBroadcast);
-        when(profileManager.getLeAudioBroadcastAssistantProfile()).thenReturn(assistant);
-        when(mBtManager.getProfileManager()).thenReturn(profileManager);
-        UserManager userManager = mock(UserManager.class);
-        when(mContext.getSystemService(UserManager.class)).thenReturn(userManager);
-        when(userManager.isManagedProfile()).thenReturn(workProfile);
+        when(mLocalProfileManager.getLeAudioBroadcastProfile()).thenReturn(mBroadcast);
+        when(mLocalProfileManager.getLeAudioBroadcastAssistantProfile()).thenReturn(assistant);
+        when(mUserManager.isManagedProfile()).thenReturn(workProfile);
+        if (workProfile) {
+            mBluetoothEventManager =
+                    new BluetoothEventManager(
+                            mLocalAdapter,
+                            mBtManager,
+                            mCachedDeviceManager,
+                            mContext,
+                            /* handler= */ null,
+                            /* userHandle= */ null);
+        }
     }
 
     @Test
@@ -665,4 +710,12 @@
 
         verify(mBluetoothCallback).onAutoOnStateChanged(anyInt());
     }
+
+    @Implements(value = ThreadUtils.class)
+    public static class ShadowThreadUtils {
+        @Implementation
+        protected static void postOnBackgroundThread(Runnable runnable) {
+            runnable.run();
+        }
+    }
 }
diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/bluetooth/BluetoothUtilsTest.java b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/bluetooth/BluetoothUtilsTest.java
index 0325c0e..b781412 100644
--- a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/bluetooth/BluetoothUtilsTest.java
+++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/bluetooth/BluetoothUtilsTest.java
@@ -1349,6 +1349,36 @@
     }
 
     @Test
+    public void isMediaDevice_returnsFalse() {
+        when(mCachedBluetoothDevice.getProfiles()).thenReturn(ImmutableList.of(mAssistant));
+        assertThat(BluetoothUtils.isMediaDevice(mCachedBluetoothDevice)).isFalse();
+    }
+
+    @Test
+    public void isMediaDevice_returnsTrue() {
+        when(mCachedBluetoothDevice.getProfiles()).thenReturn(ImmutableList.of(mLeAudioProfile));
+        assertThat(BluetoothUtils.isMediaDevice(mCachedBluetoothDevice)).isTrue();
+    }
+
+    @Test
+    public void isLeAudioSupported_returnsFalse() {
+        when(mCachedBluetoothDevice.getProfiles()).thenReturn(ImmutableList.of(mLeAudioProfile));
+        when(mCachedBluetoothDevice.getDevice()).thenReturn(mBluetoothDevice);
+        when(mLeAudioProfile.isEnabled(mBluetoothDevice)).thenReturn(false);
+
+        assertThat(BluetoothUtils.isLeAudioSupported(mCachedBluetoothDevice)).isFalse();
+    }
+
+    @Test
+    public void isLeAudioSupported_returnsTrue() {
+        when(mCachedBluetoothDevice.getProfiles()).thenReturn(ImmutableList.of(mLeAudioProfile));
+        when(mCachedBluetoothDevice.getDevice()).thenReturn(mBluetoothDevice);
+        when(mLeAudioProfile.isEnabled(mBluetoothDevice)).thenReturn(true);
+
+        assertThat(BluetoothUtils.isLeAudioSupported(mCachedBluetoothDevice)).isTrue();
+    }
+
+    @Test
     public void isTemporaryBondDevice_hasMetadata_returnsTrue() {
         when(mBluetoothDevice.getMetadata(METADATA_FAST_PAIR_CUSTOMIZED_FIELDS))
                 .thenReturn(TEMP_BOND_METADATA.getBytes());
diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/satellite/SatelliteDialogUtilsTest.kt b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/satellite/SatelliteDialogUtilsTest.kt
index 1deb625..71e72fe 100644
--- a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/satellite/SatelliteDialogUtilsTest.kt
+++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/satellite/SatelliteDialogUtilsTest.kt
@@ -17,7 +17,6 @@
 package com.android.settingslib.satellite
 
 import android.content.Context
-import android.platform.test.annotations.RequiresFlagsEnabled
 import android.telephony.satellite.SatelliteManager
 import android.telephony.satellite.SatelliteManager.SATELLITE_MODEM_STATE_ENABLING_SATELLITE
 import android.telephony.satellite.SatelliteManager.SATELLITE_MODEM_STATE_OFF
@@ -25,7 +24,6 @@
 import android.telephony.satellite.SatelliteModemStateCallback
 import android.util.AndroidRuntimeException
 import androidx.test.core.app.ApplicationProvider
-import com.android.internal.telephony.flags.Flags
 import com.android.settingslib.satellite.SatelliteDialogUtils.TYPE_IS_WIFI
 import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.Dispatchers
@@ -38,12 +36,12 @@
 import org.junit.runner.RunWith
 import org.mockito.Mock
 import org.mockito.Mockito.any
+import org.mockito.Mockito.verify
 import org.mockito.Mockito.`when`
 import org.mockito.Spy
+import org.mockito.internal.verification.Times
 import org.mockito.junit.MockitoJUnit
 import org.mockito.junit.MockitoRule
-import org.mockito.Mockito.verify
-import org.mockito.internal.verification.Times
 import org.robolectric.RobolectricTestRunner
 
 @RunWith(RobolectricTestRunner::class)
@@ -66,7 +64,6 @@
     }
 
     @Test
-    @RequiresFlagsEnabled(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun mayStartSatelliteWarningDialog_satelliteIsOn_showWarningDialog(): Unit = runBlocking {
         `when`(satelliteManager.registerForModemStateChanged(any(), any()))
                 .thenAnswer { invocation ->
@@ -87,7 +84,6 @@
     }
 
     @Test
-    @RequiresFlagsEnabled(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun mayStartSatelliteWarningDialog_satelliteIsOff_notShowWarningDialog() = runBlocking {
         `when`(satelliteManager.registerForModemStateChanged(any(), any()))
                 .thenAnswer { invocation ->
@@ -107,7 +103,6 @@
     }
 
     @Test
-    @RequiresFlagsEnabled(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun mayStartSatelliteWarningDialog_noSatelliteManager_notShowWarningDialog() = runBlocking {
         `when`(context.getSystemService(SatelliteManager::class.java)).thenReturn(null)
 
@@ -120,7 +115,6 @@
     }
 
     @Test
-    @RequiresFlagsEnabled(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun mayStartSatelliteWarningDialog_satelliteErrorResult_notShowWarningDialog() = runBlocking {
         `when`(satelliteManager.registerForModemStateChanged(any(), any()))
                 .thenReturn(SATELLITE_RESULT_MODEM_ERROR)
@@ -134,7 +128,6 @@
     }
 
     @Test
-    @RequiresFlagsEnabled(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun mayStartSatelliteWarningDialog_phoneCrash_notShowWarningDialog() = runBlocking {
         `when`(satelliteManager.registerForModemStateChanged(any(), any()))
                 .thenThrow(IllegalStateException("Telephony is null!!!"))
diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/widget/SelectorWithWidgetPreferenceTest.java b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/widget/SelectorWithWidgetPreferenceTest.java
index c939c77..5076dea 100644
--- a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/widget/SelectorWithWidgetPreferenceTest.java
+++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/widget/SelectorWithWidgetPreferenceTest.java
@@ -78,14 +78,14 @@
     @Test
     public void shouldHaveRadioButtonWidgetLayoutByDefault() {
         assertThat(mPreference.getWidgetLayoutResource())
-                .isEqualTo(R.layout.preference_widget_radiobutton);
+                .isEqualTo(R.layout.settingslib_preference_widget_radiobutton);
     }
 
     @Test
     public void shouldHaveCheckBoxWidgetLayoutIfSet() {
         mPreference = new SelectorWithWidgetPreference(mContext, true);
         assertThat(mPreference.getWidgetLayoutResource())
-                .isEqualTo(R.layout.preference_widget_checkbox);
+                .isEqualTo(R.layout.settingslib_preference_widget_checkbox);
     }
 
     @Test
diff --git a/packages/SettingsLib/tests/robotests/testutils/com/android/settingslib/testutils/shadow/ShadowColorDisplayManager.java b/packages/SettingsLib/tests/robotests/testutils/com/android/settingslib/testutils/shadow/ShadowColorDisplayManager.java
index a9fd380..76b6aa8 100644
--- a/packages/SettingsLib/tests/robotests/testutils/com/android/settingslib/testutils/shadow/ShadowColorDisplayManager.java
+++ b/packages/SettingsLib/tests/robotests/testutils/com/android/settingslib/testutils/shadow/ShadowColorDisplayManager.java
@@ -28,6 +28,7 @@
 public class ShadowColorDisplayManager extends org.robolectric.shadows.ShadowColorDisplayManager {
 
     private boolean mIsReduceBrightColorsActivated;
+    private int mColorMode;
 
     @Implementation
     @SystemApi
@@ -43,4 +44,13 @@
         return mIsReduceBrightColorsActivated;
     }
 
+    @Implementation
+    public int getColorMode() {
+        return mColorMode;
+    }
+
+    @Implementation
+    public void setColorMode(int colorMode) {
+        mColorMode = colorMode;
+    }
 }
diff --git a/packages/SettingsProvider/src/android/provider/settings/backup/SecureSettings.java b/packages/SettingsProvider/src/android/provider/settings/backup/SecureSettings.java
index 60fe156..f692601e 100644
--- a/packages/SettingsProvider/src/android/provider/settings/backup/SecureSettings.java
+++ b/packages/SettingsProvider/src/android/provider/settings/backup/SecureSettings.java
@@ -95,6 +95,7 @@
         Settings.Secure.ACCESSIBILITY_AUTOCLICK_IGNORE_MINOR_CURSOR_MOVEMENT,
         Settings.Secure.ACCESSIBILITY_AUTOCLICK_ENABLED,
         Settings.Secure.ACCESSIBILITY_AUTOCLICK_DELAY,
+        Settings.Secure.ACCESSIBILITY_AUTOCLICK_PANEL_POSITION,
         Settings.Secure.ACCESSIBILITY_LARGE_POINTER_ICON,
         Settings.Secure.PREFERRED_TTY_MODE,
         Settings.Secure.ENHANCED_VOICE_PRIVACY_ENABLED,
diff --git a/packages/SettingsProvider/src/android/provider/settings/validators/SecureSettingsValidators.java b/packages/SettingsProvider/src/android/provider/settings/validators/SecureSettingsValidators.java
index 3d941e8..e42d3fb 100644
--- a/packages/SettingsProvider/src/android/provider/settings/validators/SecureSettingsValidators.java
+++ b/packages/SettingsProvider/src/android/provider/settings/validators/SecureSettingsValidators.java
@@ -146,6 +146,7 @@
                 Secure.ACCESSIBILITY_AUTOCLICK_IGNORE_MINOR_CURSOR_MOVEMENT, BOOLEAN_VALIDATOR);
         VALIDATORS.put(Secure.ACCESSIBILITY_AUTOCLICK_ENABLED, BOOLEAN_VALIDATOR);
         VALIDATORS.put(Secure.ACCESSIBILITY_AUTOCLICK_DELAY, NON_NEGATIVE_INTEGER_VALIDATOR);
+        VALIDATORS.put(Secure.ACCESSIBILITY_AUTOCLICK_PANEL_POSITION, ANY_STRING_VALIDATOR);
         VALIDATORS.put(Secure.ACCESSIBILITY_LARGE_POINTER_ICON, BOOLEAN_VALIDATOR);
         VALIDATORS.put(
                 Secure.PREFERRED_TTY_MODE,
diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProtoDumpUtil.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProtoDumpUtil.java
index f03a5fb..c29a5a2 100644
--- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProtoDumpUtil.java
+++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProtoDumpUtil.java
@@ -1727,6 +1727,8 @@
         dumpSetting(s, p,
                 Settings.Secure.ACCESSIBILITY_AUTOCLICK_DELAY,
                 SecureSettingsProto.Accessibility.AUTOCLICK_DELAY);
+        dumpSetting(s, p, Settings.Secure.ACCESSIBILITY_AUTOCLICK_PANEL_POSITION,
+                SecureSettingsProto.Accessibility.AUTOCLICK_PANEL_POSITION);
         dumpSetting(s, p,
                 Settings.Secure.ACCESSIBILITY_BUTTON_TARGET_COMPONENT,
                 SecureSettingsProto.Accessibility.BUTTON_TARGET_COMPONENT);
diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsState.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsState.java
index c98a741..99c4e21c 100644
--- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsState.java
+++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsState.java
@@ -456,11 +456,16 @@
     @GuardedBy("mLock")
     private void loadAconfigDefaultValuesLocked(List<String> filePaths) {
         for (String fileName : filePaths) {
-            try (FileInputStream inputStream = new FileInputStream(fileName)) {
-                loadAconfigDefaultValues(
-                        inputStream.readAllBytes(), mNamespaceDefaults, mAconfigDefaultFlags);
-            } catch (IOException e) {
-                Slog.e(LOG_TAG, "failed to read protobuf", e);
+            File f = new File(fileName);
+            if (f.isFile() && f.canRead()) {
+                try (FileInputStream inputStream = new FileInputStream(fileName)) {
+                    loadAconfigDefaultValues(
+                            inputStream.readAllBytes(), mNamespaceDefaults, mAconfigDefaultFlags);
+                } catch (IOException e) {
+                    Slog.e(LOG_TAG, "failed to read protobuf", e);
+                }
+            } else {
+                Slog.d(LOG_TAG, "No protobuf file at " + fileName);
             }
         }
     }
diff --git a/packages/Shell/OWNERS b/packages/Shell/OWNERS
index 576afdc..2fa707e 100644
--- a/packages/Shell/OWNERS
+++ b/packages/Shell/OWNERS
@@ -7,9 +7,7 @@
 svetoslavganov@google.com
 hackbod@google.com
 yamasani@google.com
-toddke@google.com
 patb@google.com
-cbrubaker@google.com
 omakoto@google.com
 michaelwr@google.com
 ronish@google.com
diff --git a/packages/Shell/res/values-sv/strings.xml b/packages/Shell/res/values-sv/strings.xml
index d887777..8a636e1 100644
--- a/packages/Shell/res/values-sv/strings.xml
+++ b/packages/Shell/res/values-sv/strings.xml
@@ -18,8 +18,8 @@
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="app_label" msgid="3701846017049540910">"Skal"</string>
     <string name="bugreport_notification_channel" msgid="2574150205913861141">"Felrapporter"</string>
-    <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Felrapporten <xliff:g id="ID">#%d</xliff:g> genereras"</string>
-    <string name="bugreport_finished_title" msgid="4429132808670114081">"Felrapporten <xliff:g id="ID">#%d</xliff:g> har skapats"</string>
+    <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Felrapport <xliff:g id="ID">#%d</xliff:g> genereras"</string>
+    <string name="bugreport_finished_title" msgid="4429132808670114081">"Felrapport <xliff:g id="ID">#%d</xliff:g> har skapats"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Lägger till information i felrapporten"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Vänta …"</string>
     <string name="bugreport_finished_text" product="watch" msgid="1223616207145252689">"Felrapporten visas på mobilen inom kort"</string>
diff --git a/packages/SystemUI/TEST_MAPPING b/packages/SystemUI/TEST_MAPPING
index cc01071..1362ffe 100644
--- a/packages/SystemUI/TEST_MAPPING
+++ b/packages/SystemUI/TEST_MAPPING
@@ -24,6 +24,17 @@
       "name": "SystemUIGoogleTests"
     },
     {
+      "name": "SystemUIClocksTests",
+      "options": [
+        {
+          "exclude-annotation": "org.junit.Ignore"
+        },
+        {
+          "exclude-annotation": "androidx.test.filters.FlakyTest"
+        }
+      ]
+    },
+    {
       // Permission indicators
       "name": "CtsPermissionUiTestCases",
       "options": [
diff --git a/packages/SystemUI/aconfig/systemui.aconfig b/packages/SystemUI/aconfig/systemui.aconfig
index f2c76ba..7e8d549 100644
--- a/packages/SystemUI/aconfig/systemui.aconfig
+++ b/packages/SystemUI/aconfig/systemui.aconfig
@@ -203,6 +203,16 @@
 }
 
 flag {
+    name: "notifications_hun_shared_animation_values"
+    namespace: "systemui"
+    description: "Adds a shared class for fetching HUN animation values."
+    bug: "393369891"
+    metadata {
+        purpose: PURPOSE_BUGFIX
+    }
+}
+
+flag {
     name: "notification_undo_guts_on_config_changed"
     namespace: "systemui"
     description: "Fixes a bug where a theme or font change while notification guts were open"
diff --git a/packages/SystemUI/animation/src/com/android/systemui/animation/ComposableControllerFactory.kt b/packages/SystemUI/animation/src/com/android/systemui/animation/ComposableControllerFactory.kt
new file mode 100644
index 0000000..c842159
--- /dev/null
+++ b/packages/SystemUI/animation/src/com/android/systemui/animation/ComposableControllerFactory.kt
@@ -0,0 +1,60 @@
+/*
+ * Copyright (C) 2025 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.systemui.animation
+
+import android.content.ComponentName
+import android.util.Log
+import com.android.systemui.animation.ActivityTransitionAnimator.Controller
+import com.android.systemui.animation.ActivityTransitionAnimator.ControllerFactory
+import kotlinx.coroutines.flow.MutableStateFlow
+
+private const val TAG = "ComposableControllerFactory"
+
+/**
+ * [ControllerFactory] extension for Compose. Since composables are not guaranteed to be part of the
+ * composition when [ControllerFactory.createController] is called, this class provides a way for
+ * the composable to register itself at the time of composition, and deregister itself when
+ * disposed.
+ */
+abstract class ComposableControllerFactory(
+    cookie: ActivityTransitionAnimator.TransitionCookie,
+    component: ComponentName?,
+    launchCujType: Int? = null,
+    returnCujType: Int? = null,
+) : ControllerFactory(cookie, component, launchCujType, returnCujType) {
+    /**
+     * The object to be used to create [Controller]s, when its associate composable is in the
+     * composition.
+     */
+    protected val expandable = MutableStateFlow<Expandable?>(null)
+
+    /** To be called when the composable to be animated enters composition. */
+    fun onCompose(expandable: Expandable) {
+        if (TransitionAnimator.DEBUG) {
+            Log.d(TAG, "Composable entered composition (expandable=$expandable")
+        }
+        this.expandable.value = expandable
+    }
+
+    /** To be called when the composable to be animated exits composition. */
+    fun onDispose() {
+        if (TransitionAnimator.DEBUG) {
+            Log.d(TAG, "Composable left composition (expandable=${this.expandable.value}")
+        }
+        this.expandable.value = null
+    }
+}
diff --git a/packages/SystemUI/compose/core/src/com/android/compose/animation/Expandable.kt b/packages/SystemUI/compose/core/src/com/android/compose/animation/Expandable.kt
index 8739919..a352b1e 100644
--- a/packages/SystemUI/compose/core/src/com/android/compose/animation/Expandable.kt
+++ b/packages/SystemUI/compose/core/src/com/android/compose/animation/Expandable.kt
@@ -84,6 +84,7 @@
 import androidx.savedstate.setViewTreeSavedStateRegistryOwner
 import com.android.compose.modifiers.thenIf
 import com.android.compose.ui.graphics.FullScreenComposeViewInOverlay
+import com.android.systemui.animation.ComposableControllerFactory
 import com.android.systemui.animation.Expandable
 import com.android.systemui.animation.TransitionAnimator
 import kotlin.math.max
@@ -119,6 +120,10 @@
  *    }
  * ```
  *
+ * [transitionControllerFactory] must be defined when this [Expandable] is registered for a
+ * long-term launch or return animation, to ensure that animation controllers can be created
+ * correctly.
+ *
  * @sample com.android.systemui.compose.gallery.ActivityLaunchScreen
  * @sample com.android.systemui.compose.gallery.DialogLaunchScreen
  */
@@ -134,10 +139,17 @@
     // TODO(b/285250939): Default this to true then remove once the Compose QS expandables have
     // proven that the new implementation is robust.
     useModifierBasedImplementation: Boolean = false,
+    transitionControllerFactory: ComposableControllerFactory? = null,
     content: @Composable (Expandable) -> Unit,
 ) {
     Expandable(
-        rememberExpandableController(color, shape, contentColor, borderStroke),
+        rememberExpandableController(
+            color,
+            shape,
+            contentColor,
+            borderStroke,
+            transitionControllerFactory,
+        ),
         modifier,
         onClick,
         interactionSource,
@@ -183,6 +195,17 @@
 ) {
     val controller = controller as ExpandableControllerImpl
 
+    if (controller.transitionControllerFactory != null) {
+        DisposableEffect(controller.transitionControllerFactory) {
+            // Notify the transition controller factory that the expandable is now available, so it
+            // can move forward with any pending requests.
+            controller.transitionControllerFactory.onCompose(controller.expandable)
+            // Once this composable is gone, the transition controller factory must be notified so
+            // it doesn't accepts requests providing stale content.
+            onDispose { controller.transitionControllerFactory.onDispose() }
+        }
+    }
+
     if (useModifierBasedImplementation) {
         Box(modifier.expandable(controller, onClick, interactionSource)) {
             WrappedContent(controller.expandable, controller.contentColor, content)
@@ -308,34 +331,28 @@
     interactionSource: MutableInteractionSource? = null,
 ): Modifier {
     val controller = controller as ExpandableControllerImpl
+    val graphicsLayer = rememberGraphicsLayer()
 
     val isAnimating = controller.isAnimating
-    val drawInOverlayModifier =
-        if (isAnimating) {
-            val graphicsLayer = rememberGraphicsLayer()
-
-            FullScreenComposeViewInOverlay { view ->
-                Modifier.then(DrawExpandableInOverlayElement(view, controller, graphicsLayer))
-            }
-
-            Modifier.drawWithContent { graphicsLayer.record { this@drawWithContent.drawContent() } }
-        } else {
-            null
+    if (isAnimating) {
+        FullScreenComposeViewInOverlay(controller.overlay) { view ->
+            Modifier.then(DrawExpandableInOverlayElement(view, controller, graphicsLayer))
         }
+    }
 
+    val drawContent = !isAnimating && !controller.isDialogShowing
     return this.thenIf(onClick != null) { Modifier.minimumInteractiveComponentSize() }
-        .thenIf(!isAnimating) {
+        .thenIf(drawContent) {
             Modifier.border(controller)
                 .then(clickModifier(controller, onClick, interactionSource))
                 .background(controller.color, controller.shape)
         }
-        .thenIf(drawInOverlayModifier != null) { drawInOverlayModifier!! }
         .onPlaced { controller.boundsInComposeViewRoot = it.boundsInRoot() }
-        .thenIf(!isAnimating && controller.isDialogShowing) {
-            Modifier.layout { measurable, constraints ->
-                measurable.measure(constraints).run {
-                    layout(width, height) { /* Do not place/draw. */ }
-                }
+        .drawWithContent {
+            graphicsLayer.record { this@drawWithContent.drawContent() }
+
+            if (drawContent) {
+                drawLayer(graphicsLayer)
             }
         }
 }
@@ -397,7 +414,7 @@
     }
 
     override fun ContentDrawScope.draw() {
-        val state = controller.animatorState ?: return
+        val state = controller.animatorState?.takeIf { it.visible } ?: return
         val topOffset = state.top.toFloat() - composeViewLocationOnScreen[1]
         val leftOffset = state.left.toFloat() - composeViewLocationOnScreen[0]
 
diff --git a/packages/SystemUI/compose/core/src/com/android/compose/animation/ExpandableController.kt b/packages/SystemUI/compose/core/src/com/android/compose/animation/ExpandableController.kt
index a03c896..72da175e 100644
--- a/packages/SystemUI/compose/core/src/com/android/compose/animation/ExpandableController.kt
+++ b/packages/SystemUI/compose/core/src/com/android/compose/animation/ExpandableController.kt
@@ -47,6 +47,7 @@
 import androidx.compose.ui.unit.LayoutDirection
 import com.android.internal.jank.InteractionJankMonitor
 import com.android.systemui.animation.ActivityTransitionAnimator
+import com.android.systemui.animation.ComposableControllerFactory
 import com.android.systemui.animation.DialogCuj
 import com.android.systemui.animation.DialogTransitionAnimator
 import com.android.systemui.animation.Expandable
@@ -77,6 +78,7 @@
     shape: Shape,
     contentColor: Color = contentColorFor(color),
     borderStroke: BorderStroke? = null,
+    transitionControllerFactory: ComposableControllerFactory? = null,
 ): ExpandableController {
     val composeViewRoot = LocalView.current
     val density = LocalDensity.current
@@ -95,6 +97,7 @@
             composeViewRoot,
             density,
             layoutDirection,
+            transitionControllerFactory,
         ) {
             ExpandableControllerImpl(
                 color,
@@ -103,6 +106,7 @@
                 borderStroke,
                 composeViewRoot,
                 density,
+                transitionControllerFactory,
                 layoutDirection,
                 { isComposed },
             )
@@ -127,6 +131,7 @@
     internal val borderStroke: BorderStroke?,
     internal val composeViewRoot: View,
     internal val density: Density,
+    internal val transitionControllerFactory: ComposableControllerFactory?,
     private val layoutDirection: LayoutDirection,
     private val isComposed: () -> Boolean,
 ) : ExpandableController {
diff --git a/packages/SystemUI/compose/core/src/com/android/compose/theme/AndroidColorScheme.kt b/packages/SystemUI/compose/core/src/com/android/compose/theme/AndroidColorScheme.kt
index 1256641..375dade 100644
--- a/packages/SystemUI/compose/core/src/com/android/compose/theme/AndroidColorScheme.kt
+++ b/packages/SystemUI/compose/core/src/com/android/compose/theme/AndroidColorScheme.kt
@@ -41,6 +41,7 @@
  */
 @Immutable
 class AndroidColorScheme(
+    // fixed tokens
     val primaryFixed: Color,
     val primaryFixedDim: Color,
     val onPrimaryFixed: Color,
@@ -53,6 +54,34 @@
     val tertiaryFixedDim: Color,
     val onTertiaryFixed: Color,
     val onTertiaryFixedVariant: Color,
+
+    // custom tokens
+    val brandA: Color,
+    val brandB: Color,
+    val brandC: Color,
+    val brandD: Color,
+    val clockHour: Color,
+    val clockMinute: Color,
+    val clockSecond: Color,
+    val onShadeActive: Color,
+    val onShadeActiveVariant: Color,
+    val onShadeInactive: Color,
+    val onShadeInactiveVariant: Color,
+    val onThemeApp: Color,
+    val overviewBackground: Color,
+    val shadeActive: Color,
+    val shadeDisabled: Color,
+    val shadeInactive: Color,
+    val themeApp: Color,
+    val themeAppRing: Color,
+    val themeNotif: Color,
+    val underSurface: Color,
+    val weatherTemp: Color,
+    val widgetBackground: Color,
+    val surfaceEffect0: Color,
+    val surfaceEffect1: Color,
+    val surfaceEffect2: Color,
+    val surfaceEffect3: Color,
 ) {
     companion object {
         internal fun color(context: Context, @ColorRes id: Int): Color {
@@ -61,6 +90,7 @@
 
         operator fun invoke(context: Context): AndroidColorScheme {
             return AndroidColorScheme(
+                // Fixed tokens.
                 primaryFixed = color(context, R.color.system_primary_fixed),
                 primaryFixedDim = color(context, R.color.system_primary_fixed_dim),
                 onPrimaryFixed = color(context, R.color.system_on_primary_fixed),
@@ -73,6 +103,34 @@
                 tertiaryFixedDim = color(context, R.color.system_tertiary_fixed_dim),
                 onTertiaryFixed = color(context, R.color.system_on_tertiary_fixed),
                 onTertiaryFixedVariant = color(context, R.color.system_on_tertiary_fixed_variant),
+
+                // Custom tokens.
+                brandA = color(context, R.color.customColorBrandA),
+                brandB = color(context, R.color.customColorBrandB),
+                brandC = color(context, R.color.customColorBrandC),
+                brandD = color(context, R.color.customColorBrandD),
+                clockHour = color(context, R.color.customColorClockHour),
+                clockMinute = color(context, R.color.customColorClockMinute),
+                clockSecond = color(context, R.color.customColorClockSecond),
+                onShadeActive = color(context, R.color.customColorOnShadeActive),
+                onShadeActiveVariant = color(context, R.color.customColorOnShadeActiveVariant),
+                onShadeInactive = color(context, R.color.customColorOnShadeInactive),
+                onShadeInactiveVariant = color(context, R.color.customColorOnShadeInactiveVariant),
+                onThemeApp = color(context, R.color.customColorOnThemeApp),
+                overviewBackground = color(context, R.color.customColorOverviewBackground),
+                shadeActive = color(context, R.color.customColorShadeActive),
+                shadeDisabled = color(context, R.color.customColorShadeDisabled),
+                shadeInactive = color(context, R.color.customColorShadeInactive),
+                themeApp = color(context, R.color.customColorThemeApp),
+                themeAppRing = color(context, R.color.customColorThemeAppRing),
+                themeNotif = color(context, R.color.customColorThemeNotif),
+                underSurface = color(context, R.color.customColorUnderSurface),
+                weatherTemp = color(context, R.color.customColorWeatherTemp),
+                widgetBackground = color(context, R.color.customColorWidgetBackground),
+                surfaceEffect0 = color(context, R.color.surface_effect_0),
+                surfaceEffect1 = color(context, R.color.surface_effect_1),
+                surfaceEffect2 = color(context, R.color.surface_effect_2),
+                surfaceEffect3 = color(context, R.color.surface_effect_3),
             )
         }
     }
diff --git a/packages/SystemUI/compose/core/src/com/android/compose/theme/PlatformTheme.kt b/packages/SystemUI/compose/core/src/com/android/compose/theme/PlatformTheme.kt
index 71ec63c..84370ed 100644
--- a/packages/SystemUI/compose/core/src/com/android/compose/theme/PlatformTheme.kt
+++ b/packages/SystemUI/compose/core/src/com/android/compose/theme/PlatformTheme.kt
@@ -31,6 +31,7 @@
 import com.android.compose.theme.typography.TypefaceNames
 import com.android.compose.theme.typography.TypefaceTokens
 import com.android.compose.theme.typography.TypographyTokens
+import com.android.compose.theme.typography.VariableFontTypeScaleEmphasizedTokens
 import com.android.compose.theme.typography.platformTypography
 import com.android.compose.windowsizeclass.LocalWindowSizeClass
 import com.android.compose.windowsizeclass.calculateWindowSizeClass
@@ -44,9 +45,15 @@
     val colorScheme = remember(context, isDarkTheme) { platformColorScheme(isDarkTheme, context) }
     val androidColorScheme = remember(context) { AndroidColorScheme(context) }
     val typefaceNames = remember(context) { TypefaceNames.get(context) }
+    val typefaceTokens = remember(typefaceNames) { TypefaceTokens(typefaceNames) }
     val typography =
-        remember(typefaceNames) {
-            platformTypography(TypographyTokens(TypeScaleTokens(TypefaceTokens(typefaceNames))))
+        remember(typefaceTokens) {
+            platformTypography(
+                TypographyTokens(
+                    TypeScaleTokens(typefaceTokens),
+                    VariableFontTypeScaleEmphasizedTokens(typefaceTokens),
+                )
+            )
         }
     val windowSizeClass = calculateWindowSizeClass()
 
diff --git a/packages/SystemUI/compose/core/src/com/android/compose/theme/typography/PlatformTypography.kt b/packages/SystemUI/compose/core/src/com/android/compose/theme/typography/PlatformTypography.kt
index 1ce1ae3..652f946 100644
--- a/packages/SystemUI/compose/core/src/com/android/compose/theme/typography/PlatformTypography.kt
+++ b/packages/SystemUI/compose/core/src/com/android/compose/theme/typography/PlatformTypography.kt
@@ -16,6 +16,7 @@
 
 package com.android.compose.theme.typography
 
+import androidx.compose.material3.ExperimentalMaterial3ExpressiveApi
 import androidx.compose.material3.MaterialTheme
 import androidx.compose.material3.Typography
 
@@ -25,6 +26,7 @@
  * Do not use directly and call [MaterialTheme.typography] instead to access the different text
  * styles.
  */
+@OptIn(ExperimentalMaterial3ExpressiveApi::class)
 internal fun platformTypography(typographyTokens: TypographyTokens): Typography {
     return Typography(
         displayLarge = typographyTokens.displayLarge,
@@ -42,5 +44,21 @@
         labelLarge = typographyTokens.labelLarge,
         labelMedium = typographyTokens.labelMedium,
         labelSmall = typographyTokens.labelSmall,
+        // GSF emphasized tokens
+        displayLargeEmphasized = typographyTokens.displayLargeEmphasized,
+        displayMediumEmphasized = typographyTokens.displayMediumEmphasized,
+        displaySmallEmphasized = typographyTokens.displaySmallEmphasized,
+        headlineLargeEmphasized = typographyTokens.headlineLargeEmphasized,
+        headlineMediumEmphasized = typographyTokens.headlineMediumEmphasized,
+        headlineSmallEmphasized = typographyTokens.headlineSmallEmphasized,
+        titleLargeEmphasized = typographyTokens.titleLargeEmphasized,
+        titleMediumEmphasized = typographyTokens.titleMediumEmphasized,
+        titleSmallEmphasized = typographyTokens.titleSmallEmphasized,
+        bodyLargeEmphasized = typographyTokens.bodyLargeEmphasized,
+        bodyMediumEmphasized = typographyTokens.bodyMediumEmphasized,
+        bodySmallEmphasized = typographyTokens.bodySmallEmphasized,
+        labelLargeEmphasized = typographyTokens.labelLargeEmphasized,
+        labelMediumEmphasized = typographyTokens.labelMediumEmphasized,
+        labelSmallEmphasized = typographyTokens.labelSmallEmphasized,
     )
 }
diff --git a/packages/SystemUI/compose/core/src/com/android/compose/theme/typography/TypefaceTokens.kt b/packages/SystemUI/compose/core/src/com/android/compose/theme/typography/TypefaceTokens.kt
index 13acfd6..280b8d9 100644
--- a/packages/SystemUI/compose/core/src/com/android/compose/theme/typography/TypefaceTokens.kt
+++ b/packages/SystemUI/compose/core/src/com/android/compose/theme/typography/TypefaceTokens.kt
@@ -34,6 +34,29 @@
     private val brandFont = DeviceFontFamilyName(typefaceNames.brand)
     private val plainFont = DeviceFontFamilyName(typefaceNames.plain)
 
+    // Google Sans Flex emphasized styles
+    private val displayLargeEmphasizedFont =
+        DeviceFontFamilyName("variable-display-large-emphasized")
+    private val displayMediumEmphasizedFont =
+        DeviceFontFamilyName("variable-display-medium-emphasized")
+    private val displaySmallEmphasizedFont =
+        DeviceFontFamilyName("variable-display-small-emphasized")
+    private val headlineLargeEmphasizedFont =
+        DeviceFontFamilyName("variable-headline-large-emphasized")
+    private val headlineMediumEmphasizedFont =
+        DeviceFontFamilyName("variable-headline-medium-emphasized")
+    private val headlineSmallEmphasizedFont =
+        DeviceFontFamilyName("variable-headline-small-emphasized")
+    private val titleLargeEmphasizedFont = DeviceFontFamilyName("variable-title-large-emphasized")
+    private val titleMediumEmphasizedFont = DeviceFontFamilyName("variable-title-medium-emphasized")
+    private val titleSmallEmphasizedFont = DeviceFontFamilyName("variable-title-small-emphasized")
+    private val bodyLargeEmphasizedFont = DeviceFontFamilyName("variable-body-large-emphasized")
+    private val bodyMediumEmphasizedFont = DeviceFontFamilyName("variable-body-medium-emphasized")
+    private val bodySmallEmphasizedFont = DeviceFontFamilyName("variable-body-small-emphasized")
+    private val labelLargeEmphasizedFont = DeviceFontFamilyName("variable-label-large-emphasized")
+    private val labelMediumEmphasizedFont = DeviceFontFamilyName("variable-label-medium-emphasized")
+    private val labelSmallEmphasizedFont = DeviceFontFamilyName("variable-label-small-emphasized")
+
     val brand =
         FontFamily(
             Font(brandFont, weight = WeightMedium),
@@ -44,6 +67,22 @@
             Font(plainFont, weight = WeightMedium),
             Font(plainFont, weight = WeightRegular),
         )
+
+    val displayLargeEmphasized = FontFamily(Font(displayLargeEmphasizedFont))
+    val displayMediumEmphasized = FontFamily(Font(displayMediumEmphasizedFont))
+    val displaySmallEmphasized = FontFamily(Font(displaySmallEmphasizedFont))
+    val headlineLargeEmphasized = FontFamily(Font(headlineLargeEmphasizedFont))
+    val headlineMediumEmphasized = FontFamily(Font(headlineMediumEmphasizedFont))
+    val headlineSmallEmphasized = FontFamily(Font(headlineSmallEmphasizedFont))
+    val titleLargeEmphasized = FontFamily(Font(titleLargeEmphasizedFont))
+    val titleMediumEmphasized = FontFamily(Font(titleMediumEmphasizedFont))
+    val titleSmallEmphasized = FontFamily(Font(titleSmallEmphasizedFont))
+    val bodyLargeEmphasized = FontFamily(Font(bodyLargeEmphasizedFont))
+    val bodyMediumEmphasized = FontFamily(Font(bodyMediumEmphasizedFont))
+    val bodySmallEmphasized = FontFamily(Font(bodySmallEmphasizedFont))
+    val labelLargeEmphasized = FontFamily(Font(labelLargeEmphasizedFont))
+    val labelMediumEmphasized = FontFamily(Font(labelMediumEmphasizedFont))
+    val labelSmallEmphasized = FontFamily(Font(labelSmallEmphasizedFont))
 }
 
 internal data class TypefaceNames
diff --git a/packages/SystemUI/compose/core/src/com/android/compose/theme/typography/TypographyTokens.kt b/packages/SystemUI/compose/core/src/com/android/compose/theme/typography/TypographyTokens.kt
index 38aadb8..4115647 100644
--- a/packages/SystemUI/compose/core/src/com/android/compose/theme/typography/TypographyTokens.kt
+++ b/packages/SystemUI/compose/core/src/com/android/compose/theme/typography/TypographyTokens.kt
@@ -18,7 +18,10 @@
 
 import androidx.compose.ui.text.TextStyle
 
-internal class TypographyTokens(typeScaleTokens: TypeScaleTokens) {
+internal class TypographyTokens(
+    typeScaleTokens: TypeScaleTokens,
+    variableTypeScaleTokens: VariableFontTypeScaleEmphasizedTokens,
+) {
     val bodyLarge =
         TextStyle(
             fontFamily = typeScaleTokens.bodyLargeFont,
@@ -139,4 +142,112 @@
             lineHeight = typeScaleTokens.titleSmallLineHeight,
             letterSpacing = typeScaleTokens.titleSmallTracking,
         )
+    // GSF emphasized styles
+    // note: we don't need to define fontWeight or axes values because they are pre-defined
+    // as part of the font family in fonts_customization.xml (for performance optimization)
+    val displayLargeEmphasized =
+        TextStyle(
+            fontFamily = variableTypeScaleTokens.displayLargeFont,
+            fontSize = variableTypeScaleTokens.displayLargeSize,
+            lineHeight = variableTypeScaleTokens.displayLargeLineHeight,
+            letterSpacing = variableTypeScaleTokens.displayLargeTracking,
+        )
+    val displayMediumEmphasized =
+        TextStyle(
+            fontFamily = variableTypeScaleTokens.displayMediumFont,
+            fontSize = variableTypeScaleTokens.displayMediumSize,
+            lineHeight = variableTypeScaleTokens.displayMediumLineHeight,
+            letterSpacing = variableTypeScaleTokens.displayMediumTracking,
+        )
+    val displaySmallEmphasized =
+        TextStyle(
+            fontFamily = variableTypeScaleTokens.displaySmallFont,
+            fontSize = variableTypeScaleTokens.displaySmallSize,
+            lineHeight = variableTypeScaleTokens.displaySmallLineHeight,
+            letterSpacing = variableTypeScaleTokens.displaySmallTracking,
+        )
+    val headlineLargeEmphasized =
+        TextStyle(
+            fontFamily = variableTypeScaleTokens.headlineLargeFont,
+            fontSize = variableTypeScaleTokens.headlineLargeSize,
+            lineHeight = variableTypeScaleTokens.headlineLargeLineHeight,
+            letterSpacing = variableTypeScaleTokens.headlineLargeTracking,
+        )
+    val headlineMediumEmphasized =
+        TextStyle(
+            fontFamily = variableTypeScaleTokens.headlineMediumFont,
+            fontSize = variableTypeScaleTokens.headlineMediumSize,
+            lineHeight = variableTypeScaleTokens.headlineMediumLineHeight,
+            letterSpacing = variableTypeScaleTokens.headlineMediumTracking,
+        )
+    val headlineSmallEmphasized =
+        TextStyle(
+            fontFamily = variableTypeScaleTokens.headlineSmallFont,
+            fontSize = variableTypeScaleTokens.headlineSmallSize,
+            lineHeight = variableTypeScaleTokens.headlineSmallLineHeight,
+            letterSpacing = variableTypeScaleTokens.headlineSmallTracking,
+        )
+    val titleLargeEmphasized =
+        TextStyle(
+            fontFamily = variableTypeScaleTokens.titleLargeFont,
+            fontSize = variableTypeScaleTokens.titleLargeSize,
+            lineHeight = variableTypeScaleTokens.titleLargeLineHeight,
+            letterSpacing = variableTypeScaleTokens.titleLargeTracking,
+        )
+    val titleMediumEmphasized =
+        TextStyle(
+            fontFamily = variableTypeScaleTokens.titleMediumFont,
+            fontSize = variableTypeScaleTokens.titleMediumSize,
+            lineHeight = variableTypeScaleTokens.titleMediumLineHeight,
+            letterSpacing = variableTypeScaleTokens.titleMediumTracking,
+        )
+    val titleSmallEmphasized =
+        TextStyle(
+            fontFamily = variableTypeScaleTokens.titleSmallFont,
+            fontSize = variableTypeScaleTokens.titleSmallSize,
+            lineHeight = variableTypeScaleTokens.titleSmallLineHeight,
+            letterSpacing = variableTypeScaleTokens.titleSmallTracking,
+        )
+    val bodyLargeEmphasized =
+        TextStyle(
+            fontFamily = variableTypeScaleTokens.bodyLargeFont,
+            fontSize = variableTypeScaleTokens.bodyLargeSize,
+            lineHeight = variableTypeScaleTokens.bodyLargeLineHeight,
+            letterSpacing = variableTypeScaleTokens.bodyLargeTracking,
+        )
+    val bodyMediumEmphasized =
+        TextStyle(
+            fontFamily = variableTypeScaleTokens.bodyMediumFont,
+            fontSize = variableTypeScaleTokens.bodyMediumSize,
+            lineHeight = variableTypeScaleTokens.bodyMediumLineHeight,
+            letterSpacing = variableTypeScaleTokens.bodyMediumTracking,
+        )
+    val bodySmallEmphasized =
+        TextStyle(
+            fontFamily = variableTypeScaleTokens.bodySmallFont,
+            fontSize = variableTypeScaleTokens.bodySmallSize,
+            lineHeight = variableTypeScaleTokens.bodySmallLineHeight,
+            letterSpacing = variableTypeScaleTokens.bodySmallTracking,
+        )
+    val labelLargeEmphasized =
+        TextStyle(
+            fontFamily = variableTypeScaleTokens.labelLargeFont,
+            fontSize = variableTypeScaleTokens.labelLargeSize,
+            lineHeight = variableTypeScaleTokens.labelLargeLineHeight,
+            letterSpacing = variableTypeScaleTokens.labelLargeTracking,
+        )
+    val labelMediumEmphasized =
+        TextStyle(
+            fontFamily = variableTypeScaleTokens.labelMediumFont,
+            fontSize = variableTypeScaleTokens.labelMediumSize,
+            lineHeight = variableTypeScaleTokens.labelMediumLineHeight,
+            letterSpacing = variableTypeScaleTokens.labelMediumTracking,
+        )
+    val labelSmallEmphasized =
+        TextStyle(
+            fontFamily = variableTypeScaleTokens.labelSmallFont,
+            fontSize = variableTypeScaleTokens.labelSmallSize,
+            lineHeight = variableTypeScaleTokens.labelSmallLineHeight,
+            letterSpacing = variableTypeScaleTokens.labelSmallTracking,
+        )
 }
diff --git a/packages/SystemUI/compose/core/src/com/android/compose/theme/typography/VariableFontTypeScaleEmphasizedTokens.kt b/packages/SystemUI/compose/core/src/com/android/compose/theme/typography/VariableFontTypeScaleEmphasizedTokens.kt
new file mode 100644
index 0000000..52b9390
--- /dev/null
+++ b/packages/SystemUI/compose/core/src/com/android/compose/theme/typography/VariableFontTypeScaleEmphasizedTokens.kt
@@ -0,0 +1,82 @@
+/*
+ * Copyright (C) 2025 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.compose.theme.typography
+
+import androidx.compose.ui.unit.sp
+
+internal class VariableFontTypeScaleEmphasizedTokens(typefaceTokens: TypefaceTokens) {
+    val bodyLargeFont = typefaceTokens.bodyLargeEmphasized
+    val bodyLargeLineHeight = 24.0.sp
+    val bodyLargeSize = 16.sp
+    val bodyLargeTracking = 0.0.sp
+    val bodyMediumFont = typefaceTokens.bodyMediumEmphasized
+    val bodyMediumLineHeight = 20.0.sp
+    val bodyMediumSize = 14.sp
+    val bodyMediumTracking = 0.0.sp
+    val bodySmallFont = typefaceTokens.bodySmallEmphasized
+    val bodySmallLineHeight = 16.0.sp
+    val bodySmallSize = 12.sp
+    val bodySmallTracking = 0.0.sp
+    val displayLargeFont = typefaceTokens.displayLargeEmphasized
+    val displayLargeLineHeight = 64.0.sp
+    val displayLargeSize = 57.sp
+    val displayLargeTracking = 0.0.sp
+    val displayMediumFont = typefaceTokens.displayMediumEmphasized
+    val displayMediumLineHeight = 52.0.sp
+    val displayMediumSize = 45.sp
+    val displayMediumTracking = 0.0.sp
+    val displaySmallFont = typefaceTokens.displaySmallEmphasized
+    val displaySmallLineHeight = 44.0.sp
+    val displaySmallSize = 36.sp
+    val displaySmallTracking = 0.0.sp
+    val headlineLargeFont = typefaceTokens.headlineLargeEmphasized
+    val headlineLargeLineHeight = 40.0.sp
+    val headlineLargeSize = 32.sp
+    val headlineLargeTracking = 0.0.sp
+    val headlineMediumFont = typefaceTokens.headlineMediumEmphasized
+    val headlineMediumLineHeight = 36.0.sp
+    val headlineMediumSize = 28.sp
+    val headlineMediumTracking = 0.0.sp
+    val headlineSmallFont = typefaceTokens.headlineSmallEmphasized
+    val headlineSmallLineHeight = 32.0.sp
+    val headlineSmallSize = 24.sp
+    val headlineSmallTracking = 0.0.sp
+    val labelLargeFont = typefaceTokens.labelLargeEmphasized
+    val labelLargeLineHeight = 20.0.sp
+    val labelLargeSize = 14.sp
+    val labelLargeTracking = 0.0.sp
+    val labelMediumFont = typefaceTokens.labelMediumEmphasized
+    val labelMediumLineHeight = 16.0.sp
+    val labelMediumSize = 12.sp
+    val labelMediumTracking = 0.0.sp
+    val labelSmallFont = typefaceTokens.labelSmallEmphasized
+    val labelSmallLineHeight = 16.0.sp
+    val labelSmallSize = 11.sp
+    val labelSmallTracking = 0.0.sp
+    val titleLargeFont = typefaceTokens.titleLargeEmphasized
+    val titleLargeLineHeight = 28.0.sp
+    val titleLargeSize = 22.sp
+    val titleLargeTracking = 0.0.sp
+    val titleMediumFont = typefaceTokens.titleMediumEmphasized
+    val titleMediumLineHeight = 24.0.sp
+    val titleMediumSize = 16.sp
+    val titleMediumTracking = 0.0.sp
+    val titleSmallFont = typefaceTokens.titleSmallEmphasized
+    val titleSmallLineHeight = 20.0.sp
+    val titleSmallSize = 14.sp
+    val titleSmallTracking = 0.0.sp
+}
diff --git a/packages/SystemUI/compose/core/src/com/android/compose/ui/graphics/DrawInOverlay.kt b/packages/SystemUI/compose/core/src/com/android/compose/ui/graphics/DrawInOverlay.kt
index 089da4b..d5436d3 100644
--- a/packages/SystemUI/compose/core/src/com/android/compose/ui/graphics/DrawInOverlay.kt
+++ b/packages/SystemUI/compose/core/src/com/android/compose/ui/graphics/DrawInOverlay.kt
@@ -47,15 +47,18 @@
 }
 
 @Composable
-internal fun FullScreenComposeViewInOverlay(modifier: (ComposeView) -> Modifier = { Modifier }) {
+internal fun FullScreenComposeViewInOverlay(
+    overlay: ViewGroupOverlay? = null,
+    modifier: (ComposeView) -> Modifier = { Modifier },
+) {
     val context = LocalContext.current
     val localView = LocalView.current
     val compositionContext = rememberCompositionContext()
     val displayMetrics = context.resources.displayMetrics
     val displaySize = IntSize(displayMetrics.widthPixels, displayMetrics.heightPixels)
+    val overlay = overlay ?: localView.rootView.overlay as ViewGroupOverlay
 
-    DisposableEffect(context, localView, compositionContext, displaySize) {
-        val overlay = localView.rootView.overlay as ViewGroupOverlay
+    DisposableEffect(context, localView, overlay, compositionContext, displaySize) {
         val view =
             ComposeView(context).apply {
                 setParentCompositionContext(compositionContext)
diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/bouncer/ui/composable/BouncerOverlay.kt b/packages/SystemUI/compose/features/src/com/android/systemui/bouncer/ui/composable/BouncerOverlay.kt
index 48dee24..f1b273a 100644
--- a/packages/SystemUI/compose/features/src/com/android/systemui/bouncer/ui/composable/BouncerOverlay.kt
+++ b/packages/SystemUI/compose/features/src/com/android/systemui/bouncer/ui/composable/BouncerOverlay.kt
@@ -24,6 +24,7 @@
 import androidx.compose.runtime.Composable
 import androidx.compose.runtime.DisposableEffect
 import androidx.compose.ui.Modifier
+import androidx.compose.ui.platform.testTag
 import com.android.compose.animation.scene.ContentScope
 import com.android.compose.animation.scene.ElementKey
 import com.android.compose.animation.scene.UserAction
@@ -102,6 +103,8 @@
             viewModel,
             dialogFactory,
             Modifier.element(Bouncer.Elements.Content)
+                // TODO(b/393516240): Use the same sysuiResTag() as views instead.
+                .testTag(Bouncer.Elements.Content.testTag)
                 .overscroll(verticalOverscrollEffect)
                 .sysuiResTag(Bouncer.TestTags.Root)
                 .fillMaxSize(),
diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/communal/ui/compose/CommunalContainer.kt b/packages/SystemUI/compose/features/src/com/android/systemui/communal/ui/compose/CommunalContainer.kt
index 9b76f15..4e1aab5 100644
--- a/packages/SystemUI/compose/features/src/com/android/systemui/communal/ui/compose/CommunalContainer.kt
+++ b/packages/SystemUI/compose/features/src/com/android/systemui/communal/ui/compose/CommunalContainer.kt
@@ -282,6 +282,7 @@
             CommunalBackgroundType.ANIMATED -> AnimatedLinearGradient()
             CommunalBackgroundType.NONE -> BackgroundTopScrim()
             CommunalBackgroundType.BLUR -> Background()
+            CommunalBackgroundType.SCRIM -> Scrimmed()
         }
 
         with(content) {
@@ -304,6 +305,11 @@
     Box(modifier = Modifier.matchParentSize().background(Color(backgroundColor.toArgb())))
 }
 
+@Composable
+private fun BoxScope.Scrimmed() {
+    Box(modifier = Modifier.matchParentSize().alpha(0.34f).background(Color.Black))
+}
+
 /** Experimental hub background, static linear gradient */
 @Composable
 private fun BoxScope.StaticLinearGradient() {
diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/LockscreenScene.kt b/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/LockscreenScene.kt
index 5e61af6..aa07370 100644
--- a/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/LockscreenScene.kt
+++ b/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/LockscreenScene.kt
@@ -19,6 +19,7 @@
 import androidx.compose.foundation.layout.fillMaxSize
 import androidx.compose.runtime.Composable
 import androidx.compose.ui.Modifier
+import androidx.compose.ui.platform.testTag
 import com.android.compose.animation.scene.ContentScope
 import com.android.compose.animation.scene.UserAction
 import com.android.compose.animation.scene.UserActionResult
@@ -55,7 +56,11 @@
 
     @Composable
     override fun ContentScope.Content(modifier: Modifier) {
-        LockscreenScene(lockscreenContent = lockscreenContent, modifier = modifier)
+        LockscreenScene(
+            lockscreenContent = lockscreenContent,
+            // TODO(b/393516240): Use the same sysuiResTag() as views instead.
+            modifier = modifier.testTag(key.rootElementKey.testTag),
+        )
     }
 }
 
diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/section/BottomAreaSection.kt b/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/section/BottomAreaSection.kt
index 52ccab3..ec7e495 100644
--- a/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/section/BottomAreaSection.kt
+++ b/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/section/BottomAreaSection.kt
@@ -70,33 +70,29 @@
             key = if (isStart) StartButtonElementKey else EndButtonElementKey,
             modifier = modifier,
         ) {
-            content {
-                Shortcut(
-                    viewId = if (isStart) R.id.start_button else R.id.end_button,
-                    viewModel = if (isStart) viewModel.startButton else viewModel.endButton,
-                    transitionAlpha = viewModel.transitionAlpha,
-                    indicationController = indicationController,
-                    binder = keyguardQuickAffordanceViewBinder,
-                    modifier =
-                        if (applyPadding) {
-                            Modifier.shortcutPadding()
-                        } else {
-                            Modifier
-                        },
-                )
-            }
+            Shortcut(
+                viewId = if (isStart) R.id.start_button else R.id.end_button,
+                viewModel = if (isStart) viewModel.startButton else viewModel.endButton,
+                transitionAlpha = viewModel.transitionAlpha,
+                indicationController = indicationController,
+                binder = keyguardQuickAffordanceViewBinder,
+                modifier =
+                    if (applyPadding) {
+                        Modifier.shortcutPadding()
+                    } else {
+                        Modifier
+                    },
+            )
         }
     }
 
     @Composable
     fun ContentScope.IndicationArea(modifier: Modifier = Modifier) {
         Element(key = IndicationAreaElementKey, modifier = modifier.indicationAreaPadding()) {
-            content {
-                IndicationArea(
-                    indicationAreaViewModel = indicationAreaViewModel,
-                    indicationController = indicationController,
-                )
-            }
+            IndicationArea(
+                indicationAreaViewModel = indicationAreaViewModel,
+                indicationController = indicationController,
+            )
         }
     }
 
diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/section/DefaultClockSection.kt b/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/section/DefaultClockSection.kt
index ae541dd..0583e8a 100644
--- a/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/section/DefaultClockSection.kt
+++ b/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/section/DefaultClockSection.kt
@@ -26,11 +26,9 @@
 import androidx.compose.runtime.Composable
 import androidx.compose.runtime.LaunchedEffect
 import androidx.compose.runtime.getValue
-import androidx.compose.runtime.key
 import androidx.compose.ui.Modifier
 import androidx.compose.ui.res.dimensionResource
 import androidx.compose.ui.viewinterop.AndroidView
-import androidx.core.view.contains
 import androidx.lifecycle.compose.collectAsStateWithLifecycle
 import com.android.compose.animation.scene.ContentScope
 import com.android.compose.modifiers.padding
@@ -132,18 +130,16 @@
         }
 
         Element(key = largeClockElementKey, modifier = modifier) {
-            content {
-                ClockView(
-                    checkNotNull(currentClock).largeClock.view,
-                    modifier =
-                        Modifier.fillMaxSize()
-                            .burnInAware(
-                                viewModel = aodBurnInViewModel,
-                                params = burnInParams,
-                                isClock = true,
-                            ),
-                )
-            }
+            ClockView(
+                checkNotNull(currentClock).largeClock.view,
+                modifier =
+                    Modifier.fillMaxSize()
+                        .burnInAware(
+                            viewModel = aodBurnInViewModel,
+                            params = burnInParams,
+                            isClock = true,
+                        ),
+            )
         }
     }
 
diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/section/SmartSpaceSection.kt b/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/section/SmartSpaceSection.kt
index c3ba7ab..505044a 100644
--- a/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/section/SmartSpaceSection.kt
+++ b/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/section/SmartSpaceSection.kt
@@ -66,64 +66,61 @@
         val resources = LocalContext.current.resources
 
         Element(key = ClockElementKeys.smartspaceElementKey, modifier = modifier) {
-            content {
-                Column(
-                    modifier =
-                        modifier
-                            .onTopPlacementChanged(onTopChanged)
-                            .padding(
-                                top = { smartSpacePaddingTop(resources) },
-                                bottom = {
-                                    resources.getDimensionPixelSize(
-                                        R.dimen.keyguard_status_view_bottom_margin
-                                    )
-                                },
-                            )
-                ) {
-                    if (!keyguardSmartspaceViewModel.isSmartspaceEnabled) {
-                        return@Column
-                    }
+            Column(
+                modifier =
+                    modifier
+                        .onTopPlacementChanged(onTopChanged)
+                        .padding(
+                            top = { smartSpacePaddingTop(resources) },
+                            bottom = {
+                                resources.getDimensionPixelSize(
+                                    R.dimen.keyguard_status_view_bottom_margin
+                                )
+                            },
+                        )
+            ) {
+                if (!keyguardSmartspaceViewModel.isSmartspaceEnabled) {
+                    return@Column
+                }
 
-                    val paddingBelowClockStart =
-                        dimensionResource(R.dimen.below_clock_padding_start)
-                    val paddingBelowClockEnd = dimensionResource(R.dimen.below_clock_padding_end)
-                    val paddingCardHorizontal = paddingBelowClockEnd
+                val paddingBelowClockStart = dimensionResource(R.dimen.below_clock_padding_start)
+                val paddingBelowClockEnd = dimensionResource(R.dimen.below_clock_padding_end)
+                val paddingCardHorizontal = paddingBelowClockEnd
 
-                    if (keyguardSmartspaceViewModel.isDateWeatherDecoupled) {
-                        Row(
-                            verticalAlignment = Alignment.CenterVertically,
-                            modifier =
-                                Modifier.fillMaxWidth()
-                                    // All items will be constrained to be as tall as the shortest
-                                    // item.
-                                    .height(IntrinsicSize.Min)
-                                    .padding(start = paddingBelowClockStart),
-                        ) {
-                            Date(
-                                modifier =
-                                    Modifier.burnInAware(
-                                        viewModel = aodBurnInViewModel,
-                                        params = burnInParams,
-                                    )
-                            )
-                            Spacer(modifier = Modifier.width(4.dp))
-                            Weather(
-                                modifier =
-                                    Modifier.burnInAware(
-                                        viewModel = aodBurnInViewModel,
-                                        params = burnInParams,
-                                    )
-                            )
-                        }
-                    }
-
-                    Card(
+                if (keyguardSmartspaceViewModel.isDateWeatherDecoupled) {
+                    Row(
+                        verticalAlignment = Alignment.CenterVertically,
                         modifier =
                             Modifier.fillMaxWidth()
-                                .padding(start = paddingCardHorizontal, end = paddingCardHorizontal)
-                                .burnInAware(viewModel = aodBurnInViewModel, params = burnInParams)
-                    )
+                                // All items will be constrained to be as tall as the shortest
+                                // item.
+                                .height(IntrinsicSize.Min)
+                                .padding(start = paddingBelowClockStart),
+                    ) {
+                        Date(
+                            modifier =
+                                Modifier.burnInAware(
+                                    viewModel = aodBurnInViewModel,
+                                    params = burnInParams,
+                                )
+                        )
+                        Spacer(modifier = Modifier.width(4.dp))
+                        Weather(
+                            modifier =
+                                Modifier.burnInAware(
+                                    viewModel = aodBurnInViewModel,
+                                    params = burnInParams,
+                                )
+                        )
+                    }
                 }
+
+                Card(
+                    modifier =
+                        Modifier.fillMaxWidth()
+                            .padding(start = paddingCardHorizontal, end = paddingCardHorizontal)
+                            .burnInAware(viewModel = aodBurnInViewModel, params = burnInParams)
+                )
             }
         }
     }
@@ -162,7 +159,7 @@
             factory = { context ->
                 FrameLayout(context).apply {
                     addView(
-                        lockscreenSmartspaceController.buildAndConnectWeatherView(this).apply {
+                        lockscreenSmartspaceController.buildAndConnectWeatherView(this, false).apply {
                             layoutParams =
                                 FrameLayout.LayoutParams(
                                     FrameLayout.LayoutParams.WRAP_CONTENT,
@@ -187,7 +184,7 @@
             factory = { context ->
                 FrameLayout(context).apply {
                     addView(
-                        lockscreenSmartspaceController.buildAndConnectDateView(this).apply {
+                        lockscreenSmartspaceController.buildAndConnectDateView(this, false).apply {
                             layoutParams =
                                 FrameLayout.LayoutParams(
                                     FrameLayout.LayoutParams.WRAP_CONTENT,
diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/section/WeatherClockSection.kt b/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/section/WeatherClockSection.kt
index 4fcb5ca..a8b2b13 100644
--- a/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/section/WeatherClockSection.kt
+++ b/packages/SystemUI/compose/features/src/com/android/systemui/keyguard/ui/composable/section/WeatherClockSection.kt
@@ -24,7 +24,6 @@
 import androidx.compose.foundation.layout.padding
 import androidx.compose.foundation.layout.wrapContentSize
 import androidx.compose.runtime.Composable
-import androidx.compose.runtime.key
 import androidx.compose.ui.Alignment
 import androidx.compose.ui.Modifier
 import androidx.compose.ui.res.dimensionResource
@@ -109,14 +108,10 @@
         modifier: Modifier = Modifier,
     ) {
         Element(key = elementKey, modifier) {
-            content {
-                ClockView(
-                    clock.largeClock.layout.views.firstOrNull {
-                        it.id == weatherClockElementViewId
-                    },
-                    modifier,
-                )
-            }
+            ClockView(
+                clock.largeClock.layout.views.firstOrNull { it.id == weatherClockElementViewId },
+                modifier,
+            )
         }
     }
 
diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/qs/footer/ui/compose/FooterActions.kt b/packages/SystemUI/compose/features/src/com/android/systemui/qs/footer/ui/compose/FooterActions.kt
index 9c85c96..60c01722 100644
--- a/packages/SystemUI/compose/features/src/com/android/systemui/qs/footer/ui/compose/FooterActions.kt
+++ b/packages/SystemUI/compose/features/src/com/android/systemui/qs/footer/ui/compose/FooterActions.kt
@@ -116,11 +116,9 @@
         QuickSettingsTheme {
             // This view has its own horizontal padding
             // TODO(b/321716470) This should use a lifecycle tied to the scene.
-            FooterActions(
-                viewModel = viewModel,
-                qsVisibilityLifecycleOwner = lifecycleOwner,
-                modifier = Modifier.element(QuickSettings.Elements.FooterActions),
-            )
+            Element(QuickSettings.Elements.FooterActions, Modifier) {
+                FooterActions(viewModel = viewModel, qsVisibilityLifecycleOwner = lifecycleOwner)
+            }
         }
     }
 }
diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/shade/ui/composable/ShadeHeader.kt b/packages/SystemUI/compose/features/src/com/android/systemui/shade/ui/composable/ShadeHeader.kt
index db9035b..23baeac 100644
--- a/packages/SystemUI/compose/features/src/com/android/systemui/shade/ui/composable/ShadeHeader.kt
+++ b/packages/SystemUI/compose/features/src/com/android/systemui/shade/ui/composable/ShadeHeader.kt
@@ -440,33 +440,36 @@
 private fun ContentScope.Clock(scale: Float, onClick: () -> Unit, modifier: Modifier = Modifier) {
     val layoutDirection = LocalLayoutDirection.current
 
-    Element(key = ShadeHeader.Elements.Clock, modifier = modifier) {
+    ElementWithValues(key = ShadeHeader.Elements.Clock, modifier = modifier) {
         val animatedScale by animateElementFloatAsState(scale, ClockScale, canOverflow = false)
-        AndroidView(
-            factory = { context ->
-                Clock(
-                    ContextThemeWrapper(context, R.style.Theme_SystemUI_QuickSettings_Header),
-                    null,
-                )
-            },
-            modifier =
-                modifier
-                    // use graphicsLayer instead of Modifier.scale to anchor transform
-                    // to the (start, top) corner
-                    .graphicsLayer {
-                        scaleX = animatedScale
-                        scaleY = animatedScale
-                        transformOrigin =
-                            TransformOrigin(
-                                when (layoutDirection) {
-                                    LayoutDirection.Ltr -> 0f
-                                    LayoutDirection.Rtl -> 1f
-                                },
-                                0.5f,
-                            )
-                    }
-                    .clickable { onClick() },
-        )
+
+        content {
+            AndroidView(
+                factory = { context ->
+                    Clock(
+                        ContextThemeWrapper(context, R.style.Theme_SystemUI_QuickSettings_Header),
+                        null,
+                    )
+                },
+                modifier =
+                    modifier
+                        // use graphicsLayer instead of Modifier.scale to anchor transform to the
+                        // (start, top) corner
+                        .graphicsLayer {
+                            scaleX = animatedScale
+                            scaleY = animatedScale
+                            transformOrigin =
+                                TransformOrigin(
+                                    when (layoutDirection) {
+                                        LayoutDirection.Ltr -> 0f
+                                        LayoutDirection.Rtl -> 1f
+                                    },
+                                    0.5f,
+                                )
+                        }
+                        .clickable { onClick() },
+            )
+        }
     }
 }
 
diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/volume/panel/component/volume/ui/composable/VolumeSlider.kt b/packages/SystemUI/compose/features/src/com/android/systemui/volume/panel/component/volume/ui/composable/VolumeSlider.kt
index b11c83c..4b3ebc2 100644
--- a/packages/SystemUI/compose/features/src/com/android/systemui/volume/panel/component/volume/ui/composable/VolumeSlider.kt
+++ b/packages/SystemUI/compose/features/src/com/android/systemui/volume/panel/component/volume/ui/composable/VolumeSlider.kt
@@ -35,9 +35,9 @@
 import androidx.compose.foundation.layout.height
 import androidx.compose.foundation.layout.padding
 import androidx.compose.foundation.layout.size
+import androidx.compose.material3.ExperimentalMaterial3Api
 import androidx.compose.material3.Icon as MaterialIcon
 import androidx.compose.material3.MaterialTheme
-import androidx.compose.material3.Slider
 import androidx.compose.material3.Text
 import androidx.compose.runtime.Composable
 import androidx.compose.runtime.LaunchedEffect
@@ -73,11 +73,15 @@
 import com.android.systemui.res.R
 import com.android.systemui.volume.haptics.ui.VolumeHapticsConfigsProvider
 import com.android.systemui.volume.panel.component.volume.slider.ui.viewmodel.SliderState
+import com.android.systemui.volume.ui.slider.AccessibilityParams
+import com.android.systemui.volume.ui.slider.Haptics
+import com.android.systemui.volume.ui.slider.Slider
 import kotlin.math.round
 import kotlinx.coroutines.flow.distinctUntilChanged
 import kotlinx.coroutines.flow.filter
 import kotlinx.coroutines.flow.map
 
+@OptIn(ExperimentalMaterial3Api::class)
 @Composable
 fun VolumeSlider(
     state: SliderState,
@@ -102,17 +106,6 @@
         return
     }
 
-    val value by valueState(state)
-    val interactionSource = remember { MutableInteractionSource() }
-    val hapticsViewModel: SliderHapticsViewModel? =
-        setUpHapticsViewModel(
-            value,
-            state.valueRange,
-            state.hapticFilter,
-            interactionSource,
-            hapticsViewModelFactory,
-        )
-
     Column(modifier = modifier.animateContentSize(), verticalArrangement = Arrangement.Top) {
         Row(
             horizontalArrangement = Arrangement.spacedBy(12.dp),
@@ -134,60 +127,30 @@
             )
             button?.invoke()
         }
+
         Slider(
-            value = value,
+            value = state.value,
             valueRange = state.valueRange,
-            onValueChange = { newValue ->
-                hapticsViewModel?.addVelocityDataPoint(newValue)
-                onValueChange(newValue)
-            },
-            onValueChangeFinished = {
-                hapticsViewModel?.onValueChangeEnded()
-                onValueChangeFinished?.invoke()
-            },
-            enabled = state.isEnabled,
+            onValueChanged = onValueChange,
+            onValueChangeFinished = { onValueChangeFinished?.invoke() },
+            isEnabled = state.isEnabled,
+            stepDistance = state.a11yStep,
+            accessibilityParams =
+                AccessibilityParams(
+                    label = state.label,
+                    disabledMessage = state.disabledMessage,
+                    currentStateDescription = state.a11yStateDescription,
+                ),
+            haptics =
+                hapticsViewModelFactory?.let {
+                    Haptics.Enabled(
+                        hapticsViewModelFactory = it,
+                        hapticFilter = state.hapticFilter,
+                        orientation = Orientation.Horizontal,
+                    )
+                } ?: Haptics.Disabled,
             modifier =
-                Modifier.height(40.dp)
-                    .padding(top = 4.dp, bottom = 12.dp)
-                    .sysuiResTag(state.label)
-                    .clearAndSetSemantics {
-                        if (state.isEnabled) {
-                            contentDescription = state.label
-                            state.a11yClickDescription?.let {
-                                customActions =
-                                    listOf(
-                                        CustomAccessibilityAction(it) {
-                                            onIconTapped()
-                                            true
-                                        }
-                                    )
-                            }
-
-                            state.a11yStateDescription?.let { stateDescription = it }
-                            progressBarRangeInfo =
-                                ProgressBarRangeInfo(state.value, state.valueRange)
-                        } else {
-                            disabled()
-                            contentDescription =
-                                state.disabledMessage?.let { "${state.label}, $it" } ?: state.label
-                        }
-                        setProgress { targetValue ->
-                            val targetDirection =
-                                when {
-                                    targetValue > value -> 1
-                                    targetValue < value -> -1
-                                    else -> 0
-                                }
-
-                            val newValue =
-                                (value + targetDirection * state.a11yStep).coerceIn(
-                                    state.valueRange.start,
-                                    state.valueRange.endInclusive,
-                                )
-                            onValueChange(newValue)
-                            true
-                        }
-                    },
+                Modifier.height(40.dp).padding(top = 4.dp, bottom = 12.dp).sysuiResTag(state.label),
         )
         state.disabledMessage?.let { disabledMessage ->
             AnimatedVisibility(visible = !state.isEnabled) {
@@ -348,7 +311,7 @@
 }
 
 @Composable
-fun setUpHapticsViewModel(
+private fun setUpHapticsViewModel(
     value: Float,
     valueRange: ClosedFloatingPointRange<Float>,
     hapticFilter: SliderHapticFeedbackFilter,
diff --git a/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/Element.kt b/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/Element.kt
index 907b5bc..05958a2 100644
--- a/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/Element.kt
+++ b/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/Element.kt
@@ -169,7 +169,7 @@
             Modifier.maybeElevateInContent(layoutImpl, content, key, currentTransitionStates)
         }
         .then(ElementModifier(layoutImpl, currentTransitionStates, content, key))
-        .testTag(key.testTag)
+        .thenIf(layoutImpl.implicitTestTags) { Modifier.testTag(key.testTag) }
 }
 
 /**
diff --git a/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/MovableElement.kt b/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/MovableElement.kt
index f4af5f0..eab5206 100644
--- a/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/MovableElement.kt
+++ b/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/MovableElement.kt
@@ -35,6 +35,21 @@
     sceneOrOverlay: Content,
     key: ElementKey,
     modifier: Modifier,
+    content: @Composable BoxScope.() -> Unit,
+) {
+    Box(
+        modifier.element(layoutImpl, sceneOrOverlay, key),
+        propagateMinConstraints = true,
+        content = content,
+    )
+}
+
+@Composable
+internal fun ElementWithValues(
+    layoutImpl: SceneTransitionLayoutImpl,
+    sceneOrOverlay: Content,
+    key: ElementKey,
+    modifier: Modifier,
     content: @Composable ElementScope<ElementContentScope>.() -> Unit,
 ) {
     Box(modifier.element(layoutImpl, sceneOrOverlay, key), propagateMinConstraints = true) {
diff --git a/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/SceneTransitionLayout.kt b/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/SceneTransitionLayout.kt
index f423bab..404f1b2 100644
--- a/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/SceneTransitionLayout.kt
+++ b/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/SceneTransitionLayout.kt
@@ -22,6 +22,7 @@
 import androidx.compose.foundation.OverscrollEffect
 import androidx.compose.foundation.OverscrollFactory
 import androidx.compose.foundation.gestures.Orientation
+import androidx.compose.foundation.layout.BoxScope
 import androidx.compose.runtime.Composable
 import androidx.compose.runtime.SideEffect
 import androidx.compose.runtime.Stable
@@ -65,6 +66,8 @@
     swipeSourceDetector: SwipeSourceDetector = DefaultEdgeDetector,
     swipeDetector: SwipeDetector = DefaultSwipeDetector,
     @FloatRange(from = 0.0, to = 0.5) transitionInterceptionThreshold: Float = 0.05f,
+    // TODO(b/240432457) Remove this once test utils can access the internal STLForTesting().
+    implicitTestTags: Boolean = false,
     builder: SceneTransitionLayoutScope<ContentScope>.() -> Unit,
 ) {
     SceneTransitionLayoutForTesting(
@@ -73,6 +76,7 @@
         swipeSourceDetector,
         swipeDetector,
         transitionInterceptionThreshold,
+        implicitTestTags = implicitTestTags,
         onLayoutImpl = null,
         builder = builder,
     )
@@ -188,7 +192,7 @@
      * Additionally, this [key] will be used to detect elements that are shared between contents to
      * automatically interpolate their size and offset. If you need to animate shared element values
      * (i.e. values associated to this element that change depending on which content it is composed
-     * in), use [Element] instead.
+     * in), use [ElementWithValues] instead.
      *
      * Note that shared elements tagged using this function will be duplicated in each content they
      * are part of, so any **internal** state (e.g. state created using `remember {
@@ -196,9 +200,12 @@
      * [MovableElement] instead.
      *
      * @see Element
+     * @see ElementWithValues
      * @see MovableElement
      */
-    fun Modifier.element(key: ElementKey): Modifier
+    // TODO(b/389985793): Does replacing this by Element have a noticeable impact on performance and
+    // should we deprecate it?
+    @Stable fun Modifier.element(key: ElementKey): Modifier
 
     /**
      * Create an element identified by [key].
@@ -207,17 +214,29 @@
      * in multiple contents and that can be transformed during transitions, the same way that
      * [element] does.
      *
-     * The only difference with [element] is that the provided [ElementScope] allows you to
-     * [animate element values][ElementScope.animateElementValueAsState] or specify its
-     * [movable content][Element.movableContent] that will be "moved" and composed only once during
-     * transitions (as opposed to [element] that duplicates shared elements) so that any internal
-     * state is preserved during and after the transition.
+     * The only difference with [element] is that [Element] introduces its own recomposition scope
+     * and layout node, which can be helpful to avoid expensive recompositions when a transition is
+     * started or finished (see b/389985793#comment103 for details).
      *
      * @see element
+     * @see ElementWithValues
      * @see MovableElement
      */
     @Composable
-    fun Element(
+    fun Element(key: ElementKey, modifier: Modifier, content: @Composable BoxScope.() -> Unit)
+
+    /**
+     * Create an element identified by [key].
+     *
+     * The only difference with [Element] is that the provided [ElementScope] allows you to
+     * [animate element values][ElementScope.animateElementValueAsState].
+     *
+     * @see element
+     * @see Element
+     * @see MovableElement
+     */
+    @Composable
+    fun ElementWithValues(
         key: ElementKey,
         modifier: Modifier,
 
@@ -230,17 +249,19 @@
     /**
      * Create a *movable* element identified by [key].
      *
-     * Similar to [Element], this creates an element that will be automatically shared when present
-     * in multiple contents and that can be transformed during transitions, and you can also use the
-     * provided [ElementScope] to [animate element values][ElementScope.animateElementValueAsState].
+     * Similar to [ElementWithValues], this creates an element that will be automatically shared
+     * when present in multiple contents and that can be transformed during transitions, and you can
+     * also use the provided [ElementScope] to
+     * [animate element values][ElementScope.animateElementValueAsState].
      *
-     * The important difference with [element] and [Element] is that this element
-     * [content][ElementScope.content] will be "moved" and composed only once during transitions, as
-     * opposed to [element] and [Element] that duplicates shared elements, so that any internal
-     * state is preserved during and after the transition.
+     * The important difference with [element], [Element] and [ElementWithValues] is that this
+     * element [content][ElementScope.content] will be "moved" and composed only once during
+     * transitions, as opposed to [element], [Element] and [ElementWithValues] that duplicates
+     * shared elements, so that any internal state is preserved during and after the transition.
      *
      * @see element
      * @see Element
+     * @see ElementWithValues
      */
     @Composable
     fun MovableElement(
@@ -415,7 +436,7 @@
  *
  * We can't reuse BoxScope directly because of the @LayoutScopeMarker annotation on it, which would
  * prevent us from calling Modifier.element() and other methods of [ContentScope] inside any Box {}
- * in the [content][ElementScope.content] of a [ContentScope.Element] or a
+ * in the [content][ElementScope.content] of a [ContentScope.ElementWithValues] or a
  * [ContentScope.MovableElement].
  */
 @Stable
@@ -709,10 +730,8 @@
 }
 
 /**
- * An internal version of [SceneTransitionLayout] to be used for tests.
- *
- * Important: You should use this only in tests and if you need to access the underlying
- * [SceneTransitionLayoutImpl]. In other cases, you should use [SceneTransitionLayout].
+ * An internal version of [SceneTransitionLayout] to be used for tests, that provides access to the
+ * internal [SceneTransitionLayoutImpl] and implicitly tags all scenes and elements.
  */
 @Composable
 internal fun SceneTransitionLayoutForTesting(
@@ -725,6 +744,7 @@
     sharedElementMap: MutableMap<ElementKey, Element> = remember { mutableMapOf() },
     ancestors: List<Ancestor> = remember { emptyList() },
     lookaheadScope: LookaheadScope? = null,
+    implicitTestTags: Boolean = true,
     builder: SceneTransitionLayoutScope<InternalContentScope>.() -> Unit,
 ) {
     val density = LocalDensity.current
@@ -749,6 +769,7 @@
                 directionChangeSlop = directionChangeSlop,
                 defaultEffectFactory = defaultEffectFactory,
                 decayAnimationSpec = decayAnimationSpec,
+                implicitTestTags = implicitTestTags,
             )
             .also { onLayoutImpl?.invoke(it) }
     }
diff --git a/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/SceneTransitionLayoutImpl.kt b/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/SceneTransitionLayoutImpl.kt
index 53996d2..e3c4eb0 100644
--- a/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/SceneTransitionLayoutImpl.kt
+++ b/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/SceneTransitionLayoutImpl.kt
@@ -122,6 +122,9 @@
      * This is used to enable transformations and shared elements across NestedSTLs.
      */
     internal val ancestors: List<Ancestor> = emptyList(),
+
+    /** Whether elements and scene should be tagged using `Modifier.testTag`. */
+    internal val implicitTestTags: Boolean = false,
     lookaheadScope: LookaheadScope? = null,
     defaultEffectFactory: OverscrollFactory,
 ) {
diff --git a/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/content/Content.kt b/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/content/Content.kt
index 95d6440..149a9e7 100644
--- a/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/content/Content.kt
+++ b/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/content/Content.kt
@@ -21,6 +21,7 @@
 import androidx.compose.foundation.OverscrollEffect
 import androidx.compose.foundation.OverscrollFactory
 import androidx.compose.foundation.layout.Box
+import androidx.compose.foundation.layout.BoxScope
 import androidx.compose.runtime.Composable
 import androidx.compose.runtime.CompositionLocalProvider
 import androidx.compose.runtime.Stable
@@ -45,6 +46,7 @@
 import com.android.compose.animation.scene.ElementKey
 import com.android.compose.animation.scene.ElementScope
 import com.android.compose.animation.scene.ElementStateScope
+import com.android.compose.animation.scene.ElementWithValues
 import com.android.compose.animation.scene.InternalContentScope
 import com.android.compose.animation.scene.MovableElement
 import com.android.compose.animation.scene.MovableElementContentScope
@@ -171,7 +173,7 @@
                 .thenIf(layoutImpl.state.isElevationPossible(content = key, element = null)) {
                     Modifier.container(containerState)
                 }
-                .testTag(key.testTag)
+                .thenIf(layoutImpl.implicitTestTags) { Modifier.testTag(key.testTag) }
         ) {
             CompositionLocalProvider(LocalOverscrollFactory provides lastFactory) {
                 scope.content()
@@ -222,12 +224,21 @@
     override fun Element(
         key: ElementKey,
         modifier: Modifier,
-        content: @Composable (ElementScope<ElementContentScope>.() -> Unit),
+        content: @Composable BoxScope.() -> Unit,
     ) {
         Element(layoutImpl, this@ContentScopeImpl.content, key, modifier, content)
     }
 
     @Composable
+    override fun ElementWithValues(
+        key: ElementKey,
+        modifier: Modifier,
+        content: @Composable (ElementScope<ElementContentScope>.() -> Unit),
+    ) {
+        ElementWithValues(layoutImpl, this@ContentScopeImpl.content, key, modifier, content)
+    }
+
+    @Composable
     override fun MovableElement(
         key: MovableElementKey,
         modifier: Modifier,
@@ -290,6 +301,7 @@
             sharedElementMap = layoutImpl.elements,
             ancestors = ancestors,
             lookaheadScope = layoutImpl.lookaheadScope,
+            implicitTestTags = layoutImpl.implicitTestTags,
         )
     }
 }
diff --git a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/AnimatedSharedAsStateTest.kt b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/AnimatedSharedAsStateTest.kt
index d11e6da1..d06e040 100644
--- a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/AnimatedSharedAsStateTest.kt
+++ b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/AnimatedSharedAsStateTest.kt
@@ -67,7 +67,7 @@
     @Composable
     private fun ContentScope.Foo(targetValues: Values, onCurrentValueChanged: (Values) -> Unit) {
         val key = TestElements.Foo
-        Element(key, Modifier) {
+        ElementWithValues(key, Modifier) {
             val int by animateElementIntAsState(targetValues.int, key = TestValues.Value1)
             val float by animateElementFloatAsState(targetValues.float, key = TestValues.Value2)
             val dp by animateElementDpAsState(targetValues.dp, key = TestValues.Value3)
diff --git a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/ElementTest.kt b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/ElementTest.kt
index 698a808..86cbfe4 100644
--- a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/ElementTest.kt
+++ b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/ElementTest.kt
@@ -227,7 +227,7 @@
             to = SceneB,
             transitionLayout = { state ->
                 coroutineScope = rememberCoroutineScope()
-                SceneTransitionLayout(state) {
+                SceneTransitionLayoutForTesting(state) {
                     scene(SceneA) {
                         Box(Modifier.size(layoutSize)) {
                             // Transformed element
@@ -633,7 +633,7 @@
 
         val scope =
             rule.setContentAndCreateMainScope {
-                SceneTransitionLayout(state) {
+                SceneTransitionLayoutForTesting(state) {
                     scene(SceneA) { Box(Modifier.element(TestElements.Foo).size(20.dp)) }
                     scene(SceneB) {}
                 }
@@ -674,7 +674,7 @@
             CompositionLocalProvider(
                 LocalOverscrollFactory provides rememberOffsetOverscrollEffectFactory()
             ) {
-                SceneTransitionLayout(state, Modifier.size(layoutWidth, layoutHeight)) {
+                SceneTransitionLayoutForTesting(state, Modifier.size(layoutWidth, layoutHeight)) {
                     scene(key = SceneA, userActions = mapOf(Swipe.Down to SceneB)) {
                         Spacer(Modifier.fillMaxSize())
                     }
@@ -734,7 +734,7 @@
             CompositionLocalProvider(
                 LocalOverscrollFactory provides rememberOffsetOverscrollEffectFactory()
             ) {
-                SceneTransitionLayout(state, Modifier.size(layoutWidth, layoutHeight)) {
+                SceneTransitionLayoutForTesting(state, Modifier.size(layoutWidth, layoutHeight)) {
                     scene(key = SceneA, userActions = mapOf(Swipe.Down to SceneB)) {
                         Spacer(
                             Modifier.overscroll(verticalOverscrollEffect)
@@ -834,7 +834,7 @@
             CompositionLocalProvider(
                 LocalOverscrollFactory provides rememberOffsetOverscrollEffectFactory()
             ) {
-                SceneTransitionLayout(state, Modifier.size(layoutWidth, layoutHeight)) {
+                SceneTransitionLayoutForTesting(state, Modifier.size(layoutWidth, layoutHeight)) {
                     scene(key = SceneA, userActions = mapOf(Swipe.Down to SceneB)) {
                         Spacer(Modifier.fillMaxSize())
                     }
@@ -893,7 +893,7 @@
             CompositionLocalProvider(
                 LocalOverscrollFactory provides rememberOffsetOverscrollEffectFactory()
             ) {
-                SceneTransitionLayout(
+                SceneTransitionLayoutForTesting(
                     state = state,
                     modifier = Modifier.size(layoutWidth, layoutHeight),
                 ) {
@@ -970,7 +970,7 @@
 
         rule.setContent {
             touchSlop = LocalViewConfiguration.current.touchSlop
-            SceneTransitionLayout(
+            SceneTransitionLayoutForTesting(
                 state = state,
                 modifier = Modifier.size(layoutWidth, layoutHeight),
             ) {
@@ -1057,7 +1057,7 @@
         rule.setContent {
             coroutineScope = rememberCoroutineScope()
 
-            SceneTransitionLayout(state) {
+            SceneTransitionLayoutForTesting(state) {
                 scene(SceneA) {
                     Box(Modifier.size(layoutSize)) {
                         Box(
@@ -1163,7 +1163,7 @@
         @Composable
         fun ContentScope.Foo(size: Dp, value: Float, modifier: Modifier = Modifier) {
             val contentKey = this.contentKey
-            Element(TestElements.Foo, modifier.size(size)) {
+            ElementWithValues(TestElements.Foo, modifier.size(size)) {
                 val animatedValue = animateElementFloatAsState(value, TestValues.Value1)
                 LaunchedEffect(animatedValue) {
                     snapshotFlow { animatedValue.value }.collect { lastValues[contentKey] = it }
@@ -1374,7 +1374,7 @@
 
         val scope =
             rule.setContentAndCreateMainScope {
-                SceneTransitionLayout(state, Modifier.size(layoutSize)) {
+                SceneTransitionLayoutForTesting(state, Modifier.size(layoutSize)) {
                     scene(SceneA) {
                         Box(Modifier.fillMaxSize()) { Foo(Modifier.align(Alignment.TopStart)) }
                     }
@@ -1742,7 +1742,7 @@
 
         val scope =
             rule.setContentAndCreateMainScope {
-                SceneTransitionLayout(state, Modifier.size(200.dp)) {
+                SceneTransitionLayoutForTesting(state, Modifier.size(200.dp)) {
                     scene(SceneA) { Foo(offset = 0.dp) }
                     scene(SceneB) { Foo(offset = 20.dp) }
                     scene(SceneC) { Foo(offset = 40.dp) }
@@ -1828,7 +1828,7 @@
 
         val scope =
             rule.setContentAndCreateMainScope {
-                SceneTransitionLayout(state) {
+                SceneTransitionLayoutForTesting(state) {
                     scene(SceneB) { Foo(Modifier.offset(40.dp, 60.dp)) }
 
                     // Define A after B so that Foo is placed in A during A <=> B.
@@ -1887,7 +1887,7 @@
 
         val scope =
             rule.setContentAndCreateMainScope {
-                SceneTransitionLayout(state) {
+                SceneTransitionLayoutForTesting(state) {
                     scene(SceneA) { Foo() }
                     scene(SceneB) { Foo(Modifier.offset(40.dp, 60.dp)) }
                 }
@@ -2090,11 +2090,9 @@
             TestContentScope(currentScene = SceneA) {
                 Column {
                     Element(TestElements.Foo, Modifier.size(40.dp)) {
-                        content {
-                            // Modifier.size() sets a preferred size and this should be ignored
-                            // because of the previously set 40dp size.
-                            Box(Modifier.testTag(contentTestTag).size(20.dp))
-                        }
+                        // Modifier.size() sets a preferred size and this should be ignored because
+                        // of the previously set 40dp size.
+                        Box(Modifier.testTag(contentTestTag).size(20.dp))
                     }
 
                     MovableElement(movable, Modifier.size(40.dp)) {
@@ -2283,4 +2281,35 @@
             .assertSizeIsEqualTo(50.dp)
             .assertPositionInRootIsEqualTo(100.dp, 100.dp)
     }
+
+    @Test
+    fun elementContentIsNotRecomposedWhenATransitionStarts() {
+        var compositions = 0
+        val state = rule.runOnUiThread { MutableSceneTransitionLayoutStateForTests(SceneA) }
+        val scope =
+            rule.setContentAndCreateMainScope {
+                SceneTransitionLayoutForTesting(state) {
+                    scene(SceneA) {
+                        Box(Modifier.fillMaxSize()) {
+                            Element(TestElements.Foo, Modifier) { SideEffect { compositions++ } }
+                        }
+                    }
+                    scene(SceneB) { Box(Modifier.fillMaxSize()) }
+                    scene(SceneC) { Box(Modifier.fillMaxSize()) }
+                }
+            }
+
+        assertThat(compositions).isEqualTo(1)
+
+        scope.launch { state.startTransition(transition(SceneA, SceneB)) }
+        rule.waitForIdle()
+
+        scope.launch { state.startTransition(transition(SceneA, SceneC)) }
+        rule.waitForIdle()
+
+        scope.launch { state.startTransition(transition(SceneA, SceneB)) }
+        rule.waitForIdle()
+
+        assertThat(compositions).isEqualTo(1)
+    }
 }
diff --git a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/MovableElementTest.kt b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/MovableElementTest.kt
index e023936..ebbde70 100644
--- a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/MovableElementTest.kt
+++ b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/MovableElementTest.kt
@@ -313,7 +313,7 @@
     fun elementScopeExtendsBoxScope() {
         rule.setContent {
             TestContentScope {
-                Element(TestElements.Foo, Modifier.size(200.dp)) {
+                ElementWithValues(TestElements.Foo, Modifier.size(200.dp)) {
                     content {
                         Box {
                             Box(Modifier.testTag("bottomEnd").align(Alignment.BottomEnd))
diff --git a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/OverlayTest.kt b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/OverlayTest.kt
index 04c762f..98ecb64 100644
--- a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/OverlayTest.kt
+++ b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/OverlayTest.kt
@@ -90,7 +90,7 @@
         lateinit var coroutineScope: CoroutineScope
         rule.setContent {
             coroutineScope = rememberCoroutineScope()
-            SceneTransitionLayout(state, Modifier.size(200.dp)) {
+            SceneTransitionLayoutForTesting(state, Modifier.size(200.dp)) {
                 scene(SceneA) { Box(Modifier.fillMaxSize()) { Foo() } }
                 overlay(OverlayA) { Foo() }
             }
@@ -132,7 +132,7 @@
         lateinit var coroutineScope: CoroutineScope
         rule.setContent {
             coroutineScope = rememberCoroutineScope()
-            SceneTransitionLayout(state, Modifier.size(200.dp)) {
+            SceneTransitionLayoutForTesting(state, Modifier.size(200.dp)) {
                 scene(SceneA) { Box(Modifier.fillMaxSize()) { Foo() } }
                 overlay(OverlayA) { Foo() }
                 overlay(OverlayB) { Foo() }
@@ -230,7 +230,7 @@
         lateinit var coroutineScope: CoroutineScope
         rule.setContent {
             coroutineScope = rememberCoroutineScope()
-            SceneTransitionLayout(state, Modifier.size(200.dp)) {
+            SceneTransitionLayoutForTesting(state, Modifier.size(200.dp)) {
                 scene(SceneA) { Box(Modifier.fillMaxSize()) { MovableBar() } }
                 overlay(OverlayA) { MovableBar() }
                 overlay(OverlayB) { MovableBar() }
@@ -302,7 +302,7 @@
             }
         var alignment by mutableStateOf(Alignment.Center)
         rule.setContent {
-            SceneTransitionLayout(state, Modifier.size(200.dp)) {
+            SceneTransitionLayoutForTesting(state, Modifier.size(200.dp)) {
                 scene(SceneA) { Box(Modifier.fillMaxSize()) { Foo() } }
                 overlay(OverlayA, alignment = alignment) { Foo() }
             }
@@ -761,7 +761,7 @@
         val movableElementChildTag = "movableElementChildTag"
         val scope =
             rule.setContentAndCreateMainScope {
-                SceneTransitionLayout(state) {
+                SceneTransitionLayoutForTesting(state) {
                     scene(SceneA) {
                         MovableElement(key, Modifier) {
                             content { Box(Modifier.testTag(movableElementChildTag).size(100.dp)) }
diff --git a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/PredictiveBackHandlerTest.kt b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/PredictiveBackHandlerTest.kt
index 2bf2358..366b11d 100644
--- a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/PredictiveBackHandlerTest.kt
+++ b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/PredictiveBackHandlerTest.kt
@@ -250,7 +250,7 @@
             }
 
         rule.setContent {
-            SceneTransitionLayout(state, Modifier.size(200.dp)) {
+            SceneTransitionLayoutForTesting(state, Modifier.size(200.dp)) {
                 scene(SceneA) { Box(Modifier.fillMaxSize()) }
                 overlay(OverlayA) { Box(Modifier.fillMaxSize()) }
                 overlay(OverlayB) { Box(Modifier.fillMaxSize()) }
diff --git a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/SceneTransitionLayoutTest.kt b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/SceneTransitionLayoutTest.kt
index 3578be4..fa7661b6 100644
--- a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/SceneTransitionLayoutTest.kt
+++ b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/SceneTransitionLayoutTest.kt
@@ -97,7 +97,7 @@
             MutableSceneTransitionLayoutStateForTests(SceneA, EmptyTestTransitions)
         }
 
-        SceneTransitionLayout(state = layoutState, modifier = Modifier.size(LayoutSize)) {
+        SceneTransitionLayoutForTesting(state = layoutState, modifier = Modifier.size(LayoutSize)) {
             scene(SceneA, userActions = mapOf(Back to SceneB)) {
                 Box(Modifier.fillMaxSize()) {
                     SharedFoo(size = 50.dp, childOffset = 0.dp, Modifier.align(Alignment.TopEnd))
@@ -129,7 +129,7 @@
 
     @Composable
     private fun ContentScope.SharedFoo(size: Dp, childOffset: Dp, modifier: Modifier = Modifier) {
-        Element(TestElements.Foo, modifier.size(size).background(Color.Red)) {
+        ElementWithValues(TestElements.Foo, modifier.size(size).background(Color.Red)) {
             // Offset the single child of Foo by some animated shared offset.
             val offset by animateElementDpAsState(childOffset, TestValues.Value1)
 
diff --git a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/SwipeToSceneTest.kt b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/SwipeToSceneTest.kt
index 751b314..11abbbe 100644
--- a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/SwipeToSceneTest.kt
+++ b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/SwipeToSceneTest.kt
@@ -763,7 +763,7 @@
         var touchSlop = 0f
         rule.setContent {
             touchSlop = LocalViewConfiguration.current.touchSlop
-            SceneTransitionLayout(state, Modifier.size(layoutSize)) {
+            SceneTransitionLayoutForTesting(state, Modifier.size(layoutSize)) {
                 scene(SceneA, userActions = mapOf(Swipe.Start to SceneB, Swipe.End to SceneC)) {
                     Box(Modifier.fillMaxSize())
                 }
@@ -837,7 +837,7 @@
         rule.setContent {
             touchSlop = LocalViewConfiguration.current.touchSlop
             CompositionLocalProvider(LocalLayoutDirection provides LayoutDirection.Rtl) {
-                SceneTransitionLayout(state, Modifier.size(layoutSize)) {
+                SceneTransitionLayoutForTesting(state, Modifier.size(layoutSize)) {
                     scene(SceneA, userActions = mapOf(Swipe.Start to SceneB, Swipe.End to SceneC)) {
                         Box(Modifier.fillMaxSize())
                     }
diff --git a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/transformation/NestedElementTransformationTest.kt b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/transformation/NestedElementTransformationTest.kt
index bb511bc..8b56892 100644
--- a/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/transformation/NestedElementTransformationTest.kt
+++ b/packages/SystemUI/compose/scene/tests/src/com/android/compose/animation/scene/transformation/NestedElementTransformationTest.kt
@@ -40,7 +40,7 @@
 import com.android.compose.animation.scene.MutableSceneTransitionLayoutStateForTests
 import com.android.compose.animation.scene.Scale
 import com.android.compose.animation.scene.SceneKey
-import com.android.compose.animation.scene.SceneTransitionLayout
+import com.android.compose.animation.scene.SceneTransitionLayoutForTesting
 import com.android.compose.animation.scene.SceneTransitions
 import com.android.compose.animation.scene.TestScenes
 import com.android.compose.animation.scene.testNestedTransition
@@ -114,7 +114,7 @@
         @Composable
         (states: List<MutableSceneTransitionLayoutState>) -> Unit =
         { states ->
-            SceneTransitionLayout(states[0]) {
+            SceneTransitionLayoutForTesting(states[0]) {
                 scene(TestScenes.SceneA, content = { TestElement(elementVariant0A) })
                 scene(
                     TestScenes.SceneB,
diff --git a/packages/SystemUI/compose/scene/tests/utils/src/com/android/compose/animation/scene/TestContentScope.kt b/packages/SystemUI/compose/scene/tests/utils/src/com/android/compose/animation/scene/TestContentScope.kt
index 6d47bab..e56d1be 100644
--- a/packages/SystemUI/compose/scene/tests/utils/src/com/android/compose/animation/scene/TestContentScope.kt
+++ b/packages/SystemUI/compose/scene/tests/utils/src/com/android/compose/animation/scene/TestContentScope.kt
@@ -30,5 +30,7 @@
     content: @Composable ContentScope.() -> Unit,
 ) {
     val state = rememberMutableSceneTransitionLayoutState(currentScene)
-    SceneTransitionLayout(state, modifier) { scene(currentScene, content = content) }
+    SceneTransitionLayout(state, modifier, implicitTestTags = true) {
+        scene(currentScene, content = content)
+    }
 }
diff --git a/packages/SystemUI/compose/scene/tests/utils/src/com/android/compose/animation/scene/TestTransition.kt b/packages/SystemUI/compose/scene/tests/utils/src/com/android/compose/animation/scene/TestTransition.kt
index f94a7ed..a362a37 100644
--- a/packages/SystemUI/compose/scene/tests/utils/src/com/android/compose/animation/scene/TestTransition.kt
+++ b/packages/SystemUI/compose/scene/tests/utils/src/com/android/compose/animation/scene/TestTransition.kt
@@ -137,7 +137,7 @@
         },
         changeState = changeState,
         transitionLayout = { state ->
-            SceneTransitionLayout(state, layoutModifier) {
+            SceneTransitionLayout(state, layoutModifier, implicitTestTags = true) {
                 scene(fromScene, content = fromSceneContent)
                 scene(toScene, content = toSceneContent)
             }
@@ -163,7 +163,7 @@
             )
         },
         transitionLayout = { state ->
-            SceneTransitionLayout(state) {
+            SceneTransitionLayout(state, implicitTestTags = true) {
                 scene(fromScene) { fromSceneContent() }
                 overlay(overlay) { overlayContent() }
             }
@@ -191,7 +191,7 @@
             )
         },
         transitionLayout = { state ->
-            SceneTransitionLayout(state) {
+            SceneTransitionLayout(state, implicitTestTags = true) {
                 scene(toScene) { toSceneContent() }
                 overlay(overlay) { overlayContent() }
             }
@@ -223,7 +223,7 @@
             )
         },
         transitionLayout = { state ->
-            SceneTransitionLayout(state) {
+            SceneTransitionLayout(state, implicitTestTags = true) {
                 scene(currentScene) { currentSceneContent() }
                 overlay(from, alignment = fromAlignment) { fromContent() }
                 overlay(to, alignment = toAlignment) { toContent() }
@@ -273,7 +273,7 @@
                 }
             }
 
-            SceneTransitionLayout(state, layoutModifier) {
+            SceneTransitionLayout(state, layoutModifier, implicitTestTags = true) {
                 scene(fromScene, content = fromSceneContent)
                 scene(toScene, content = toSceneContent)
             }
diff --git a/packages/SystemUI/customization/res/values/dimens.xml b/packages/SystemUI/customization/res/values/dimens.xml
index 2bb5541..723f9bff 100644
--- a/packages/SystemUI/customization/res/values/dimens.xml
+++ b/packages/SystemUI/customization/res/values/dimens.xml
@@ -34,6 +34,7 @@
     <dimen name="small_clock_padding_top">28dp</dimen>
     <dimen name="clock_padding_start">28dp</dimen>
     <dimen name="weather_date_icon_padding">28dp</dimen>
+    <dimen name="clock_vertical_digit_buffer">8dp</dimen>
 
     <!-- When large clock is showing, offset the smartspace by this amount -->
     <dimen name="keyguard_smartspace_top_offset">12dp</dimen>
diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/CanvasUtil.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/CanvasUtil.kt
new file mode 100644
index 0000000..dd1599e
--- /dev/null
+++ b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/CanvasUtil.kt
@@ -0,0 +1,32 @@
+/*
+ * Copyright (C) 2025 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.systemui.shared.clocks
+
+import android.graphics.Canvas
+
+object CanvasUtil {
+    fun Canvas.translate(pt: VPointF) = this.translate(pt.x, pt.y)
+
+    fun Canvas.translate(pt: VPoint) = this.translate(pt.x.toFloat(), pt.y.toFloat())
+
+    fun <T> Canvas.use(func: (Canvas) -> T): T {
+        val saveNum = save()
+        val result = func(this)
+        restoreToCount(saveNum)
+        return result
+    }
+}
diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/ComposedDigitalLayerController.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/ComposedDigitalLayerController.kt
index f905527..b9200c1 100644
--- a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/ComposedDigitalLayerController.kt
+++ b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/ComposedDigitalLayerController.kt
@@ -55,7 +55,6 @@
         val layerCfg =
             LayerConfig(
                 style = FontTextStyle(lineHeight = 147.25f),
-                timespec = DigitalTimespec.DIGIT_PAIR,
                 alignment = DigitalAlignment(HorizontalAlignment.CENTER, VerticalAlignment.CENTER),
                 aodStyle =
                     FontTextStyle(
@@ -63,12 +62,23 @@
                         transitionDuration = 750,
                     ),
 
-                // Placeholder
+                // Placeholders
+                timespec = DigitalTimespec.TIME_FULL_FORMAT,
                 dateTimeFormat = "hh:mm",
             )
 
-        createController(layerCfg.copy(dateTimeFormat = "hh"))
-        createController(layerCfg.copy(dateTimeFormat = "mm"))
+        createController(
+            layerCfg.copy(timespec = DigitalTimespec.FIRST_DIGIT, dateTimeFormat = "hh")
+        )
+        createController(
+            layerCfg.copy(timespec = DigitalTimespec.SECOND_DIGIT, dateTimeFormat = "hh")
+        )
+        createController(
+            layerCfg.copy(timespec = DigitalTimespec.FIRST_DIGIT, dateTimeFormat = "mm")
+        )
+        createController(
+            layerCfg.copy(timespec = DigitalTimespec.SECOND_DIGIT, dateTimeFormat = "mm")
+        )
     }
 
     private fun refreshTime() {
diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockProvider.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockProvider.kt
index aad1276..654478a 100644
--- a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockProvider.kt
+++ b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockProvider.kt
@@ -28,6 +28,7 @@
 import com.android.systemui.plugins.clocks.ClockPickerConfig
 import com.android.systemui.plugins.clocks.ClockProvider
 import com.android.systemui.plugins.clocks.ClockSettings
+import com.android.systemui.shared.clocks.FlexClockController.Companion.AXIS_PRESETS
 import com.android.systemui.shared.clocks.FlexClockController.Companion.getDefaultAxes
 
 private val TAG = DefaultClockProvider::class.simpleName
@@ -98,16 +99,16 @@
             throw IllegalArgumentException("${settings.clockId} is unsupported by $TAG")
         }
 
-        val fontAxes =
-            if (!isClockReactiveVariantsEnabled) listOf()
-            else getDefaultAxes(settings).merge(settings.axes)
         return ClockPickerConfig(
             settings.clockId ?: DEFAULT_CLOCK_ID,
             resources.getString(R.string.clock_default_name),
             resources.getString(R.string.clock_default_description),
             resources.getDrawable(R.drawable.clock_default_thumbnail, null),
             isReactiveToTone = true,
-            axes = fontAxes,
+            axes =
+                if (!isClockReactiveVariantsEnabled) emptyList()
+                else getDefaultAxes(settings).merge(settings.axes),
+            axisPresets = if (!isClockReactiveVariantsEnabled) emptyList() else AXIS_PRESETS,
         )
     }
 
diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DigitTranslateAnimator.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DigitTranslateAnimator.kt
index 3869706..f5ccc52 100644
--- a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DigitTranslateAnimator.kt
+++ b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DigitTranslateAnimator.kt
@@ -20,57 +20,42 @@
 import android.animation.AnimatorListenerAdapter
 import android.animation.TimeInterpolator
 import android.animation.ValueAnimator
-import android.graphics.Point
+import com.android.systemui.shared.clocks.VPointF.Companion.times
 
-class DigitTranslateAnimator(val updateCallback: () -> Unit) {
-    val DEFAULT_ANIMATION_DURATION = 500L
-    val updatedTranslate = Point(0, 0)
+class DigitTranslateAnimator(private val updateCallback: (VPointF) -> Unit) {
+    var currentTranslation = VPointF.ZERO
+    var baseTranslation = VPointF.ZERO
+    var targetTranslation = VPointF.ZERO
 
-    val baseTranslation = Point(0, 0)
-    var targetTranslation: Point? = null
-    val bounceAnimator: ValueAnimator =
+    private val bounceAnimator: ValueAnimator =
         ValueAnimator.ofFloat(1f).apply {
-            duration = DEFAULT_ANIMATION_DURATION
-            addUpdateListener {
-                updateTranslation(it.animatedFraction, updatedTranslate)
-                updateCallback()
-            }
+            addUpdateListener { updateCallback(getInterpolatedTranslation(it.animatedFraction)) }
             addListener(
                 object : AnimatorListenerAdapter() {
                     override fun onAnimationEnd(animation: Animator) {
-                        rebase()
+                        baseTranslation = currentTranslation
                     }
 
                     override fun onAnimationCancel(animation: Animator) {
-                        rebase()
+                        baseTranslation = currentTranslation
                     }
                 }
             )
         }
 
-    fun rebase() {
-        baseTranslation.x = updatedTranslate.x
-        baseTranslation.y = updatedTranslate.y
-    }
-
     fun animatePosition(
         animate: Boolean = true,
         delay: Long = 0,
-        duration: Long = -1L,
+        duration: Long,
         interpolator: TimeInterpolator? = null,
-        targetTranslation: Point? = null,
+        targetTranslation: VPointF,
         onAnimationEnd: Runnable? = null,
     ) {
-        this.targetTranslation = targetTranslation ?: Point(0, 0)
+        this.targetTranslation = targetTranslation
         if (animate) {
             bounceAnimator.cancel()
             bounceAnimator.startDelay = delay
-            bounceAnimator.duration =
-                if (duration == -1L) {
-                    DEFAULT_ANIMATION_DURATION
-                } else {
-                    duration
-                }
+            bounceAnimator.duration = duration
             interpolator?.let { bounceAnimator.interpolator = it }
             if (onAnimationEnd != null) {
                 val listener =
@@ -89,16 +74,13 @@
             bounceAnimator.start()
         } else {
             // No animation is requested, thus set base and target state to the same state.
-            updateTranslation(1F, updatedTranslate)
-            rebase()
-            updateCallback()
+            currentTranslation = targetTranslation
+            baseTranslation = targetTranslation
+            updateCallback(targetTranslation)
         }
     }
 
-    fun updateTranslation(progress: Float, outPoint: Point) {
-        outPoint.x =
-            (baseTranslation.x + progress * (targetTranslation!!.x - baseTranslation.x)).toInt()
-        outPoint.y =
-            (baseTranslation.y + progress * (targetTranslation!!.y - baseTranslation.y)).toInt()
+    fun getInterpolatedTranslation(progress: Float): VPointF {
+        return baseTranslation + progress * (targetTranslation - baseTranslation)
     }
 }
diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/FlexClockController.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/FlexClockController.kt
index ac1c5a8..1a1033b 100644
--- a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/FlexClockController.kt
+++ b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/FlexClockController.kt
@@ -132,7 +132,7 @@
             listOf(
                 GSFAxes.WEIGHT.toClockAxis(
                     type = AxisType.Float,
-                    currentValue = 400f,
+                    currentValue = 475f,
                     name = "Weight",
                     description = "Glyph Weight",
                 ),
@@ -161,5 +161,59 @@
                 GSFAxes.ROUND.toClockAxisSetting(100f),
                 GSFAxes.SLANT.toClockAxisSetting(0f),
             )
+
+        val AXIS_PRESETS =
+            listOf(
+                FONT_AXES.map { it.toSetting() },
+                LEGACY_FLEX_SETTINGS,
+                listOf( // Porcelain
+                    GSFAxes.WEIGHT.toClockAxisSetting(500f),
+                    GSFAxes.WIDTH.toClockAxisSetting(100f),
+                    GSFAxes.ROUND.toClockAxisSetting(0f),
+                    GSFAxes.SLANT.toClockAxisSetting(0f),
+                ),
+                listOf( // Midnight
+                    GSFAxes.WEIGHT.toClockAxisSetting(300f),
+                    GSFAxes.WIDTH.toClockAxisSetting(100f),
+                    GSFAxes.ROUND.toClockAxisSetting(100f),
+                    GSFAxes.SLANT.toClockAxisSetting(-10f),
+                ),
+                listOf( // Sterling
+                    GSFAxes.WEIGHT.toClockAxisSetting(1000f),
+                    GSFAxes.WIDTH.toClockAxisSetting(100f),
+                    GSFAxes.ROUND.toClockAxisSetting(0f),
+                    GSFAxes.SLANT.toClockAxisSetting(0f),
+                ),
+                listOf( // Smoky Green
+                    GSFAxes.WEIGHT.toClockAxisSetting(150f),
+                    GSFAxes.WIDTH.toClockAxisSetting(50f),
+                    GSFAxes.ROUND.toClockAxisSetting(0f),
+                    GSFAxes.SLANT.toClockAxisSetting(0f),
+                ),
+                listOf( // Iris
+                    GSFAxes.WEIGHT.toClockAxisSetting(500f),
+                    GSFAxes.WIDTH.toClockAxisSetting(100f),
+                    GSFAxes.ROUND.toClockAxisSetting(100f),
+                    GSFAxes.SLANT.toClockAxisSetting(0f),
+                ),
+                listOf( // Margarita
+                    GSFAxes.WEIGHT.toClockAxisSetting(300f),
+                    GSFAxes.WIDTH.toClockAxisSetting(30f),
+                    GSFAxes.ROUND.toClockAxisSetting(100f),
+                    GSFAxes.SLANT.toClockAxisSetting(-10f),
+                ),
+                listOf( // Raspberry
+                    GSFAxes.WEIGHT.toClockAxisSetting(700f),
+                    GSFAxes.WIDTH.toClockAxisSetting(140f),
+                    GSFAxes.ROUND.toClockAxisSetting(100f),
+                    GSFAxes.SLANT.toClockAxisSetting(-7f),
+                ),
+                listOf( // Ultra Blue
+                    GSFAxes.WEIGHT.toClockAxisSetting(850f),
+                    GSFAxes.WIDTH.toClockAxisSetting(130f),
+                    GSFAxes.ROUND.toClockAxisSetting(0f),
+                    GSFAxes.SLANT.toClockAxisSetting(0f),
+                ),
+            )
     }
 }
diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/FlexClockFaceController.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/FlexClockFaceController.kt
index b4c2f5d..2282863 100644
--- a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/FlexClockFaceController.kt
+++ b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/FlexClockFaceController.kt
@@ -35,12 +35,14 @@
 import com.android.systemui.plugins.clocks.ThemeConfig
 import com.android.systemui.plugins.clocks.WeatherData
 import com.android.systemui.plugins.clocks.ZenData
+import com.android.systemui.shared.clocks.ViewUtils.computeLayoutDiff
 import com.android.systemui.shared.clocks.view.FlexClockView
 import com.android.systemui.shared.clocks.view.HorizontalAlignment
 import com.android.systemui.shared.clocks.view.VerticalAlignment
 import java.util.Locale
 import java.util.TimeZone
 import kotlin.math.max
+import kotlin.math.roundToInt
 
 // TODO(b/364680879): Merge w/ ComposedDigitalLayerController
 class FlexClockFaceController(clockCtx: ClockContext, private val isLargeClock: Boolean) :
@@ -168,17 +170,17 @@
                         else targetRegion.height() / maxHeight
 
                     FrameLayout.LayoutParams(
-                        (maxWidth * scale).toInt(),
-                        (maxHeight * scale).toInt(),
+                        (maxWidth * scale).roundToInt(),
+                        (maxHeight * scale).roundToInt(),
                     )
                 }
 
             lp.gravity = Gravity.CENTER
             view.layoutParams = lp
             targetRegion?.let {
-                val (xDiff, yDiff) = computeLayoutDiff(view, it, isLargeClock)
-                view.translationX = xDiff
-                view.translationY = yDiff
+                val diff = view.computeLayoutDiff(it, isLargeClock)
+                view.translationX = diff.x
+                view.translationY = diff.y
             }
         }
 
diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/LayoutUtils.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/LayoutUtils.kt
deleted file mode 100644
index ef8bee0..0000000
--- a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/LayoutUtils.kt
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright (C) 2024 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.systemui.shared.clocks
-
-import android.graphics.Rect
-import android.view.View
-
-fun computeLayoutDiff(
-    view: View,
-    targetRegion: Rect,
-    isLargeClock: Boolean,
-): Pair<Float, Float> {
-    val parent = view.parent
-    if (parent is View && parent.isLaidOut() && isLargeClock) {
-        return Pair(
-            targetRegion.centerX() - parent.width / 2f,
-            targetRegion.centerY() - parent.height / 2f
-        )
-    }
-    return Pair(0f, 0f)
-}
diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/VPoint.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/VPoint.kt
new file mode 100644
index 0000000..3dae530
--- /dev/null
+++ b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/VPoint.kt
@@ -0,0 +1,224 @@
+/*
+ * Copyright (C) 2025 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.systemui.shared.clocks
+
+import android.graphics.Point
+import android.graphics.PointF
+import android.graphics.Rect
+import android.graphics.RectF
+import kotlin.math.abs
+import kotlin.math.max
+import kotlin.math.min
+import kotlin.math.sqrt
+
+private val X_MASK: ULong = 0xFFFFFFFF00000000U
+private val Y_MASK: ULong = 0x00000000FFFFFFFFU
+
+private fun unpackX(data: ULong): Int = ((data and X_MASK) shr 32).toInt()
+
+private fun unpackY(data: ULong): Int = (data and Y_MASK).toInt()
+
+private fun pack(x: Int, y: Int): ULong {
+    return ((x.toULong() shl 32) and X_MASK) or (y.toULong() and Y_MASK)
+}
+
+@JvmInline
+value class VPointF(private val data: ULong) {
+    val x: Float
+        get() = Float.fromBits(unpackX(data))
+
+    val y: Float
+        get() = Float.fromBits(unpackY(data))
+
+    constructor() : this(0f, 0f)
+
+    constructor(pt: PointF) : this(pt.x, pt.y)
+
+    constructor(x: Int, y: Int) : this(x.toFloat(), y.toFloat())
+
+    constructor(x: Int, y: Float) : this(x.toFloat(), y)
+
+    constructor(x: Float, y: Int) : this(x, y.toFloat())
+
+    constructor(x: Float, y: Float) : this(pack(x.toBits(), y.toBits()))
+
+    fun toPointF() = PointF(x, y)
+
+    fun lengthSq(): Float = x * x + y * y
+
+    fun length(): Float = sqrt(lengthSq())
+
+    fun abs() = VPointF(abs(x), abs(y))
+
+    fun dot(pt: VPointF): Float = x * pt.x + y * pt.y
+
+    fun normalize(): VPointF {
+        val length = this.length()
+        return VPointF(x / length, y / length)
+    }
+
+    operator fun component1(): Float = x
+
+    operator fun component2(): Float = y
+
+    override fun toString() = "($x, $y)"
+
+    operator fun plus(pt: VPoint) = VPointF(x + pt.x, y + pt.y)
+
+    operator fun plus(pt: VPointF) = VPointF(x + pt.x, y + pt.y)
+
+    operator fun plus(value: Int) = VPointF(x + value, y + value)
+
+    operator fun plus(value: Float) = VPointF(x + value, y + value)
+
+    operator fun minus(pt: VPoint) = VPointF(x - pt.x, y - pt.y)
+
+    operator fun minus(pt: VPointF) = VPointF(x - pt.x, y - pt.y)
+
+    operator fun minus(value: Int) = VPointF(x - value, y - value)
+
+    operator fun minus(value: Float) = VPointF(x - value, y - value)
+
+    operator fun times(pt: VPoint) = VPointF(x * pt.x, y * pt.y)
+
+    operator fun times(pt: VPointF) = VPointF(x * pt.x, y * pt.y)
+
+    operator fun times(value: Int) = VPointF(x * value, y * value)
+
+    operator fun times(value: Float) = VPointF(x * value, y * value)
+
+    operator fun div(pt: VPoint) = VPointF(x / pt.x, y / pt.y)
+
+    operator fun div(pt: VPointF) = VPointF(x / pt.x, y / pt.y)
+
+    operator fun div(value: Int) = VPointF(x / value, y / value)
+
+    operator fun div(value: Float) = VPointF(x / value, y / value)
+
+    companion object {
+        val ZERO = VPointF(0, 0)
+
+        fun max(lhs: VPointF, rhs: VPointF) = VPointF(max(lhs.x, rhs.x), max(lhs.y, rhs.y))
+
+        fun min(lhs: VPointF, rhs: VPointF) = VPointF(min(lhs.x, rhs.x), min(lhs.y, rhs.y))
+
+        operator fun Float.plus(value: VPointF) = VPointF(this + value.x, this + value.y)
+
+        operator fun Int.minus(value: VPointF) = VPointF(this - value.x, this - value.y)
+
+        operator fun Float.minus(value: VPointF) = VPointF(this - value.x, this - value.y)
+
+        operator fun Int.times(value: VPointF) = VPointF(this * value.x, this * value.y)
+
+        operator fun Float.times(value: VPointF) = VPointF(this * value.x, this * value.y)
+
+        operator fun Int.div(value: VPointF) = VPointF(this / value.x, this / value.y)
+
+        operator fun Float.div(value: VPointF) = VPointF(this / value.x, this / value.y)
+
+        val RectF.center: VPointF
+            get() = VPointF(centerX(), centerY())
+
+        val RectF.size: VPointF
+            get() = VPointF(width(), height())
+    }
+}
+
+@JvmInline
+value class VPoint(private val data: ULong) {
+    val x: Int
+        get() = unpackX(data)
+
+    val y: Int
+        get() = unpackY(data)
+
+    constructor() : this(0, 0)
+
+    constructor(x: Int, y: Int) : this(pack(x, y))
+
+    fun toPoint() = Point(x, y)
+
+    fun abs() = VPoint(abs(x), abs(y))
+
+    operator fun component1(): Int = x
+
+    operator fun component2(): Int = y
+
+    override fun toString() = "($x, $y)"
+
+    operator fun plus(pt: VPoint) = VPoint(x + pt.x, y + pt.y)
+
+    operator fun plus(pt: VPointF) = VPointF(x + pt.x, y + pt.y)
+
+    operator fun plus(value: Int) = VPoint(x + value, y + value)
+
+    operator fun plus(value: Float) = VPointF(x + value, y + value)
+
+    operator fun minus(pt: VPoint) = VPoint(x - pt.x, y - pt.y)
+
+    operator fun minus(pt: VPointF) = VPointF(x - pt.x, y - pt.y)
+
+    operator fun minus(value: Int) = VPoint(x - value, y - value)
+
+    operator fun minus(value: Float) = VPointF(x - value, y - value)
+
+    operator fun times(pt: VPoint) = VPoint(x * pt.x, y * pt.y)
+
+    operator fun times(pt: VPointF) = VPointF(x * pt.x, y * pt.y)
+
+    operator fun times(value: Int) = VPoint(x * value, y * value)
+
+    operator fun times(value: Float) = VPointF(x * value, y * value)
+
+    operator fun div(pt: VPoint) = VPoint(x / pt.x, y / pt.y)
+
+    operator fun div(pt: VPointF) = VPointF(x / pt.x, y / pt.y)
+
+    operator fun div(value: Int) = VPoint(x / value, y / value)
+
+    operator fun div(value: Float) = VPointF(x / value, y / value)
+
+    companion object {
+        val ZERO = VPoint(0, 0)
+
+        fun max(lhs: VPoint, rhs: VPoint) = VPoint(max(lhs.x, rhs.x), max(lhs.y, rhs.y))
+
+        fun min(lhs: VPoint, rhs: VPoint) = VPoint(min(lhs.x, rhs.x), min(lhs.y, rhs.y))
+
+        operator fun Int.plus(value: VPoint) = VPoint(this + value.x, this + value.y)
+
+        operator fun Float.plus(value: VPoint) = VPointF(this + value.x, this + value.y)
+
+        operator fun Int.minus(value: VPoint) = VPoint(this - value.x, this - value.y)
+
+        operator fun Float.minus(value: VPoint) = VPointF(this - value.x, this - value.y)
+
+        operator fun Int.times(value: VPoint) = VPoint(this * value.x, this * value.y)
+
+        operator fun Float.times(value: VPoint) = VPointF(this * value.x, this * value.y)
+
+        operator fun Int.div(value: VPoint) = VPoint(this / value.x, this / value.y)
+
+        operator fun Float.div(value: VPoint) = VPointF(this / value.x, this / value.y)
+
+        val Rect.center: VPoint
+            get() = VPoint(centerX(), centerY())
+
+        val Rect.size: VPoint
+            get() = VPoint(width(), height())
+    }
+}
diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/ViewUtils.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/ViewUtils.kt
new file mode 100644
index 0000000..1e90a23
--- /dev/null
+++ b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/ViewUtils.kt
@@ -0,0 +1,38 @@
+/*
+ * Copyright (C) 2024 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.systemui.shared.clocks
+
+import android.graphics.Rect
+import android.view.View
+import com.android.systemui.shared.clocks.VPoint.Companion.center
+import com.android.systemui.shared.clocks.VPointF.Companion.center
+
+object ViewUtils {
+    fun View.computeLayoutDiff(targetRegion: Rect, isLargeClock: Boolean): VPointF {
+        val parent = this.parent
+        if (parent is View && parent.isLaidOut() && isLargeClock) {
+            return targetRegion.center - parent.size / 2f
+        }
+        return VPointF.ZERO
+    }
+
+    val View.size: VPointF
+        get() = VPointF(width, height)
+
+    val View.measuredSize: VPointF
+        get() = VPointF(measuredWidth, measuredHeight)
+}
diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/view/FlexClockView.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/view/FlexClockView.kt
index a9f91e0..2d0ca53 100644
--- a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/view/FlexClockView.kt
+++ b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/view/FlexClockView.kt
@@ -17,28 +17,37 @@
 package com.android.systemui.shared.clocks.view
 
 import android.graphics.Canvas
-import android.graphics.Point
+import android.graphics.RectF
 import android.icu.text.NumberFormat
 import android.util.MathUtils.constrainedMap
 import android.view.View
 import android.view.ViewGroup
-import android.widget.FrameLayout
 import android.widget.RelativeLayout
 import androidx.annotation.VisibleForTesting
+import androidx.core.view.children
 import com.android.app.animation.Interpolators
 import com.android.systemui.customization.R
 import com.android.systemui.plugins.clocks.ClockFontAxisSetting
 import com.android.systemui.plugins.clocks.ClockLogger
+import com.android.systemui.shared.clocks.CanvasUtil.translate
+import com.android.systemui.shared.clocks.CanvasUtil.use
 import com.android.systemui.shared.clocks.ClockContext
 import com.android.systemui.shared.clocks.DigitTranslateAnimator
+import com.android.systemui.shared.clocks.VPointF
+import com.android.systemui.shared.clocks.VPointF.Companion.max
+import com.android.systemui.shared.clocks.VPointF.Companion.times
+import com.android.systemui.shared.clocks.ViewUtils.measuredSize
 import java.util.Locale
+import kotlin.collections.filterNotNull
+import kotlin.collections.map
 import kotlin.math.abs
 import kotlin.math.max
 import kotlin.math.min
+import kotlin.math.roundToInt
 
 fun clamp(value: Float, minVal: Float, maxVal: Float): Float = max(min(value, maxVal), minVal)
 
-class FlexClockView(clockCtx: ClockContext) : FrameLayout(clockCtx.context) {
+class FlexClockView(clockCtx: ClockContext) : ViewGroup(clockCtx.context) {
     protected val logger = ClockLogger(this, clockCtx.messageBuffer, this::class.simpleName!!)
         get() = field ?: ClockLogger.INIT_LOGGER
 
@@ -46,13 +55,13 @@
     var isAnimationEnabled = true
         set(value) {
             field = value
-            digitalClockTextViewMap.forEach { _, view -> view.isAnimationEnabled = value }
+            childViews.forEach { view -> view.isAnimationEnabled = value }
         }
 
     var dozeFraction: Float = 0F
         set(value) {
             field = value
-            digitalClockTextViewMap.forEach { _, view -> view.dozeFraction = field }
+            childViews.forEach { view -> view.dozeFraction = field }
         }
 
     var isReactiveTouchInteractionEnabled = false
@@ -60,12 +69,20 @@
             field = value
         }
 
-    var digitalClockTextViewMap = mutableMapOf<Int, SimpleDigitalClockTextView>()
-    private val digitLeftTopMap = mutableMapOf<Int, Point>()
+    var _childViews: List<SimpleDigitalClockTextView>? = null
+    val childViews: List<SimpleDigitalClockTextView>
+        get() {
+            return _childViews
+                ?: this.children
+                    .map { child -> child as? SimpleDigitalClockTextView }
+                    .filterNotNull()
+                    .toList()
+                    .also { _childViews = it }
+        }
 
-    private var maxSingleDigitSize = Point(-1, -1)
-    private val lockscreenTranslate = Point(0, 0)
-    private var aodTranslate = Point(0, 0)
+    private var maxChildSize = VPointF(-1, -1)
+    private val lockscreenTranslate = VPointF.ZERO
+    private var aodTranslate = VPointF.ZERO
 
     private var onAnimateDoze: (() -> Unit)? = null
     private var isDozeReadyToAnimate = false
@@ -85,63 +102,53 @@
 
     private val digitOffsets = mutableMapOf<Int, Float>()
 
-    protected fun calculateSize(widthMeasureSpec: Int, heightMeasureSpec: Int): Point? {
-        maxSingleDigitSize = Point(-1, -1)
-        val viewHeight: (textView: SimpleDigitalClockTextView) -> Int = { textView ->
-            if (isMonoVerticalNumericLineSpacing) {
-                maxSingleDigitSize.y
-            } else {
-                (textView.paint.fontMetrics.descent - textView.paint.fontMetrics.ascent).toInt()
-            }
-        }
+    protected fun calculateSize(
+        widthMeasureSpec: Int,
+        heightMeasureSpec: Int,
+        shouldMeasureChildren: Boolean,
+    ): VPointF {
+        maxChildSize = VPointF(-1, -1)
+        fun SimpleDigitalClockTextView.getSize() = VPointF(measuredWidth, measuredHeight)
 
-        digitalClockTextViewMap.forEach { (_, textView) ->
-            textView.measure(MeasureSpec.UNSPECIFIED, MeasureSpec.UNSPECIFIED)
-            maxSingleDigitSize.x = max(maxSingleDigitSize.x, textView.measuredWidth)
-            maxSingleDigitSize.y = max(viewHeight(textView), textView.measuredHeight)
+        childViews.forEach { textView ->
+            if (shouldMeasureChildren) {
+                textView.measure(MeasureSpec.UNSPECIFIED, MeasureSpec.UNSPECIFIED)
+            }
+            maxChildSize = max(maxChildSize, textView.getSize())
         }
-        aodTranslate = Point(0, 0)
+        aodTranslate = VPointF.ZERO
         // TODO(b/364680879): Cleanup
         /*
-        aodTranslate = Point(
-            (maxSingleDigitSize.x * AOD_HORIZONTAL_TRANSLATE_RATIO).toInt(),
-            (maxSingleDigitSize.y * AOD_VERTICAL_TRANSLATE_RATIO).toInt())
-        */
-        return Point(
-            ((maxSingleDigitSize.x + abs(aodTranslate.x)) * 2),
-            ((maxSingleDigitSize.y + abs(aodTranslate.y)) * 2),
+        aodTranslate = VPointF(
+            maxChildSize.x * AOD_HORIZONTAL_TRANSLATE_RATIO,
+            maxChildSize.y * AOD_VERTICAL_TRANSLATE_RATIO
         )
+        */
+
+        val xScale = if (childViews.size < 4) 1f else 2f
+        val yBuffer = context.resources.getDimensionPixelSize(R.dimen.clock_vertical_digit_buffer)
+        return (maxChildSize + aodTranslate.abs()) * VPointF(xScale, 2f) + VPointF(0f, yBuffer)
     }
 
-    protected fun calculateLeftTopPosition() {
-        digitLeftTopMap[R.id.HOUR_FIRST_DIGIT] = Point(0, 0)
-        digitLeftTopMap[R.id.HOUR_SECOND_DIGIT] = Point(maxSingleDigitSize.x, 0)
-        digitLeftTopMap[R.id.MINUTE_FIRST_DIGIT] = Point(0, maxSingleDigitSize.y)
-        digitLeftTopMap[R.id.MINUTE_SECOND_DIGIT] = Point(maxSingleDigitSize)
-        digitLeftTopMap[R.id.HOUR_DIGIT_PAIR] = Point(maxSingleDigitSize.x / 2, 0)
-        // Add a small vertical buffer for the second digit pair
-        digitLeftTopMap[R.id.MINUTE_DIGIT_PAIR] =
-            Point(maxSingleDigitSize.x / 2, (maxSingleDigitSize.y * 1.05f).toInt())
-        digitLeftTopMap.forEach { (_, point) ->
-            point.x += abs(aodTranslate.x)
-            point.y += abs(aodTranslate.y)
-        }
-    }
-
-    override fun addView(child: View?) {
+    override fun onViewAdded(child: View?) {
         if (child == null) return
-        logger.addView(child)
-        super.addView(child)
+        logger.onViewAdded(child)
+        super.onViewAdded(child)
         (child as? SimpleDigitalClockTextView)?.let {
-            it.digitTranslateAnimator = DigitTranslateAnimator(::invalidate)
-            digitalClockTextViewMap[child.id] = child
+            it.digitTranslateAnimator = DigitTranslateAnimator { invalidate() }
         }
         child.setWillNotDraw(true)
+        _childViews = null
+    }
+
+    override fun onViewRemoved(child: View?) {
+        super.onViewRemoved(child)
+        _childViews = null
     }
 
     fun refreshTime() {
         logger.refreshTime()
-        digitalClockTextViewMap.forEach { (_, textView) -> textView.refreshText() }
+        childViews.forEach { textView -> textView.refreshText() }
     }
 
     override fun setVisibility(visibility: Int) {
@@ -164,38 +171,97 @@
         super.requestLayout()
     }
 
+    fun updateMeasuredSize() =
+        updateMeasuredSize(
+            measuredWidthAndState,
+            measuredHeightAndState,
+            shouldMeasureChildren = false,
+        )
+
+    private fun updateMeasuredSize(
+        widthMeasureSpec: Int = measuredWidthAndState,
+        heightMeasureSpec: Int = measuredHeightAndState,
+        shouldMeasureChildren: Boolean,
+    ) {
+        val size = calculateSize(widthMeasureSpec, heightMeasureSpec, shouldMeasureChildren)
+        setMeasuredDimension(size.x.roundToInt(), size.y.roundToInt())
+    }
+
+    fun updateLocation() {
+        val layoutBounds = this.layoutBounds ?: return
+        setFrame(
+            (layoutBounds.centerX() - measuredWidth / 2f).roundToInt(),
+            (layoutBounds.centerY() - measuredHeight / 2f).roundToInt(),
+            (layoutBounds.centerX() + measuredWidth / 2f).roundToInt(),
+            (layoutBounds.centerY() + measuredHeight / 2f).roundToInt(),
+        )
+        updateChildFrames(isLayout = false)
+    }
+
     override fun onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int) {
-        logger.onMeasure()
-        calculateSize(widthMeasureSpec, heightMeasureSpec)?.let { size ->
-            setMeasuredDimension(size.x, size.y)
-        } ?: run { super.onMeasure(widthMeasureSpec, heightMeasureSpec) }
-        calculateLeftTopPosition()
+        logger.onMeasure(widthMeasureSpec, heightMeasureSpec)
+        updateMeasuredSize(widthMeasureSpec, heightMeasureSpec, shouldMeasureChildren = true)
 
         isDozeReadyToAnimate = true
         onAnimateDoze?.invoke()
         onAnimateDoze = null
     }
 
+    private val layoutBounds = RectF()
+
     override fun onLayout(changed: Boolean, left: Int, top: Int, right: Int, bottom: Int) {
-        logger.onLayout()
-        super.onLayout(changed, left, top, right, bottom)
+        logger.onLayout(changed, left, top, right, bottom)
+
+        layoutBounds.left = left.toFloat()
+        layoutBounds.top = top.toFloat()
+        layoutBounds.right = right.toFloat()
+        layoutBounds.bottom = bottom.toFloat()
+
+        updateChildFrames(isLayout = true)
+    }
+
+    private fun updateChildFrames(isLayout: Boolean) {
+        val yBuffer = context.resources.getDimensionPixelSize(R.dimen.clock_vertical_digit_buffer)
+        childViews.forEach { child ->
+            var offset =
+                maxChildSize.run {
+                    when (child.id) {
+                        R.id.HOUR_FIRST_DIGIT -> VPointF.ZERO
+                        R.id.HOUR_SECOND_DIGIT -> VPointF(x, 0f)
+                        R.id.HOUR_DIGIT_PAIR -> VPointF.ZERO
+                        // Add a small vertical buffer for second line views
+                        R.id.MINUTE_DIGIT_PAIR -> VPointF(0f, y + yBuffer)
+                        R.id.MINUTE_FIRST_DIGIT -> VPointF(0f, y + yBuffer)
+                        R.id.MINUTE_SECOND_DIGIT -> VPointF(x, y + yBuffer)
+                        else -> VPointF.ZERO
+                    }
+                }
+
+            val childSize = child.measuredSize
+            offset += aodTranslate.abs()
+
+            // Horizontal offset to center each view in the available space
+            val midX = if (childViews.size < 4) measuredWidth / 2f else measuredWidth / 4f
+            offset += VPointF(midX - childSize.x / 2f, 0f)
+
+            val setPos = if (isLayout) child::layout else child::setLeftTopRightBottom
+            setPos(
+                offset.x.roundToInt(),
+                offset.y.roundToInt(),
+                (offset.x + childSize.x).roundToInt(),
+                (offset.y + childSize.y).roundToInt(),
+            )
+        }
     }
 
     override fun onDraw(canvas: Canvas) {
         logger.onDraw()
-        super.onDraw(canvas)
-
-        digitalClockTextViewMap.forEach { (id, textView) ->
-            // save canvas location in anticipation of restoration later
-            canvas.save()
-            val xTranslateAmount =
-                digitOffsets.getOrDefault(id, 0f) + (digitLeftTopMap[id]?.x?.toFloat() ?: 0f)
-            // move canvas to location that the textView would like
-            canvas.translate(xTranslateAmount, digitLeftTopMap[id]?.y?.toFloat() ?: 0f)
-            // draw the textView at the location of the canvas above
-            textView.draw(canvas)
-            // reset the canvas location back to 0 without drawing
-            canvas.restore()
+        childViews.forEach { child ->
+            canvas.use { canvas ->
+                canvas.translate(digitOffsets.getOrDefault(child.id, 0f), 0f)
+                canvas.translate(child.left.toFloat(), child.top.toFloat())
+                child.draw(canvas)
+            }
         }
     }
 
@@ -205,26 +271,26 @@
     }
 
     fun updateColor(color: Int) {
-        digitalClockTextViewMap.forEach { _, view -> view.updateColor(color) }
+        childViews.forEach { view -> view.updateColor(color) }
         invalidate()
     }
 
     fun updateAxes(axes: List<ClockFontAxisSetting>) {
-        digitalClockTextViewMap.forEach { _, view -> view.updateAxes(axes) }
+        childViews.forEach { view -> view.updateAxes(axes) }
         requestLayout()
     }
 
     fun onFontSettingChanged(fontSizePx: Float) {
-        digitalClockTextViewMap.forEach { _, view -> view.applyTextSize(fontSizePx) }
+        childViews.forEach { view -> view.applyTextSize(fontSizePx) }
     }
 
     fun animateDoze(isDozing: Boolean, isAnimated: Boolean) {
         fun executeDozeAnimation() {
-            digitalClockTextViewMap.forEach { _, view -> view.animateDoze(isDozing, isAnimated) }
-            if (maxSingleDigitSize.x < 0 || maxSingleDigitSize.y < 0) {
+            childViews.forEach { view -> view.animateDoze(isDozing, isAnimated) }
+            if (maxChildSize.x < 0 || maxChildSize.y < 0) {
                 measure(MeasureSpec.UNSPECIFIED, MeasureSpec.UNSPECIFIED)
             }
-            digitalClockTextViewMap.forEach { (id, textView) ->
+            childViews.forEach { textView ->
                 textView.digitTranslateAnimator?.let {
                     if (!isDozing) {
                         it.animatePosition(
@@ -252,8 +318,8 @@
     }
 
     fun animateCharge() {
-        digitalClockTextViewMap.forEach { _, view -> view.animateCharge() }
-        digitalClockTextViewMap.forEach { (id, textView) ->
+        childViews.forEach { view -> view.animateCharge() }
+        childViews.forEach { textView ->
             textView.digitTranslateAnimator?.let {
                 it.animatePosition(
                     animate = isAnimationEnabled,
@@ -266,14 +332,14 @@
                             duration = CHARGING_TRANSITION_DURATION,
                             targetTranslation =
                                 updateDirectionalTargetTranslate(
-                                    id,
+                                    textView.id,
                                     if (dozeFraction == 1F) aodTranslate else lockscreenTranslate,
                                 ),
                         )
                     },
                     targetTranslation =
                         updateDirectionalTargetTranslate(
-                            id,
+                            textView.id,
                             if (dozeFraction == 1F) lockscreenTranslate else aodTranslate,
                         ),
                 )
@@ -282,7 +348,7 @@
     }
 
     fun animateFidget(x: Float, y: Float) {
-        digitalClockTextViewMap.forEach { _, view -> view.animateFidget(x, y) }
+        childViews.forEach { view -> view.animateFidget(x, y) }
     }
 
     private fun updateLocale(locale: Locale) {
@@ -321,7 +387,7 @@
         // so we no longer need to multiply direct sign to moveAmountDeltaForDigit
         val currentMoveAmount = left - clockStartLeft
         var index = 0
-        digitalClockTextViewMap.forEach { id, _ ->
+        childViews.forEach { child ->
             val digitFraction =
                 getDigitFraction(
                     digit = index++,
@@ -332,7 +398,7 @@
             val moveAmountForDigit = currentMoveAmount * digitFraction
             var moveAmountDeltaForDigit = moveAmountForDigit - currentMoveAmount
             if (isMovingToCenter && moveAmountForDigit < 0) moveAmountDeltaForDigit *= -1
-            digitOffsets[id] = moveAmountDeltaForDigit
+            digitOffsets[child.id] = moveAmountDeltaForDigit
             invalidate()
         }
     }
@@ -353,8 +419,7 @@
                 /* rangeMin= */ 0.0f,
                 /* rangeMax= */ 1.0f,
                 /* valueMin= */ digitInitialDelay,
-                /* valueMax= */ digitInitialDelay +
-                    availableAnimationTime(digitalClockTextViewMap.size),
+                /* valueMax= */ digitInitialDelay + availableAnimationTime(childViews.size),
                 /* value= */ fraction,
             )
         )
@@ -401,35 +466,17 @@
             )
 
         // Use the sign of targetTranslation to control the direction of digit translation
-        fun updateDirectionalTargetTranslate(id: Int, targetTranslation: Point): Point {
-            val outPoint = Point(targetTranslation)
-            when (id) {
-                R.id.HOUR_FIRST_DIGIT -> {
-                    outPoint.x *= -1
-                    outPoint.y *= -1
+        fun updateDirectionalTargetTranslate(id: Int, targetTranslation: VPointF): VPointF {
+            return targetTranslation *
+                when (id) {
+                    R.id.HOUR_FIRST_DIGIT -> VPointF(-1, -1)
+                    R.id.HOUR_SECOND_DIGIT -> VPointF(1, -1)
+                    R.id.MINUTE_FIRST_DIGIT -> VPointF(-1, 1)
+                    R.id.MINUTE_SECOND_DIGIT -> VPointF(1, 1)
+                    R.id.HOUR_DIGIT_PAIR -> VPointF(-1, -1)
+                    R.id.MINUTE_DIGIT_PAIR -> VPointF(-1, 1)
+                    else -> VPointF(1, 1)
                 }
-                R.id.HOUR_SECOND_DIGIT -> {
-                    outPoint.x *= 1
-                    outPoint.y *= -1
-                }
-                R.id.MINUTE_FIRST_DIGIT -> {
-                    outPoint.x *= -1
-                    outPoint.y *= 1
-                }
-                R.id.MINUTE_SECOND_DIGIT -> {
-                    outPoint.x *= 1
-                    outPoint.y *= 1
-                }
-                R.id.HOUR_DIGIT_PAIR -> {
-                    outPoint.x *= -1
-                    outPoint.y *= -1
-                }
-                R.id.MINUTE_DIGIT_PAIR -> {
-                    outPoint.x *= -1
-                    outPoint.y *= 1
-                }
-            }
-            return outPoint
         }
     }
 }
diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/view/SimpleDigitalClockTextView.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/view/SimpleDigitalClockTextView.kt
index b7ce20e..015a827 100644
--- a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/view/SimpleDigitalClockTextView.kt
+++ b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/view/SimpleDigitalClockTextView.kt
@@ -20,16 +20,16 @@
 import android.graphics.Canvas
 import android.graphics.Color
 import android.graphics.Paint
-import android.graphics.Point
 import android.graphics.PorterDuff
 import android.graphics.PorterDuffXfermode
 import android.graphics.Rect
+import android.graphics.RectF
 import android.os.VibrationEffect
 import android.text.Layout
 import android.text.TextPaint
 import android.util.AttributeSet
 import android.util.Log
-import android.util.MathUtils
+import android.util.MathUtils.lerp
 import android.util.TypedValue
 import android.view.View.MeasureSpec.EXACTLY
 import android.view.animation.Interpolator
@@ -44,18 +44,33 @@
 import com.android.systemui.plugins.clocks.ClockFontAxisSetting.Companion.replace
 import com.android.systemui.plugins.clocks.ClockFontAxisSetting.Companion.toFVar
 import com.android.systemui.plugins.clocks.ClockLogger
+import com.android.systemui.shared.clocks.CanvasUtil.translate
+import com.android.systemui.shared.clocks.CanvasUtil.use
 import com.android.systemui.shared.clocks.ClockContext
 import com.android.systemui.shared.clocks.DigitTranslateAnimator
 import com.android.systemui.shared.clocks.DimensionParser
 import com.android.systemui.shared.clocks.FLEX_CLOCK_ID
 import com.android.systemui.shared.clocks.FontTextStyle
+import com.android.systemui.shared.clocks.VPoint
+import com.android.systemui.shared.clocks.VPointF
+import com.android.systemui.shared.clocks.VPointF.Companion.size
+import com.android.systemui.shared.clocks.ViewUtils.measuredSize
+import com.android.systemui.shared.clocks.ViewUtils.size
 import com.android.systemui.shared.clocks.toClockAxisSetting
 import java.lang.Thread
 import kotlin.math.max
 import kotlin.math.min
+import kotlin.math.roundToInt
 
 private val TAG = SimpleDigitalClockTextView::class.simpleName!!
 
+private fun Paint.getTextBounds(text: CharSequence, result: RectF = RectF()): RectF {
+    val rect = Rect()
+    this.getTextBounds(text, 0, text.length, rect)
+    result.set(rect)
+    return result
+}
+
 enum class VerticalAlignment {
     TOP,
     BOTTOM,
@@ -103,27 +118,27 @@
     }
 
     private val parser = DimensionParser(clockCtx.context)
-    var maxSingleDigitHeight = -1
-    var maxSingleDigitWidth = -1
+    var maxSingleDigitHeight = -1f
+    var maxSingleDigitWidth = -1f
     var digitTranslateAnimator: DigitTranslateAnimator? = null
-    var aodFontSizePx: Float = -1F
+    var aodFontSizePx = -1f
 
     // Store the font size when there's no height constraint as a reference when adjusting font size
-    private var lastUnconstrainedTextSize: Float = Float.MAX_VALUE
+    private var lastUnconstrainedTextSize = Float.MAX_VALUE
     // Calculated by height of styled text view / text size
     // Used as a factor to calculate a smaller font size when text height is constrained
-    @VisibleForTesting var fontSizeAdjustFactor = 1F
+    @VisibleForTesting var fontSizeAdjustFactor = 1f
 
     private val initThread = Thread.currentThread()
 
     // textBounds is the size of text in LS, which only measures current text in lockscreen style
-    var textBounds = Rect()
+    var textBounds = RectF()
     // prevTextBounds and targetTextBounds are to deal with dozing animation between LS and AOD
     // especially for the textView which has different bounds during the animation
     // prevTextBounds holds the state we are transitioning from
-    private val prevTextBounds = Rect()
+    private val prevTextBounds = RectF()
     // targetTextBounds holds the state we are interpolating to
-    private val targetTextBounds = Rect()
+    private val targetTextBounds = RectF()
     protected val logger = ClockLogger(this, clockCtx.messageBuffer, this::class.simpleName!!)
         get() = field ?: ClockLogger.INIT_LOGGER
 
@@ -141,14 +156,14 @@
     var verticalAlignment: VerticalAlignment = VerticalAlignment.BASELINE
     var horizontalAlignment: HorizontalAlignment = HorizontalAlignment.LEFT
     var isAnimationEnabled = true
-    var dozeFraction: Float = 0F
+    var dozeFraction: Float = 0f
         set(value) {
             field = value
             invalidate()
         }
 
-    var textBorderWidth = 0F
-    var baselineFromMeasure = 0
+    var textBorderWidth = 0f
+    var measuredBaseline = 0
     var lockscreenColor = Color.WHITE
 
     fun updateColor(color: Int) {
@@ -169,7 +184,7 @@
         lockScreenPaint.typeface = typefaceCache.getTypefaceForVariant(lsFontVariation)
         typeface = lockScreenPaint.typeface
 
-        lockScreenPaint.getTextBounds(text, 0, text.length, textBounds)
+        lockScreenPaint.getTextBounds(text, textBounds)
         targetTextBounds.set(textBounds)
 
         textAnimator.setTextStyle(TextAnimator.Style(fVar = lsFontVariation))
@@ -195,7 +210,7 @@
     }
 
     override fun onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int) {
-        logger.onMeasure()
+        logger.onMeasure(widthMeasureSpec, heightMeasureSpec)
         super.onMeasure(widthMeasureSpec, heightMeasureSpec)
 
         val layout = this.layout
@@ -206,7 +221,7 @@
             } else {
                 textAnimator.updateLayout(layout)
             }
-            baselineFromMeasure = layout.getLineBaseline(0)
+            measuredBaseline = layout.getLineBaseline(0)
         } else {
             val currentThread = Thread.currentThread()
             Log.wtf(
@@ -216,24 +231,33 @@
             )
         }
 
-        setInterpolatedViewBounds(getInterpolatedTextBounds(), widthMeasureSpec, heightMeasureSpec)
+        val bounds = getInterpolatedTextBounds()
+        val size = computeMeasuredSize(bounds, widthMeasureSpec, heightMeasureSpec)
+        setInterpolatedSize(size, widthMeasureSpec, heightMeasureSpec)
     }
 
+    private var drawnProgress: Float? = null
+
     override fun onDraw(canvas: Canvas) {
         logger.onDraw(textAnimator.textInterpolator.shapedText)
 
-        val translation = getLocalTranslation()
-        canvas.translate(translation.x.toFloat(), translation.y.toFloat())
-        digitTranslateAnimator?.let {
-            canvas.translate(it.updatedTranslate.x.toFloat(), it.updatedTranslate.y.toFloat())
+        val interpProgress = getInterpolatedProgress()
+        val interpBounds = getInterpolatedTextBounds(interpProgress)
+        if (interpProgress != drawnProgress) {
+            drawnProgress = interpProgress
+            val measureSize = computeMeasuredSize(interpBounds)
+            setInterpolatedSize(measureSize)
+            (parent as? FlexClockView)?.run {
+                updateMeasuredSize()
+                updateLocation()
+            } ?: setInterpolatedLocation(measureSize)
         }
 
-        textAnimator.draw(canvas)
-
-        digitTranslateAnimator?.let {
-            canvas.translate(-it.updatedTranslate.x.toFloat(), -it.updatedTranslate.y.toFloat())
+        canvas.use {
+            digitTranslateAnimator?.apply { canvas.translate(currentTranslation) }
+            canvas.translate(getDrawTranslation(interpBounds))
+            textAnimator.draw(canvas)
         }
-        canvas.translate(-translation.x.toFloat(), -translation.y.toFloat())
     }
 
     override fun setVisibility(visibility: Int) {
@@ -246,6 +270,18 @@
         super.setAlpha(alpha)
     }
 
+    private val layoutBounds = RectF()
+
+    override fun onLayout(changed: Boolean, left: Int, top: Int, right: Int, bottom: Int) {
+        super.onLayout(changed, left, top, right, bottom)
+        logger.onLayout(changed, left, top, right, bottom)
+
+        layoutBounds.left = left.toFloat()
+        layoutBounds.top = top.toFloat()
+        layoutBounds.right = right.toFloat()
+        layoutBounds.bottom = bottom.toFloat()
+    }
+
     override fun invalidate() {
         logger.invalidate()
         super.invalidate()
@@ -338,14 +374,9 @@
     }
 
     fun refreshText() {
-        lockScreenPaint.getTextBounds(text, 0, text.length, textBounds)
+        lockScreenPaint.getTextBounds(text, textBounds)
         if (this::textAnimator.isInitialized) {
-            textAnimator.textInterpolator.targetPaint.getTextBounds(
-                text,
-                0,
-                text.length,
-                targetTextBounds,
-            )
+            textAnimator.textInterpolator.targetPaint.getTextBounds(text, targetTextBounds)
         }
 
         if (layout == null) {
@@ -362,113 +393,135 @@
             id == R.id.MINUTE_SECOND_DIGIT
     }
 
-    private fun getInterpolatedTextBounds(): Rect {
-        val progress = textAnimator.animator?.let { it.animatedValue as Float } ?: 1f
-        if (!textAnimator.isRunning || progress >= 1f) {
-            return Rect(targetTextBounds)
-        }
-
-        val interpolatedTextBounds = Rect()
-        interpolatedTextBounds.left =
-            MathUtils.lerp(prevTextBounds.left, targetTextBounds.left, progress).toInt()
-        interpolatedTextBounds.right =
-            MathUtils.lerp(prevTextBounds.right, targetTextBounds.right, progress).toInt()
-        interpolatedTextBounds.top =
-            MathUtils.lerp(prevTextBounds.top, targetTextBounds.top, progress).toInt()
-        interpolatedTextBounds.bottom =
-            MathUtils.lerp(prevTextBounds.bottom, targetTextBounds.bottom, progress).toInt()
-        return interpolatedTextBounds
+    private fun getInterpolatedProgress(): Float {
+        return textAnimator.animator?.let { it.animatedValue as Float } ?: 1f
     }
 
-    private fun setInterpolatedViewBounds(
-        interpBounds: Rect,
+    /** Returns the interpolated text bounding rect based on interpolation progress */
+    private fun getInterpolatedTextBounds(progress: Float = getInterpolatedProgress()): RectF {
+        if (!textAnimator.isRunning || progress >= 1f) {
+            return RectF(targetTextBounds)
+        }
+
+        return RectF().apply {
+            left = lerp(prevTextBounds.left, targetTextBounds.left, progress)
+            right = lerp(prevTextBounds.right, targetTextBounds.right, progress)
+            top = lerp(prevTextBounds.top, targetTextBounds.top, progress)
+            bottom = lerp(prevTextBounds.bottom, targetTextBounds.bottom, progress)
+        }
+    }
+
+    private fun computeMeasuredSize(
+        interpBounds: RectF,
+        widthMeasureSpec: Int = measuredWidthAndState,
+        heightMeasureSpec: Int = measuredHeightAndState,
+    ): VPointF {
+        val mode =
+            VPoint(
+                x = MeasureSpec.getMode(widthMeasureSpec),
+                y = MeasureSpec.getMode(heightMeasureSpec),
+            )
+
+        return VPointF(
+            when {
+                mode.x == EXACTLY -> MeasureSpec.getSize(widthMeasureSpec).toFloat()
+                else -> interpBounds.width() + 2 * lockScreenPaint.strokeWidth
+            },
+            when {
+                mode.y == EXACTLY -> MeasureSpec.getSize(heightMeasureSpec).toFloat()
+                else -> interpBounds.height() + 2 * lockScreenPaint.strokeWidth
+            },
+        )
+    }
+
+    /** Set the measured size of the view to match the interpolated text bounds */
+    private fun setInterpolatedSize(
+        measureBounds: VPointF,
         widthMeasureSpec: Int = measuredWidthAndState,
         heightMeasureSpec: Int = measuredHeightAndState,
     ) {
-        val heightMode = MeasureSpec.getMode(heightMeasureSpec)
-        val widthMode = MeasureSpec.getMode(widthMeasureSpec)
+        val mode =
+            VPoint(
+                x = MeasureSpec.getMode(widthMeasureSpec),
+                y = MeasureSpec.getMode(heightMeasureSpec),
+            )
 
-        val heightSpec =
-            if (heightMode == EXACTLY) {
-                heightMeasureSpec
-            } else {
-                MeasureSpec.makeMeasureSpec(
-                    if (isSingleDigit()) maxSingleDigitHeight
-                    else interpBounds.height() + 2 * lockScreenPaint.strokeWidth.toInt(),
-                    heightMode,
-                )
-            }
-
-        val widthSpec =
-            if (widthMode == EXACTLY) {
-                widthMeasureSpec
-            } else {
-                MeasureSpec.makeMeasureSpec(
-                    if (isSingleDigit()) maxSingleDigitWidth
-                    else interpBounds.width() + 2 * lockScreenPaint.strokeWidth.toInt(),
-                    widthMode,
-                )
-            }
-
-        setMeasuredDimension(widthSpec, heightSpec)
+        setMeasuredDimension(
+            MeasureSpec.makeMeasureSpec(measureBounds.x.roundToInt(), mode.x),
+            MeasureSpec.makeMeasureSpec(measureBounds.y.roundToInt(), mode.y),
+        )
     }
 
-    private fun updateXTranslation(inPoint: Point, interpolatedTextBounds: Rect): Point {
-        when (horizontalAlignment) {
-            HorizontalAlignment.LEFT -> {
-                inPoint.x = lockScreenPaint.strokeWidth.toInt() - interpolatedTextBounds.left
+    /** Set the location of the view to match the interpolated text bounds */
+    private fun setInterpolatedLocation(measureSize: VPointF): RectF {
+        val targetRect = RectF()
+        targetRect.apply {
+            when (horizontalAlignment) {
+                HorizontalAlignment.LEFT -> {
+                    left = layoutBounds.left
+                    right = layoutBounds.left + measureSize.x
+                }
+                HorizontalAlignment.CENTER -> {
+                    left = layoutBounds.centerX() - measureSize.x / 2f
+                    right = layoutBounds.centerX() + measureSize.x / 2f
+                }
+                HorizontalAlignment.RIGHT -> {
+                    left = layoutBounds.right - measureSize.x
+                    right = layoutBounds.right
+                }
             }
-            HorizontalAlignment.RIGHT -> {
-                inPoint.x =
-                    measuredWidth -
-                        interpolatedTextBounds.right -
-                        lockScreenPaint.strokeWidth.toInt()
-            }
-            HorizontalAlignment.CENTER -> {
-                inPoint.x =
-                    (measuredWidth - interpolatedTextBounds.width()) / 2 -
-                        interpolatedTextBounds.left
-            }
-        }
-        return inPoint
-    }
 
-    // translation of reference point of text
-    // used for translation when calling textInterpolator
-    private fun getLocalTranslation(): Point {
-        val interpolatedTextBounds = getInterpolatedTextBounds()
-        setInterpolatedViewBounds(interpolatedTextBounds)
-
-        val localTranslation = Point(0, 0)
-        val correctedBaseline = if (baseline != -1) baseline else baselineFromMeasure
-        // get the change from current baseline to expected baseline
-        when (verticalAlignment) {
-            VerticalAlignment.CENTER -> {
-                localTranslation.y =
-                    ((measuredHeight - interpolatedTextBounds.height()) / 2 -
-                        interpolatedTextBounds.top -
-                        correctedBaseline)
-            }
-            VerticalAlignment.TOP -> {
-                localTranslation.y =
-                    (-interpolatedTextBounds.top + lockScreenPaint.strokeWidth - correctedBaseline)
-                        .toInt()
-            }
-            VerticalAlignment.BOTTOM -> {
-                localTranslation.y =
-                    measuredHeight -
-                        interpolatedTextBounds.bottom -
-                        lockScreenPaint.strokeWidth.toInt() -
-                        correctedBaseline
-            }
-            VerticalAlignment.BASELINE -> {
-                // account for max bottom distance of font, so clock doesn't collide with elements
-                localTranslation.y =
-                    -lockScreenPaint.strokeWidth.toInt() - paint.fontMetrics.descent.toInt()
+            when (verticalAlignment) {
+                VerticalAlignment.TOP -> {
+                    top = layoutBounds.top
+                    bottom = layoutBounds.top + measureSize.y
+                }
+                VerticalAlignment.CENTER -> {
+                    top = layoutBounds.centerY() - measureSize.y / 2f
+                    bottom = layoutBounds.centerY() + measureSize.y / 2f
+                }
+                VerticalAlignment.BOTTOM -> {
+                    top = layoutBounds.bottom - measureSize.y
+                    bottom = layoutBounds.bottom
+                }
+                VerticalAlignment.BASELINE -> {
+                    top = layoutBounds.centerY() - measureSize.y / 2f
+                    bottom = layoutBounds.centerY() + measureSize.y / 2f
+                }
             }
         }
 
-        return updateXTranslation(localTranslation, interpolatedTextBounds)
+        setFrame(
+            targetRect.left.roundToInt(),
+            targetRect.top.roundToInt(),
+            targetRect.right.roundToInt(),
+            targetRect.bottom.roundToInt(),
+        )
+        return targetRect
+    }
+
+    private fun getDrawTranslation(interpBounds: RectF): VPointF {
+        val sizeDiff = this.measuredSize - interpBounds.size
+        val alignment =
+            VPointF(
+                when (horizontalAlignment) {
+                    HorizontalAlignment.LEFT -> 0f
+                    HorizontalAlignment.CENTER -> 0.5f
+                    HorizontalAlignment.RIGHT -> 1f
+                },
+                when (verticalAlignment) {
+                    VerticalAlignment.TOP -> 0f
+                    VerticalAlignment.CENTER -> 0.5f
+                    VerticalAlignment.BASELINE -> 0.5f
+                    VerticalAlignment.BOTTOM -> 1f
+                },
+            )
+        val renderCorrection =
+            VPointF(
+                x = -interpBounds.left,
+                y = -interpBounds.top - (if (baseline != -1) baseline else measuredBaseline),
+            )
+        return sizeDiff * alignment + renderCorrection
     }
 
     fun applyStyles(textStyle: FontTextStyle, aodStyle: FontTextStyle?) {
@@ -476,7 +529,7 @@
         lockScreenPaint.strokeJoin = Paint.Join.ROUND
         lockScreenPaint.typeface = typefaceCache.getTypefaceForVariant(lsFontVariation)
         typeface = lockScreenPaint.typeface
-        textStyle.lineHeight?.let { lineHeight = it.toInt() }
+        textStyle.lineHeight?.let { lineHeight = it.roundToInt() }
 
         this.aodStyle = aodStyle ?: textStyle.copy()
         aodDozingInterpolator = this.aodStyle.transitionInterpolator ?: Interpolators.LINEAR
@@ -487,7 +540,7 @@
         invalidate()
     }
 
-    // When constrainedByHeight is on, targetFontSizePx is the constrained height of textView
+    /** When constrainedByHeight is on, targetFontSizePx is the constrained height of textView */
     fun applyTextSize(targetFontSizePx: Float?, constrainedByHeight: Boolean = false) {
         val adjustedFontSizePx = adjustFontSize(targetFontSizePx, constrainedByHeight)
         val fontSizePx = adjustedFontSizePx * (textStyle.fontSizeScale ?: 1f)
@@ -496,7 +549,7 @@
         if (fontSizePx > 0) {
             setTextSize(TypedValue.COMPLEX_UNIT_PX, fontSizePx)
             lockScreenPaint.textSize = textSize
-            lockScreenPaint.getTextBounds(text, 0, text.length, textBounds)
+            lockScreenPaint.getTextBounds(text, textBounds)
             targetTextBounds.set(textBounds)
         }
         if (!constrainedByHeight) {
@@ -513,20 +566,19 @@
     }
 
     private fun recomputeMaxSingleDigitSizes() {
-        val rectForCalculate = Rect()
-        maxSingleDigitHeight = 0
-        maxSingleDigitWidth = 0
+        maxSingleDigitHeight = 0f
+        maxSingleDigitWidth = 0f
 
         for (i in 0..9) {
-            lockScreenPaint.getTextBounds("$i", 0, 1, rectForCalculate)
+            val rectForCalculate = lockScreenPaint.getTextBounds("$i")
             maxSingleDigitHeight = max(maxSingleDigitHeight, rectForCalculate.height())
             maxSingleDigitWidth = max(maxSingleDigitWidth, rectForCalculate.width())
         }
-        maxSingleDigitWidth += 2 * lockScreenPaint.strokeWidth.toInt()
-        maxSingleDigitHeight += 2 * lockScreenPaint.strokeWidth.toInt()
+        maxSingleDigitWidth += 2 * lockScreenPaint.strokeWidth
+        maxSingleDigitHeight += 2 * lockScreenPaint.strokeWidth
     }
 
-    // called without animation, can be used to set the initial state of animator
+    /** Called without animation, can be used to set the initial state of animator */
     private fun setInterpolatorPaint() {
         if (this::textAnimator.isInitialized) {
             // set initial style
@@ -542,25 +594,19 @@
         }
     }
 
-    /* Called after textAnimator.setTextStyle
-     * textAnimator.setTextStyle will update targetPaint,
-     * and rebase if previous animator is canceled
-     * so basePaint will store the state we transition from
+    /**
+     * Called after textAnimator.setTextStyle textAnimator.setTextStyle will update targetPaint, and
+     * rebase if previous animator is canceled so basePaint will store the state we transition from
      * and targetPaint will store the state we transition to
      */
     private fun updateTextBoundsForTextAnimator() {
-        textAnimator.textInterpolator.basePaint.getTextBounds(text, 0, text.length, prevTextBounds)
-        textAnimator.textInterpolator.targetPaint.getTextBounds(
-            text,
-            0,
-            text.length,
-            targetTextBounds,
-        )
+        textAnimator.textInterpolator.basePaint.getTextBounds(text, prevTextBounds)
+        textAnimator.textInterpolator.targetPaint.getTextBounds(text, targetTextBounds)
     }
 
-    /*
-     * Adjust text size to adapt to large display / font size
-     * where the text view will be constrained by height
+    /**
+     * Adjust text size to adapt to large display / font size where the text view will be
+     * constrained by height
      */
     private fun adjustFontSize(targetFontSizePx: Float?, constrainedByHeight: Boolean): Float {
         return if (constrainedByHeight) {
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/biometrics/AuthContainerViewTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/biometrics/AuthContainerViewTest.kt
index 88c9e74..0cfb36d 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/biometrics/AuthContainerViewTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/biometrics/AuthContainerViewTest.kt
@@ -36,6 +36,7 @@
 import android.view.View
 import android.view.WindowInsets
 import android.view.WindowManager
+import android.view.accessibility.AccessibilityManager
 import android.widget.ScrollView
 import androidx.constraintlayout.widget.ConstraintLayout
 import androidx.test.ext.junit.runners.AndroidJUnit4
@@ -114,6 +115,7 @@
     @Mock lateinit var selectedUserInteractor: SelectedUserInteractor
     @Mock private lateinit var packageManager: PackageManager
     @Mock private lateinit var activityTaskManager: ActivityTaskManager
+    @Mock private lateinit var accessibilityManager: AccessibilityManager
     @Mock private lateinit var lazyViewCapture: Lazy<ViewCapture>
 
     private lateinit var displayRepository: FakeDisplayRepository
@@ -678,6 +680,7 @@
                 udfpsUtils,
                 iconProvider,
                 activityTaskManager,
+                accessibilityManager,
             ),
             { credentialViewModel },
             fakeExecutor,
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/common/data/repository/PackageInstallerMonitorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/common/data/repository/PackageInstallerMonitorTest.kt
index 781e416..ede29d8 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/common/data/repository/PackageInstallerMonitorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/common/data/repository/PackageInstallerMonitorTest.kt
@@ -26,6 +26,9 @@
 import com.android.systemui.common.shared.model.PackageInstallSession
 import com.android.systemui.coroutines.collectLastValue
 import com.android.systemui.kosmos.applicationCoroutineScope
+import com.android.systemui.kosmos.backgroundScope
+import com.android.systemui.kosmos.collectLastValue
+import com.android.systemui.kosmos.runTest
 import com.android.systemui.kosmos.testScope
 import com.android.systemui.log.logcatLogBuffer
 import com.android.systemui.testKosmos
@@ -173,6 +176,58 @@
         }
 
     @Test
+    fun onCreateUpdatedSession_ignoreNullPackageNameSessions() =
+        kosmos.runTest {
+            val nullPackageSession =
+                SessionInfo().apply {
+                    sessionId = 1
+                    appPackageName = null
+                    appIcon = icon1
+                }
+
+            val wellFormedSession =
+                SessionInfo().apply {
+                    sessionId = 2
+                    appPackageName = "pkg_name"
+                    appIcon = icon2
+                }
+
+            defaultSessions = listOf(wellFormedSession)
+
+            whenever(packageInstaller.allSessions).thenReturn(defaultSessions)
+            whenever(packageInstaller.getSessionInfo(1)).thenReturn(nullPackageSession)
+            whenever(packageInstaller.getSessionInfo(2)).thenReturn(wellFormedSession)
+
+            val packageInstallerMonitor =
+                PackageInstallerMonitor(
+                    handler,
+                    backgroundScope,
+                    logcatLogBuffer("PackageInstallerRepositoryImplTest"),
+                    packageInstaller,
+                )
+
+            val sessions by collectLastValue(packageInstallerMonitor.installSessionsForPrimaryUser)
+
+            // Verify flow updated with the new session
+            assertThat(sessions)
+                .comparingElementsUsing(represents)
+                .containsExactlyElementsIn(defaultSessions)
+
+            val callback =
+                withArgCaptor<PackageInstaller.SessionCallback> {
+                    verify(packageInstaller).registerSessionCallback(capture(), eq(handler))
+                }
+
+            // New session added
+            callback.onCreated(nullPackageSession.sessionId)
+
+            // Verify flow updated with the new session
+            assertThat(sessions)
+                .comparingElementsUsing(represents)
+                .containsExactlyElementsIn(defaultSessions)
+        }
+
+    @Test
     fun installSessions_newSessionsAreAdded() =
         testScope.runTest {
             val installSessions by collectLastValue(underTest.installSessionsForPrimaryUser)
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/communal/CommunalOngoingContentStartableTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/communal/CommunalOngoingContentStartableTest.kt
index e53155d..ed73d89 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/communal/CommunalOngoingContentStartableTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/communal/CommunalOngoingContentStartableTest.kt
@@ -21,6 +21,8 @@
 import androidx.test.filters.SmallTest
 import com.android.systemui.Flags.FLAG_COMMUNAL_HUB
 import com.android.systemui.SysuiTestCase
+import com.android.systemui.communal.data.repository.communalMediaRepository
+import com.android.systemui.communal.data.repository.communalSmartspaceRepository
 import com.android.systemui.communal.data.repository.fakeCommunalMediaRepository
 import com.android.systemui.communal.data.repository.fakeCommunalSmartspaceRepository
 import com.android.systemui.communal.domain.interactor.communalInteractor
@@ -28,12 +30,12 @@
 import com.android.systemui.communal.domain.interactor.setCommunalEnabled
 import com.android.systemui.flags.Flags
 import com.android.systemui.flags.fakeFeatureFlagsClassic
+import com.android.systemui.kosmos.Kosmos
 import com.android.systemui.kosmos.applicationCoroutineScope
-import com.android.systemui.kosmos.testScope
+import com.android.systemui.kosmos.runTest
+import com.android.systemui.kosmos.useUnconfinedTestDispatcher
 import com.android.systemui.testKosmos
 import com.google.common.truth.Truth.assertThat
-import kotlinx.coroutines.test.runCurrent
-import kotlinx.coroutines.test.runTest
 import org.junit.Before
 import org.junit.Test
 import org.junit.runner.RunWith
@@ -42,46 +44,64 @@
 @EnableFlags(FLAG_COMMUNAL_HUB)
 @RunWith(AndroidJUnit4::class)
 class CommunalOngoingContentStartableTest : SysuiTestCase() {
-    private val kosmos = testKosmos()
-    private val testScope = kosmos.testScope
+    private val kosmos = testKosmos().useUnconfinedTestDispatcher()
 
-    private val mediaRepository = kosmos.fakeCommunalMediaRepository
-    private val smartspaceRepository = kosmos.fakeCommunalSmartspaceRepository
+    private var showUmoOnHub = true
 
-    private lateinit var underTest: CommunalOngoingContentStartable
+    private val Kosmos.underTest by
+        Kosmos.Fixture {
+            CommunalOngoingContentStartable(
+                bgScope = applicationCoroutineScope,
+                communalInteractor = communalInteractor,
+                communalMediaRepository = communalMediaRepository,
+                communalSettingsInteractor = communalSettingsInteractor,
+                communalSmartspaceRepository = communalSmartspaceRepository,
+                showUmoOnHub = showUmoOnHub,
+            )
+        }
 
     @Before
     fun setUp() {
         kosmos.fakeFeatureFlagsClassic.set(Flags.COMMUNAL_SERVICE_ENABLED, true)
-        underTest =
-            CommunalOngoingContentStartable(
-                bgScope = kosmos.applicationCoroutineScope,
-                communalInteractor = kosmos.communalInteractor,
-                communalMediaRepository = mediaRepository,
-                communalSettingsInteractor = kosmos.communalSettingsInteractor,
-                communalSmartspaceRepository = smartspaceRepository,
-            )
     }
 
     @Test
-    fun testListenForOngoingContentWhenCommunalIsEnabled() =
-        testScope.runTest {
+    fun testListenForOngoingContent() =
+        kosmos.runTest {
             underTest.start()
-            runCurrent()
 
-            assertThat(mediaRepository.isListening()).isFalse()
-            assertThat(smartspaceRepository.isListening()).isFalse()
+            assertThat(fakeCommunalMediaRepository.isListening()).isFalse()
+            assertThat(fakeCommunalSmartspaceRepository.isListening()).isFalse()
 
             kosmos.setCommunalEnabled(true)
-            runCurrent()
 
-            assertThat(mediaRepository.isListening()).isTrue()
-            assertThat(smartspaceRepository.isListening()).isTrue()
+            assertThat(fakeCommunalMediaRepository.isListening()).isTrue()
+            assertThat(fakeCommunalSmartspaceRepository.isListening()).isTrue()
 
             kosmos.setCommunalEnabled(false)
-            runCurrent()
 
-            assertThat(mediaRepository.isListening()).isFalse()
-            assertThat(smartspaceRepository.isListening()).isFalse()
+            assertThat(fakeCommunalMediaRepository.isListening()).isFalse()
+            assertThat(fakeCommunalSmartspaceRepository.isListening()).isFalse()
+        }
+
+    @Test
+    fun testListenForOngoingContent_showUmoFalse() =
+        kosmos.runTest {
+            showUmoOnHub = false
+            underTest.start()
+
+            assertThat(fakeCommunalMediaRepository.isListening()).isFalse()
+            assertThat(fakeCommunalSmartspaceRepository.isListening()).isFalse()
+
+            kosmos.setCommunalEnabled(true)
+
+            // Media listening does not start when UMO is disabled.
+            assertThat(fakeCommunalMediaRepository.isListening()).isFalse()
+            assertThat(fakeCommunalSmartspaceRepository.isListening()).isTrue()
+
+            kosmos.setCommunalEnabled(false)
+
+            assertThat(fakeCommunalMediaRepository.isListening()).isFalse()
+            assertThat(fakeCommunalSmartspaceRepository.isListening()).isFalse()
         }
 }
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/display/data/repository/DisplayRepositoryTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/display/data/repository/DisplayRepositoryTest.kt
index dfea784..197b0ee 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/display/data/repository/DisplayRepositoryTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/display/data/repository/DisplayRepositoryTest.kt
@@ -23,15 +23,16 @@
 import android.view.Display.DEFAULT_DISPLAY
 import android.view.Display.TYPE_EXTERNAL
 import android.view.Display.TYPE_INTERNAL
+import android.view.IWindowManager
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.SmallTest
 import com.android.systemui.SysuiTestCase
 import com.android.systemui.coroutines.FlowValue
 import com.android.systemui.coroutines.collectLastValue
 import com.android.systemui.coroutines.collectValues
+import com.android.systemui.statusbar.CommandQueue
 import com.android.systemui.util.mockito.kotlinArgumentCaptor
 import com.android.systemui.util.mockito.mock
-import com.android.systemui.util.mockito.whenever
 import com.android.systemui.utils.os.FakeHandler
 import com.google.common.truth.Truth.assertThat
 import kotlinx.coroutines.test.TestScope
@@ -46,6 +47,7 @@
 import org.mockito.Mockito.times
 import org.mockito.Mockito.verify
 import org.mockito.kotlin.eq
+import org.mockito.kotlin.whenever
 
 @RunWith(AndroidJUnit4::class)
 @TestableLooper.RunWithLooper
@@ -53,7 +55,11 @@
 class DisplayRepositoryTest : SysuiTestCase() {
 
     private val displayManager = mock<DisplayManager>()
+    private val commandQueue = mock<CommandQueue>()
+    private val windowManager = mock<IWindowManager>()
+
     private val displayListener = kotlinArgumentCaptor<DisplayManager.DisplayListener>()
+    private val commandQueueCallbacks = kotlinArgumentCaptor<CommandQueue.Callbacks>()
     private val connectedDisplayListener = kotlinArgumentCaptor<DisplayManager.DisplayListener>()
 
     private val testHandler = FakeHandler(Looper.getMainLooper())
@@ -67,6 +73,8 @@
     private val displayRepository: DisplayRepositoryImpl by lazy {
         DisplayRepositoryImpl(
                 displayManager,
+                commandQueue,
+                windowManager,
                 testHandler,
                 TestScope(UnconfinedTestDispatcher()),
                 UnconfinedTestDispatcher(),
@@ -513,6 +521,115 @@
             assertThat(displayRepository.getDisplay(2)).isNull()
         }
 
+    @Test
+    fun displayIdsWithSystemDecorations_onStart_emitsDisplaysWithSystemDecorations() =
+        testScope.runTest {
+            setDisplays(0, 1, 2)
+            whenever(windowManager.shouldShowSystemDecors(0)).thenReturn(true)
+            whenever(windowManager.shouldShowSystemDecors(1)).thenReturn(false)
+            whenever(windowManager.shouldShowSystemDecors(2)).thenReturn(true)
+
+            val displayIdsWithSystemDecorations by latestDisplayIdsWithSystemDecorationsValue()
+
+            assertThat(displayIdsWithSystemDecorations).containsExactly(0, 2)
+        }
+
+    @Test
+    fun displayIdsWithSystemDecorations_systemDecorationAdded_emitsIncludingNewDisplayIds() =
+        testScope.runTest {
+            setDisplays(0)
+            whenever(windowManager.shouldShowSystemDecors(0)).thenReturn(true)
+            val lastDisplayIdsWithSystemDecorations by latestDisplayIdsWithSystemDecorationsValue()
+
+            sendOnDisplayAddSystemDecorations(2)
+            sendOnDisplayAddSystemDecorations(3)
+
+            assertThat(lastDisplayIdsWithSystemDecorations).containsExactly(0, 2, 3)
+        }
+
+    @Test
+    fun displayIdsWithSystemDecorations_systemDecorationAdded_emitsToNewSubscribers() =
+        testScope.runTest {
+            setDisplays(0)
+            whenever(windowManager.shouldShowSystemDecors(0)).thenReturn(true)
+
+            val priorDisplayIdsWithSystemDecorations by latestDisplayIdsWithSystemDecorationsValue()
+            sendOnDisplayAddSystemDecorations(1)
+            assertThat(priorDisplayIdsWithSystemDecorations).containsExactly(0, 1)
+
+            val lastDisplayIdsWithSystemDecorations by
+                collectLastValue(displayRepository.displayIdsWithSystemDecorations)
+            assertThat(lastDisplayIdsWithSystemDecorations).containsExactly(0, 1)
+        }
+
+    @Test
+    fun displayIdsWithSystemDecorations_systemDecorationRemoved_doesNotEmitRemovedDisplayId() =
+        testScope.runTest {
+            val lastDisplayIdsWithSystemDecorations by latestDisplayIdsWithSystemDecorationsValue()
+
+            sendOnDisplayAddSystemDecorations(1)
+            sendOnDisplayAddSystemDecorations(2)
+            sendOnDisplayRemoveSystemDecorations(2)
+
+            assertThat(lastDisplayIdsWithSystemDecorations).containsExactly(1)
+        }
+
+    @Test
+    fun displayIdsWithSystemDecorations_systemDecorationsRemoved_nonExistentDisplay_noEffect() =
+        testScope.runTest {
+            val lastDisplayIdsWithSystemDecorations by latestDisplayIdsWithSystemDecorationsValue()
+
+            sendOnDisplayAddSystemDecorations(1)
+            sendOnDisplayRemoveSystemDecorations(2)
+
+            assertThat(lastDisplayIdsWithSystemDecorations).containsExactly(1)
+        }
+
+    @Test
+    fun displayIdsWithSystemDecorations_displayRemoved_doesNotEmitRemovedDisplayId() =
+        testScope.runTest {
+            val lastDisplayIdsWithSystemDecorations by latestDisplayIdsWithSystemDecorationsValue()
+
+            sendOnDisplayAddSystemDecorations(1)
+            sendOnDisplayAddSystemDecorations(2)
+            sendOnDisplayRemoved(2)
+
+            assertThat(lastDisplayIdsWithSystemDecorations).containsExactly(1)
+        }
+
+    @Test
+    fun displayIdsWithSystemDecorations_displayRemoved_nonExistentDisplay_noEffect() =
+        testScope.runTest {
+            val lastDisplayIdsWithSystemDecorations by latestDisplayIdsWithSystemDecorationsValue()
+
+            sendOnDisplayAddSystemDecorations(1)
+            sendOnDisplayRemoved(2)
+
+            assertThat(lastDisplayIdsWithSystemDecorations).containsExactly(1)
+        }
+
+    @Test
+    fun displayIdsWithSystemDecorations_onFlowCollection_commandQueueCallbackRegistered() =
+        testScope.runTest {
+            val lastDisplayIdsWithSystemDecorations by latestDisplayIdsWithSystemDecorationsValue()
+
+            assertThat(lastDisplayIdsWithSystemDecorations).isEmpty()
+
+            verify(commandQueue, times(1)).addCallback(any())
+        }
+
+    @Test
+    fun displayIdsWithSystemDecorations_afterFlowCollection_commandQueueCallbackUnregistered() {
+        testScope.runTest {
+            val lastDisplayIdsWithSystemDecorations by latestDisplayIdsWithSystemDecorationsValue()
+
+            assertThat(lastDisplayIdsWithSystemDecorations).isEmpty()
+
+            verify(commandQueue, times(1)).addCallback(any())
+        }
+        verify(commandQueue, times(1)).removeCallback(any())
+    }
+
     private fun Iterable<Display>.ids(): List<Int> = map { it.displayId }
 
     private fun Iterable<Set<Display>>.toIdSets(): List<Set<Int>> = map { it.ids().toSet() }
@@ -550,6 +667,14 @@
         return flowValue
     }
 
+    // Wrapper to capture the displayListener and commandQueueCallbacks.
+    private fun TestScope.latestDisplayIdsWithSystemDecorationsValue(): FlowValue<Set<Int>?> {
+        val flowValue = collectLastValue(displayRepository.displayIdsWithSystemDecorations)
+        captureAddedRemovedListener()
+        captureCommandQueueCallbacks()
+        return flowValue
+    }
+
     private fun captureAddedRemovedListener() {
         verify(displayManager)
             .registerDisplayListener(
@@ -563,6 +688,10 @@
             )
     }
 
+    private fun captureCommandQueueCallbacks() {
+        verify(commandQueue).addCallback(commandQueueCallbacks.capture())
+    }
+
     private fun sendOnDisplayAdded(id: Int, displayType: Int) {
         val mockDisplay = display(id = id, type = displayType)
         whenever(displayManager.getDisplay(eq(id))).thenReturn(mockDisplay)
@@ -592,6 +721,14 @@
         connectedDisplayListener.value.onDisplayChanged(id)
     }
 
+    private fun sendOnDisplayRemoveSystemDecorations(id: Int) {
+        commandQueueCallbacks.value.onDisplayRemoveSystemDecorations(id)
+    }
+
+    private fun sendOnDisplayAddSystemDecorations(id: Int) {
+        commandQueueCallbacks.value.onDisplayAddSystemDecorations(id)
+    }
+
     private fun setDisplays(displays: List<Display>) {
         whenever(displayManager.displays).thenReturn(displays.toTypedArray())
         displays.forEach { display ->
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/ui/view/layout/sections/ClockSectionTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/ui/view/layout/sections/ClockSectionTest.kt
index 2ef86e66..1665895 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/ui/view/layout/sections/ClockSectionTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/ui/view/layout/sections/ClockSectionTest.kt
@@ -19,6 +19,8 @@
 
 import android.content.pm.PackageManager
 import android.content.res.Resources
+import android.platform.test.annotations.DisableFlags
+import android.platform.test.annotations.EnableFlags
 import android.view.View.GONE
 import android.view.View.VISIBLE
 import androidx.constraintlayout.widget.ConstraintSet
@@ -128,6 +130,7 @@
     }
 
     @Test
+    @DisableFlags(com.android.systemui.shared.Flags.FLAG_CLOCK_REACTIVE_SMARTSPACE_LAYOUT)
     fun testApplyDefaultConstraints_LargeClock_SplitShade() =
         kosmos.testScope.runTest {
             with(kosmos) {
@@ -144,11 +147,54 @@
         }
 
     @Test
+    @EnableFlags(com.android.systemui.shared.Flags.FLAG_CLOCK_REACTIVE_SMARTSPACE_LAYOUT)
+    fun testApplyDefaultConstraints_LargeClock_SplitShade_ReactiveVariantsOn() =
+        kosmos.testScope.runTest {
+            with(kosmos) {
+                shadeRepository.setShadeLayoutWide(true)
+                keyguardClockInteractor.setClockSize(ClockSize.LARGE)
+                advanceUntilIdle()
+            }
+
+            val cs = ConstraintSet()
+            underTest.applyDefaultConstraints(cs)
+
+            assertLargeClockTop(cs, LARGE_CLOCK_TOP_WITHOUT_SMARTSPACE +
+                    ENHANCED_SMART_SPACE_HEIGHT)
+            assertSmallClockTop(cs)
+        }
+
+    @Test
+    @DisableFlags(com.android.systemui.shared.Flags.FLAG_CLOCK_REACTIVE_SMARTSPACE_LAYOUT)
     fun testApplyDefaultConstraints_LargeClock_NonSplitShade() =
         kosmos.testScope.runTest {
             with(kosmos) {
                 val isShadeLayoutWide by collectLastValue(shadeRepository.isShadeLayoutWide)
                 val isLargeClockVisible by
+                collectLastValue(keyguardClockViewModel.isLargeClockVisible)
+
+                shadeRepository.setShadeLayoutWide(false)
+                keyguardClockInteractor.setClockSize(ClockSize.LARGE)
+                notificationsKeyguardInteractor.setNotificationsFullyHidden(true)
+                keyguardSmartspaceInteractor.setBcSmartspaceVisibility(VISIBLE)
+                fakeConfigurationController.notifyConfigurationChanged()
+                advanceUntilIdle()
+
+                val cs = ConstraintSet()
+                underTest.applyDefaultConstraints(cs)
+
+                assertLargeClockTop(cs, LARGE_CLOCK_TOP)
+                assertSmallClockTop(cs)
+            }
+        }
+
+    @Test
+    @EnableFlags(com.android.systemui.shared.Flags.FLAG_CLOCK_REACTIVE_SMARTSPACE_LAYOUT)
+    fun testApplyDefaultConstraints_LargeClock_NonSplitShade_reactiveVariantsOn() =
+        kosmos.testScope.runTest {
+            with(kosmos) {
+                val isShadeLayoutWide by collectLastValue(shadeRepository.isShadeLayoutWide)
+                val isLargeClockVisible by
                     collectLastValue(keyguardClockViewModel.isLargeClockVisible)
 
                 shadeRepository.setShadeLayoutWide(false)
@@ -161,7 +207,8 @@
                 val cs = ConstraintSet()
                 underTest.applyDefaultConstraints(cs)
 
-                assertLargeClockTop(cs, LARGE_CLOCK_TOP)
+                assertLargeClockTop(cs, LARGE_CLOCK_TOP_WITHOUT_SMARTSPACE +
+                        ENHANCED_SMART_SPACE_HEIGHT)
                 assertSmallClockTop(cs)
             }
         }
@@ -215,6 +262,7 @@
         }
 
     @Test
+    @DisableFlags(com.android.systemui.shared.Flags.FLAG_CLOCK_REACTIVE_SMARTSPACE_LAYOUT)
     fun testApplyDefaultConstraints_SmallClock_SplitShade() =
         kosmos.testScope.runTest {
             with(kosmos) {
@@ -238,6 +286,32 @@
         }
 
     @Test
+    @EnableFlags(com.android.systemui.shared.Flags.FLAG_CLOCK_REACTIVE_SMARTSPACE_LAYOUT)
+    fun testApplyDefaultConstraints_SmallClock_SplitShade_ReactiveVariantsOn() =
+        kosmos.testScope.runTest {
+            with(kosmos) {
+                val isShadeLayoutWide by collectLastValue(shadeRepository.isShadeLayoutWide)
+                val isLargeClockVisible by
+                collectLastValue(keyguardClockViewModel.isLargeClockVisible)
+
+                shadeRepository.setShadeLayoutWide(true)
+                keyguardClockInteractor.setClockSize(ClockSize.SMALL)
+                notificationsKeyguardInteractor.setNotificationsFullyHidden(true)
+                keyguardSmartspaceInteractor.setBcSmartspaceVisibility(VISIBLE)
+                fakeConfigurationController.notifyConfigurationChanged()
+                advanceUntilIdle()
+
+                val cs = ConstraintSet()
+                underTest.applyDefaultConstraints(cs)
+
+                assertLargeClockTop(cs, LARGE_CLOCK_TOP_WITHOUT_SMARTSPACE +
+                        ENHANCED_SMART_SPACE_HEIGHT)
+                assertSmallClockTop(cs)
+            }
+        }
+
+    @Test
+    @DisableFlags(com.android.systemui.shared.Flags.FLAG_CLOCK_REACTIVE_SMARTSPACE_LAYOUT)
     fun testApplyDefaultConstraints_SmallClock_NonSplitShade() =
         kosmos.testScope.runTest {
             with(kosmos) {
@@ -260,6 +334,30 @@
         }
 
     @Test
+    @EnableFlags(com.android.systemui.shared.Flags.FLAG_CLOCK_REACTIVE_SMARTSPACE_LAYOUT)
+    fun testApplyDefaultConstraints_SmallClock_NonSplitShade_ReactiveVariantsOn() =
+        kosmos.testScope.runTest {
+            with(kosmos) {
+                val isShadeLayoutWide by collectLastValue(shadeRepository.isShadeLayoutWide)
+                val isLargeClockVisible by
+                collectLastValue(keyguardClockViewModel.isLargeClockVisible)
+
+                shadeRepository.setShadeLayoutWide(false)
+                keyguardClockInteractor.setClockSize(ClockSize.SMALL)
+                notificationsKeyguardInteractor.setNotificationsFullyHidden(true)
+                keyguardSmartspaceInteractor.setBcSmartspaceVisibility(VISIBLE)
+                fakeConfigurationController.notifyConfigurationChanged()
+                advanceUntilIdle()
+
+                val cs = ConstraintSet()
+                underTest.applyDefaultConstraints(cs)
+                assertLargeClockTop(cs, LARGE_CLOCK_TOP_WITHOUT_SMARTSPACE +
+                        ENHANCED_SMART_SPACE_HEIGHT)
+                assertSmallClockTop(cs)
+            }
+        }
+
+    @Test
     fun testSmartspaceVisible_weatherClockDateAndIconsBarrierBottomBelowBCSmartspace() =
         kosmos.testScope.runTest {
             with(kosmos) {
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/ui/view/layout/sections/SmartspaceSectionTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/ui/view/layout/sections/SmartspaceSectionTest.kt
index 7706c50..374bcbf 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/ui/view/layout/sections/SmartspaceSectionTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/ui/view/layout/sections/SmartspaceSectionTest.kt
@@ -17,6 +17,7 @@
 
 package com.android.systemui.keyguard.ui.view.layout.sections
 
+import android.platform.test.annotations.DisableFlags
 import android.view.View
 import android.widget.LinearLayout
 import androidx.constraintlayout.widget.ConstraintLayout
@@ -31,6 +32,7 @@
 import com.android.systemui.keyguard.domain.interactor.KeyguardBlueprintInteractor
 import com.android.systemui.keyguard.domain.interactor.KeyguardSmartspaceInteractor
 import com.android.systemui.keyguard.ui.viewmodel.KeyguardClockViewModel
+import com.android.systemui.keyguard.ui.viewmodel.KeyguardRootViewModel
 import com.android.systemui.keyguard.ui.viewmodel.KeyguardSmartspaceViewModel
 import com.android.systemui.res.R
 import com.android.systemui.shared.R as sharedR
@@ -48,6 +50,7 @@
 
 @RunWith(AndroidJUnit4::class)
 @SmallTest
+@DisableFlags(com.android.systemui.shared.Flags.FLAG_CLOCK_REACTIVE_SMARTSPACE_LAYOUT)
 class SmartspaceSectionTest : SysuiTestCase() {
     private lateinit var underTest: SmartspaceSection
     @Mock private lateinit var keyguardClockViewModel: KeyguardClockViewModel
@@ -56,6 +59,7 @@
     @Mock private lateinit var keyguardUnlockAnimationController: KeyguardUnlockAnimationController
     @Mock private lateinit var keyguardSmartspaceInteractor: KeyguardSmartspaceInteractor
     @Mock private lateinit var blueprintInteractor: Lazy<KeyguardBlueprintInteractor>
+    @Mock private lateinit var keyguardRootViewModel: KeyguardRootViewModel
 
     private val smartspaceView = View(mContext).also { it.id = sharedR.id.bc_smartspace_view }
     private val weatherView = View(mContext).also { it.id = sharedR.id.weather_smartspace_view }
@@ -80,13 +84,14 @@
                 lockscreenSmartspaceController,
                 keyguardUnlockAnimationController,
                 blueprintInteractor,
+                keyguardRootViewModel,
             )
         constraintLayout = ConstraintLayout(mContext)
         whenever(lockscreenSmartspaceController.buildAndConnectView(any()))
             .thenReturn(smartspaceView)
-        whenever(lockscreenSmartspaceController.buildAndConnectWeatherView(any()))
+        whenever(lockscreenSmartspaceController.buildAndConnectWeatherView(any(), any()))
             .thenReturn(weatherView)
-        whenever(lockscreenSmartspaceController.buildAndConnectDateView(any())).thenReturn(dateView)
+        whenever(lockscreenSmartspaceController.buildAndConnectDateView(any(), any())).thenReturn(dateView)
         whenever(keyguardClockViewModel.hasCustomWeatherDataDisplay)
             .thenReturn(hasCustomWeatherDataDisplay)
         whenever(keyguardClockViewModel.clockShouldBeCentered).thenReturn(clockShouldBeCentered)
@@ -97,6 +102,7 @@
     }
 
     @Test
+    @DisableFlags(com.android.systemui.shared.Flags.FLAG_CLOCK_REACTIVE_SMARTSPACE_LAYOUT)
     fun testAddViews_notSmartspaceEnabled() {
         whenever(keyguardSmartspaceViewModel.isSmartspaceEnabled).thenReturn(false)
         val constraintLayout = ConstraintLayout(mContext)
@@ -107,6 +113,7 @@
     }
 
     @Test
+    @DisableFlags(com.android.systemui.shared.Flags.FLAG_CLOCK_REACTIVE_SMARTSPACE_LAYOUT)
     fun testAddViews_smartspaceEnabled_dateWeatherDecoupled() {
         whenever(keyguardSmartspaceViewModel.isDateWeatherDecoupled).thenReturn(true)
         underTest.addViews(constraintLayout)
@@ -125,6 +132,7 @@
     }
 
     @Test
+    @DisableFlags(com.android.systemui.shared.Flags.FLAG_CLOCK_REACTIVE_SMARTSPACE_LAYOUT)
     fun testConstraintsWhenShadeLayoutIsNotWide() {
         underTest.addViews(constraintLayout)
         underTest.applyConstraints(constraintSet)
@@ -134,6 +142,7 @@
     }
 
     @Test
+    @DisableFlags(com.android.systemui.shared.Flags.FLAG_CLOCK_REACTIVE_SMARTSPACE_LAYOUT)
     fun testConstraintsWhenShadeLayoutIsWide() {
         isShadeLayoutWide.value = true
 
@@ -145,6 +154,7 @@
     }
 
     @Test
+    @DisableFlags(com.android.systemui.shared.Flags.FLAG_CLOCK_REACTIVE_SMARTSPACE_LAYOUT)
     fun testConstraintsWhenNotHasCustomWeatherDataDisplay() {
         whenever(keyguardSmartspaceViewModel.isDateWeatherDecoupled).thenReturn(true)
         underTest.addViews(constraintLayout)
@@ -159,6 +169,7 @@
     }
 
     @Test
+    @DisableFlags(com.android.systemui.shared.Flags.FLAG_CLOCK_REACTIVE_SMARTSPACE_LAYOUT)
     fun testConstraintsWhenHasCustomWeatherDataDisplay() {
         hasCustomWeatherDataDisplay.value = true
         underTest.addViews(constraintLayout)
@@ -169,6 +180,7 @@
     }
 
     @Test
+    @DisableFlags(com.android.systemui.shared.Flags.FLAG_CLOCK_REACTIVE_SMARTSPACE_LAYOUT)
     fun testNormalDateWeatherVisibility() {
         isWeatherVisibleFlow.value = true
         underTest.addViews(constraintLayout)
@@ -182,6 +194,7 @@
     }
 
     @Test
+    @DisableFlags(com.android.systemui.shared.Flags.FLAG_CLOCK_REACTIVE_SMARTSPACE_LAYOUT)
     fun testCustomDateWeatherVisibility() {
         hasCustomWeatherDataDisplay.value = true
         underTest.addViews(constraintLayout)
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/ui/viewmodel/DozingToDreamingTransitionViewModelTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/ui/viewmodel/DozingToDreamingTransitionViewModelTest.kt
deleted file mode 100644
index 052dfd5..0000000
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/ui/viewmodel/DozingToDreamingTransitionViewModelTest.kt
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright (C) 2025 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.systemui.keyguard.ui.viewmodel
-
-import androidx.test.ext.junit.runners.AndroidJUnit4
-import androidx.test.filters.SmallTest
-import com.android.systemui.SysuiTestCase
-import com.android.systemui.keyguard.data.repository.fakeKeyguardTransitionRepository
-import com.android.systemui.keyguard.shared.model.KeyguardState
-import com.android.systemui.kosmos.collectValues
-import com.android.systemui.kosmos.runTest
-import com.android.systemui.kosmos.testScope
-import com.android.systemui.testKosmos
-import com.google.common.truth.Truth.assertThat
-import org.junit.Test
-import org.junit.runner.RunWith
-
-@SmallTest
-@RunWith(AndroidJUnit4::class)
-class DozingToDreamingTransitionViewModelTest : SysuiTestCase() {
-    val kosmos = testKosmos()
-
-    val underTest by lazy { kosmos.dozingToDreamingTransitionViewModel }
-
-    @Test
-    fun notificationShadeAlpha() =
-        kosmos.runTest {
-            val values by collectValues(underTest.notificationAlpha)
-            assertThat(values).isEmpty()
-
-            fakeKeyguardTransitionRepository.sendTransitionSteps(
-                from = KeyguardState.DOZING,
-                to = KeyguardState.DREAMING,
-                testScope,
-            )
-
-            assertThat(values).isNotEmpty()
-            values.forEach { assertThat(it).isEqualTo(0) }
-        }
-}
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/data/repository/MediaFilterRepositoryTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/data/repository/MediaFilterRepositoryTest.kt
index 24672eb..8a11be0 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/data/repository/MediaFilterRepositoryTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/data/repository/MediaFilterRepositoryTest.kt
@@ -30,21 +30,11 @@
 import com.android.systemui.media.controls.shared.model.MediaDataLoadingModel
 import com.android.systemui.media.controls.shared.model.SmartspaceMediaData
 import com.android.systemui.media.controls.shared.model.SmartspaceMediaLoadingModel
-import com.android.systemui.media.controls.util.SmallHash
-import com.android.systemui.media.controls.util.mediaSmartspaceLogger
-import com.android.systemui.media.controls.util.mockMediaSmartspaceLogger
 import com.android.systemui.testKosmos
-import com.android.systemui.util.time.systemClock
 import com.google.common.truth.Truth.assertThat
 import kotlinx.coroutines.test.runTest
 import org.junit.Test
 import org.junit.runner.RunWith
-import org.mockito.ArgumentMatchers.anyBoolean
-import org.mockito.ArgumentMatchers.anyInt
-import org.mockito.ArgumentMatchers.eq
-import org.mockito.kotlin.never
-import org.mockito.kotlin.reset
-import org.mockito.kotlin.verify
 
 @SmallTest
 @RunWith(AndroidJUnit4::class)
@@ -52,7 +42,6 @@
 
     private val kosmos = testKosmos()
     private val testScope = kosmos.testScope
-    private val smartspaceLogger = kosmos.mockMediaSmartspaceLogger
     private val icon = Icon.createWithResource(context, R.drawable.ic_media_play)
     private val mediaRecommendation =
         SmartspaceMediaData(
@@ -61,11 +50,7 @@
             recommendations = MediaTestHelper.getValidRecommendationList(icon),
         )
 
-    private val underTest: MediaFilterRepository =
-        with(kosmos) {
-            mediaSmartspaceLogger = mockMediaSmartspaceLogger
-            mediaFilterRepository
-        }
+    private val underTest: MediaFilterRepository = with(kosmos) { mediaFilterRepository }
 
     @Test
     fun addSelectedUserMediaEntry_activeThenInactivate() =
@@ -185,29 +170,15 @@
             underTest.addSelectedUserMediaEntry(playingData)
             underTest.addMediaDataLoadingState(
                 MediaDataLoadingModel.Loaded(playingInstanceId),
-                false
+                false,
             )
 
-            verify(smartspaceLogger)
-                .logSmartspaceCardReceived(
-                    playingData.smartspaceId,
-                    playingData.appUid,
-                    cardinality = 2
-                )
-
             underTest.addSelectedUserMediaEntry(remoteData)
             underTest.addMediaDataLoadingState(
                 MediaDataLoadingModel.Loaded(remoteInstanceId),
-                false
+                false,
             )
 
-            verify(smartspaceLogger)
-                .logSmartspaceCardReceived(
-                    remoteData.smartspaceId,
-                    playingData.appUid,
-                    cardinality = 3,
-                    rank = 1
-                )
             assertThat(currentMedia?.size).isEqualTo(3)
             assertThat(currentMedia)
                 .containsExactly(
@@ -215,7 +186,7 @@
                     MediaCommonModel.MediaControl(MediaDataLoadingModel.Loaded(remoteInstanceId)),
                     MediaCommonModel.MediaRecommendations(
                         SmartspaceMediaLoadingModel.Loaded(KEY_MEDIA_SMARTSPACE, true)
-                    )
+                    ),
                 )
                 .inOrder()
         }
@@ -238,7 +209,7 @@
             assertThat(currentMedia)
                 .containsExactly(
                     MediaCommonModel.MediaControl(MediaDataLoadingModel.Loaded(playingInstanceId1)),
-                    MediaCommonModel.MediaControl(MediaDataLoadingModel.Loaded(playingInstanceId2))
+                    MediaCommonModel.MediaControl(MediaDataLoadingModel.Loaded(playingInstanceId2)),
                 )
                 .inOrder()
 
@@ -258,29 +229,19 @@
                     MediaCommonModel.MediaControl(MediaDataLoadingModel.Loaded(playingInstanceId1)),
                     MediaCommonModel.MediaControl(
                         MediaDataLoadingModel.Loaded(playingInstanceId2, false)
-                    )
+                    ),
                 )
                 .inOrder()
 
             underTest.setOrderedMedia()
 
-            verify(smartspaceLogger, never())
-                .logSmartspaceCardReceived(
-                    anyInt(),
-                    anyInt(),
-                    anyInt(),
-                    anyBoolean(),
-                    anyBoolean(),
-                    anyInt(),
-                    anyInt()
-                )
             assertThat(currentMedia?.size).isEqualTo(2)
             assertThat(currentMedia)
                 .containsExactly(
                     MediaCommonModel.MediaControl(
                         MediaDataLoadingModel.Loaded(playingInstanceId2, false)
                     ),
-                    MediaCommonModel.MediaControl(MediaDataLoadingModel.Loaded(playingInstanceId1))
+                    MediaCommonModel.MediaControl(MediaDataLoadingModel.Loaded(playingInstanceId1)),
                 )
                 .inOrder()
         }
@@ -321,27 +282,6 @@
             )
             underTest.setOrderedMedia()
 
-            val smartspaceId = SmallHash.hash(mediaRecommendation.targetId)
-            verify(smartspaceLogger)
-                .logSmartspaceCardReceived(
-                    eq(smartspaceId),
-                    anyInt(),
-                    eq(6),
-                    anyBoolean(),
-                    anyBoolean(),
-                    eq(2),
-                    anyInt()
-                )
-            verify(smartspaceLogger, never())
-                .logSmartspaceCardReceived(
-                    eq(playingAndLocalData.smartspaceId),
-                    anyInt(),
-                    anyInt(),
-                    anyBoolean(),
-                    anyBoolean(),
-                    anyInt(),
-                    anyInt()
-                )
             assertThat(currentMedia?.size).isEqualTo(6)
             assertThat(currentMedia)
                 .containsExactly(
@@ -376,7 +316,7 @@
                     active = true,
                     instanceId = instanceId2,
                     isPlaying = true,
-                    notificationKey = KEY_2
+                    notificationKey = KEY_2,
                 )
 
             underTest.setMediaFromRecPackageName(PACKAGE_NAME)
@@ -391,11 +331,11 @@
                 .containsExactly(
                     MediaCommonModel.MediaControl(
                         MediaDataLoadingModel.Loaded(instanceId1),
-                        isMediaFromRec = true
+                        isMediaFromRec = true,
                     ),
                     MediaCommonModel.MediaRecommendations(
                         SmartspaceMediaLoadingModel.Loaded(KEY_MEDIA_SMARTSPACE)
-                    )
+                    ),
                 )
                 .inOrder()
 
@@ -410,7 +350,7 @@
                     MediaCommonModel.MediaControl(MediaDataLoadingModel.Loaded(instanceId1)),
                     MediaCommonModel.MediaRecommendations(
                         SmartspaceMediaLoadingModel.Loaded(KEY_MEDIA_SMARTSPACE)
-                    )
+                    ),
                 )
                 .inOrder()
         }
@@ -423,89 +363,6 @@
     fun hasActiveMedia_noMediaSet_returnsFalse() =
         testScope.runTest { assertThat(underTest.hasActiveMedia()).isFalse() }
 
-    @Test
-    fun updateMediaWithLatency_smartspaceIsLogged() =
-        testScope.runTest {
-            val instanceId = InstanceId.fakeInstanceId(123)
-            val data = createMediaData("app", true, LOCAL, false, instanceId)
-
-            underTest.setRecommendation(mediaRecommendation)
-            underTest.setRecommendationsLoadingState(
-                SmartspaceMediaLoadingModel.Loaded(KEY_MEDIA_SMARTSPACE, true)
-            )
-
-            val smartspaceId = SmallHash.hash(mediaRecommendation.targetId)
-            verify(smartspaceLogger)
-                .logSmartspaceCardReceived(
-                    eq(smartspaceId),
-                    anyInt(),
-                    eq(1),
-                    eq(true),
-                    anyBoolean(),
-                    eq(0),
-                    anyInt()
-                )
-            reset(smartspaceLogger)
-
-            underTest.addSelectedUserMediaEntry(data)
-            underTest.addMediaDataLoadingState(MediaDataLoadingModel.Loaded(instanceId), false)
-
-            verify(smartspaceLogger)
-                .logSmartspaceCardReceived(data.smartspaceId, data.appUid, cardinality = 2)
-
-            reset(smartspaceLogger)
-
-            underTest.addSelectedUserMediaEntry(data)
-            underTest.addMediaDataLoadingState(
-                MediaDataLoadingModel.Loaded(instanceId, receivedSmartspaceCardLatency = 123),
-                true
-            )
-
-            verify(smartspaceLogger)
-                .logSmartspaceCardReceived(
-                    SmallHash.hash(data.appUid + kosmos.systemClock.currentTimeMillis().toInt()),
-                    data.appUid,
-                    cardinality = 2,
-                    rank = 0,
-                    receivedLatencyMillis = 123
-                )
-        }
-
-    @Test
-    fun resumeMedia_loadSmartspace_allSmartspaceIsLogged() =
-        testScope.runTest {
-            val resumeInstanceId = InstanceId.fakeInstanceId(123)
-            val data = createMediaData("app", false, LOCAL, true, resumeInstanceId)
-
-            underTest.addSelectedUserMediaEntry(data.copy(active = false))
-            underTest.addMediaDataLoadingState(MediaDataLoadingModel.Loaded(resumeInstanceId))
-            underTest.setRecommendation(mediaRecommendation)
-            underTest.setRecommendationsLoadingState(
-                SmartspaceMediaLoadingModel.Loaded(KEY_MEDIA_SMARTSPACE, true)
-            )
-
-            assertThat(underTest.hasActiveMedia()).isFalse()
-            assertThat(underTest.hasAnyMedia()).isTrue()
-            val smartspaceId = SmallHash.hash(mediaRecommendation.targetId)
-            verify(smartspaceLogger)
-                .logSmartspaceCardReceived(
-                    eq(smartspaceId),
-                    anyInt(),
-                    eq(2),
-                    eq(true),
-                    anyBoolean(),
-                    eq(0),
-                    anyInt()
-                )
-            verify(smartspaceLogger)
-                .logSmartspaceCardReceived(
-                    SmallHash.hash(data.appUid + kosmos.systemClock.currentTimeMillis().toInt()),
-                    data.appUid,
-                    cardinality = 2,
-                    rank = 1
-                )
-        }
-
     private fun createMediaData(
         app: String,
         playing: Boolean,
@@ -518,7 +375,7 @@
             resumption = isResume,
             notificationKey = "key: $app",
             isPlaying = playing,
-            instanceId = instanceId
+            instanceId = instanceId,
         )
     }
 
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/domain/interactor/MediaCarouselInteractorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/domain/interactor/MediaCarouselInteractorTest.kt
index 0a44e7b..0197a1e 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/domain/interactor/MediaCarouselInteractorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/domain/interactor/MediaCarouselInteractorTest.kt
@@ -18,7 +18,6 @@
 
 import android.R
 import android.graphics.drawable.Icon
-import android.os.Process
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.SmallTest
 import com.android.internal.logging.InstanceId
@@ -37,19 +36,12 @@
 import com.android.systemui.media.controls.shared.model.MediaDataLoadingModel
 import com.android.systemui.media.controls.shared.model.SmartspaceMediaData
 import com.android.systemui.media.controls.shared.model.SmartspaceMediaLoadingModel
-import com.android.systemui.media.controls.util.MediaSmartspaceLogger
-import com.android.systemui.media.controls.util.SmallHash
-import com.android.systemui.media.controls.util.mediaSmartspaceLogger
-import com.android.systemui.media.controls.util.mockMediaSmartspaceLogger
 import com.android.systemui.testKosmos
 import com.google.common.truth.Truth.assertThat
 import kotlinx.coroutines.test.runTest
 import org.junit.Before
 import org.junit.Test
 import org.junit.runner.RunWith
-import org.mockito.Mockito.reset
-import org.mockito.kotlin.never
-import org.mockito.kotlin.verify
 
 @SmallTest
 @RunWith(AndroidJUnit4::class)
@@ -59,10 +51,7 @@
     private val testScope = kosmos.testScope
 
     private val mediaFilterRepository: MediaFilterRepository =
-        with(kosmos) {
-            mediaSmartspaceLogger = mockMediaSmartspaceLogger
-            mediaFilterRepository
-        }
+        with(kosmos) { mediaFilterRepository }
     private val mediaRecommendationsInteractor: MediaRecommendationsInteractor =
         kosmos.mediaRecommendationsInteractor
     val icon = Icon.createWithResource(context, R.drawable.ic_media_play)
@@ -73,7 +62,6 @@
             packageName = PACKAGE_NAME,
             recommendations = MediaTestHelper.getValidRecommendationList(icon),
         )
-    private val smartspaceLogger = kosmos.mockMediaSmartspaceLogger
 
     private val underTest: MediaCarouselInteractor = kosmos.mediaCarouselInteractor
 
@@ -163,18 +151,6 @@
                     MediaCommonModel.MediaControl(mediaLoadingModel, true),
                 )
                 .inOrder()
-
-            underTest.logSmartspaceSeenCard(0, 1, false)
-
-            verify(smartspaceLogger)
-                .logSmartspaceCardUIEvent(
-                    MediaSmartspaceLogger.SMARTSPACE_CARD_SEEN_EVENT,
-                    SmallHash.hash(mediaRecommendation.targetId),
-                    Process.INVALID_UID,
-                    surface = SURFACE,
-                    2,
-                    true,
-                )
         }
 
     @Test
@@ -269,79 +245,6 @@
                 .inOrder()
         }
 
-    @Test
-    fun loadMediaAndRecommendation_logSmartspaceSeenCard() {
-        val instanceId = InstanceId.fakeInstanceId(123)
-        val data =
-            MediaData(
-                active = true,
-                instanceId = instanceId,
-                packageName = PACKAGE_NAME,
-                notificationKey = KEY,
-            )
-        val smartspaceLoadingModel = SmartspaceMediaLoadingModel.Loaded(KEY_MEDIA_SMARTSPACE)
-        val mediaLoadingModel = MediaDataLoadingModel.Loaded(instanceId)
-
-        mediaFilterRepository.addSelectedUserMediaEntry(data)
-        mediaFilterRepository.addMediaDataLoadingState(mediaLoadingModel)
-        underTest.logSmartspaceSeenCard(0, 1, false)
-
-        verify(smartspaceLogger)
-            .logSmartspaceCardUIEvent(
-                MediaSmartspaceLogger.SMARTSPACE_CARD_SEEN_EVENT,
-                data.smartspaceId,
-                data.appUid,
-                surface = SURFACE,
-                1,
-            )
-
-        reset(smartspaceLogger)
-        mediaFilterRepository.addSelectedUserMediaEntry(data)
-        mediaFilterRepository.addMediaDataLoadingState(mediaLoadingModel)
-        underTest.logSmartspaceSeenCard(0, 1, true)
-
-        verify(smartspaceLogger, never())
-            .logSmartspaceCardUIEvent(
-                MediaSmartspaceLogger.SMARTSPACE_CARD_SEEN_EVENT,
-                data.smartspaceId,
-                data.appUid,
-                surface = SURFACE,
-                2,
-            )
-
-        reset(smartspaceLogger)
-        mediaFilterRepository.setRecommendation(mediaRecommendation)
-        mediaFilterRepository.setRecommendationsLoadingState(smartspaceLoadingModel)
-        underTest.logSmartspaceSeenCard(1, 1, true)
-
-        verify(smartspaceLogger)
-            .logSmartspaceCardUIEvent(
-                MediaSmartspaceLogger.SMARTSPACE_CARD_SEEN_EVENT,
-                SmallHash.hash(mediaRecommendation.targetId),
-                Process.INVALID_UID,
-                surface = SURFACE,
-                2,
-                true,
-                rank = 1,
-            )
-
-        reset(smartspaceLogger)
-        mediaFilterRepository.addSelectedUserMediaEntry(data)
-        mediaFilterRepository.addMediaDataLoadingState(
-            mediaLoadingModel.copy(receivedSmartspaceCardLatency = 1)
-        )
-        underTest.logSmartspaceSeenCard(0, 1, true)
-
-        verify(smartspaceLogger)
-            .logSmartspaceCardUIEvent(
-                MediaSmartspaceLogger.SMARTSPACE_CARD_SEEN_EVENT,
-                data.smartspaceId,
-                data.appUid,
-                surface = SURFACE,
-                2,
-            )
-    }
-
     companion object {
         private const val KEY_MEDIA_SMARTSPACE = "MEDIA_SMARTSPACE_ID"
         private const val PACKAGE_NAME = "com.android.example"
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/domain/interactor/MediaControlInteractorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/domain/interactor/MediaControlInteractorTest.kt
index 62d0625..ba987c1 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/domain/interactor/MediaControlInteractorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/domain/interactor/MediaControlInteractorTest.kt
@@ -42,11 +42,7 @@
 import com.android.systemui.media.controls.domain.pipeline.mediaDataProcessor
 import com.android.systemui.media.controls.shared.model.MediaData
 import com.android.systemui.media.controls.shared.model.SmartspaceMediaData
-import com.android.systemui.media.controls.util.MediaSmartspaceLogger.Companion.SMARTSPACE_CARD_CLICK_EVENT
-import com.android.systemui.media.controls.util.MediaSmartspaceLogger.Companion.SMARTSPACE_CARD_DISMISS_EVENT
 import com.android.systemui.media.controls.util.mediaInstanceId
-import com.android.systemui.media.controls.util.mediaSmartspaceLogger
-import com.android.systemui.media.controls.util.mockMediaSmartspaceLogger
 import com.android.systemui.media.mediaOutputDialogManager
 import com.android.systemui.mockActivityIntentHelper
 import com.android.systemui.plugins.activityStarter
@@ -57,8 +53,6 @@
 import kotlinx.coroutines.test.runTest
 import org.junit.Test
 import org.junit.runner.RunWith
-import org.mockito.Mockito.anyBoolean
-import org.mockito.Mockito.anyInt
 import org.mockito.Mockito.never
 import org.mockito.Mockito.verify
 import org.mockito.kotlin.any
@@ -73,16 +67,11 @@
     private val kosmos = testKosmos()
     private val testScope = kosmos.testScope
 
-    private val mediaDataFilter: MediaDataFilterImpl =
-        with(kosmos) {
-            mediaSmartspaceLogger = mockMediaSmartspaceLogger
-            mediaDataFilter
-        }
+    private val mediaDataFilter: MediaDataFilterImpl = with(kosmos) { mediaDataFilter }
     private val activityStarter = kosmos.activityStarter
     private val keyguardStateController = kosmos.keyguardStateController
     private val instanceId: InstanceId = kosmos.mediaInstanceId
     private val notificationLockscreenUserManager = kosmos.notificationLockscreenUserManager
-    private val smartspaceLogger = kosmos.mockMediaSmartspaceLogger
     private val icon = Icon.createWithResource(context, R.drawable.ic_media_play)
     private val mediaRecommendation =
         SmartspaceMediaData(
@@ -148,7 +137,7 @@
         val activityController = mock<ActivityTransitionAnimator.Controller>()
         whenever(expandable.activityTransitionController(any())).thenReturn(activityController)
 
-        underTest.startClickIntent(expandable, clickIntent, SMARTSPACE_CARD_CLICK_EVENT, 1)
+        underTest.startClickIntent(expandable, clickIntent)
 
         verify(activityStarter)
             .startPendingIntentMaybeDismissingKeyguard(
@@ -172,17 +161,8 @@
         val mediaData = MediaData(userId = USER_ID, instanceId = instanceId, artist = ARTIST)
         mediaDataFilter.onSmartspaceMediaDataLoaded(KEY_MEDIA_SMARTSPACE, mediaRecommendation, true)
         mediaDataFilter.onMediaDataLoaded(KEY, null, mediaData)
-        underTest.startClickIntent(expandable, clickIntent, SMARTSPACE_CARD_CLICK_EVENT, 1)
+        underTest.startClickIntent(expandable, clickIntent)
 
-        verify(smartspaceLogger)
-            .logSmartspaceCardUIEvent(
-                SMARTSPACE_CARD_CLICK_EVENT,
-                mediaData.smartspaceId,
-                mediaData.appUid,
-                surface = SURFACE,
-                cardinality = 2,
-                rank = 1,
-            )
         verify(activityStarter)
             .postStartActivityDismissingKeyguard(eq(clickIntent), eq(activityController))
     }
@@ -270,24 +250,10 @@
         kosmos.mediaDataRepository.addMediaEntry(KEY, mediaData)
         kosmos.mediaDataFilter.onMediaDataLoaded(KEY, null, mediaData)
 
-        underTest.removeMediaControl(null, instanceId, 0L, SMARTSPACE_CARD_DISMISS_EVENT, 1)
+        underTest.removeMediaControl(null, instanceId, 0L)
         kosmos.fakeExecutor.advanceClockToNext()
         kosmos.fakeExecutor.runAllReady()
 
-        verify(smartspaceLogger, never())
-            .logSmartspaceCardUIEvent(
-                anyInt(),
-                anyInt(),
-                anyInt(),
-                anyInt(),
-                anyInt(),
-                anyBoolean(),
-                anyBoolean(),
-                anyInt(),
-                anyInt(),
-                anyInt(),
-                anyBoolean(),
-            )
         verify(listener).onMediaDataRemoved(eq(KEY), eq(true))
     }
 
@@ -303,19 +269,10 @@
         mediaDataFilter.onSmartspaceMediaDataLoaded(KEY_MEDIA_SMARTSPACE, mediaRecommendation, true)
         mediaDataFilter.onMediaDataLoaded(KEY, null, mediaData)
 
-        underTest.removeMediaControl(null, instanceId, 0L, SMARTSPACE_CARD_DISMISS_EVENT, 1)
+        underTest.removeMediaControl(null, instanceId, 0L)
         kosmos.fakeExecutor.advanceClockToNext()
         kosmos.fakeExecutor.runAllReady()
 
-        verify(smartspaceLogger)
-            .logSmartspaceCardUIEvent(
-                SMARTSPACE_CARD_DISMISS_EVENT,
-                mediaData.smartspaceId,
-                mediaData.appUid,
-                surface = SURFACE,
-                cardinality = 2,
-                rank = 1,
-            )
         verify(listener).onMediaDataRemoved(eq(KEY), eq(true))
     }
 
@@ -327,6 +284,5 @@
         private const val ARTIST = "artist"
         private const val ARTIST_2 = "artist2"
         private const val KEY_MEDIA_SMARTSPACE = "MEDIA_SMARTSPACE_ID"
-        private const val SURFACE = 4
     }
 }
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/domain/interactor/MediaRecommendationsInteractorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/domain/interactor/MediaRecommendationsInteractorTest.kt
index 11397d9..2265c01 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/domain/interactor/MediaRecommendationsInteractorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/domain/interactor/MediaRecommendationsInteractorTest.kt
@@ -21,7 +21,6 @@
 import android.content.Intent
 import android.content.applicationContext
 import android.graphics.drawable.Icon
-import android.os.Process
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.SmallTest
 import com.android.systemui.SysuiTestCase
@@ -39,11 +38,6 @@
 import com.android.systemui.media.controls.shared.model.MediaRecModel
 import com.android.systemui.media.controls.shared.model.MediaRecommendationsModel
 import com.android.systemui.media.controls.shared.model.SmartspaceMediaData
-import com.android.systemui.media.controls.util.MediaSmartspaceLogger.Companion.SMARTSPACE_CARD_CLICK_EVENT
-import com.android.systemui.media.controls.util.MediaSmartspaceLogger.Companion.SMARTSPACE_CARD_DISMISS_EVENT
-import com.android.systemui.media.controls.util.SmallHash
-import com.android.systemui.media.controls.util.mediaSmartspaceLogger
-import com.android.systemui.media.controls.util.mockMediaSmartspaceLogger
 import com.android.systemui.plugins.activityStarter
 import com.android.systemui.testKosmos
 import com.android.systemui.util.mockito.any
@@ -66,11 +60,7 @@
     private val kosmos = testKosmos().apply { applicationContext = spyContext }
     private val testScope = kosmos.testScope
 
-    private val mediaDataFilter: MediaDataFilterImpl =
-        with(kosmos) {
-            mediaSmartspaceLogger = mockMediaSmartspaceLogger
-            mediaDataFilter
-        }
+    private val mediaDataFilter: MediaDataFilterImpl = with(kosmos) { mediaDataFilter }
     private val activityStarter = kosmos.activityStarter
     private val icon: Icon = Icon.createWithResource(context, R.drawable.ic_media_play)
     private val smartspaceMediaData: SmartspaceMediaData =
@@ -80,7 +70,6 @@
             packageName = PACKAGE_NAME,
             recommendations = MediaTestHelper.getValidRecommendationList(icon),
         )
-    private val smartspaceLogger = kosmos.mockMediaSmartspaceLogger
 
     private val underTest: MediaRecommendationsInteractor =
         with(kosmos) {
@@ -132,23 +121,8 @@
         intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
 
         mediaDataFilter.onSmartspaceMediaDataLoaded(KEY_MEDIA_SMARTSPACE, smartspaceMediaData)
-        underTest.removeMediaRecommendations(
-            KEY_MEDIA_SMARTSPACE,
-            intent,
-            0,
-            SMARTSPACE_CARD_DISMISS_EVENT,
-            1,
-        )
+        underTest.removeMediaRecommendations(KEY_MEDIA_SMARTSPACE, intent, 0)
 
-        verify(smartspaceLogger)
-            .logSmartspaceCardUIEvent(
-                SMARTSPACE_CARD_DISMISS_EVENT,
-                SmallHash.hash(smartspaceMediaData.targetId),
-                Process.INVALID_UID,
-                surface = SURFACE,
-                cardinality = 1,
-                isRecommendationCard = true,
-            )
         verify(kosmos.mockBroadcastSender).sendBroadcast(eq(intent))
     }
 
@@ -160,13 +134,7 @@
         intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
         intent.component = ComponentName(PACKAGE_NAME, EXPORTED_SMARTSPACE_TRAMPOLINE_ACTIVITY_NAME)
 
-        underTest.removeMediaRecommendations(
-            KEY_MEDIA_SMARTSPACE,
-            intent,
-            0,
-            SMARTSPACE_CARD_DISMISS_EVENT,
-            1,
-        )
+        underTest.removeMediaRecommendations(KEY_MEDIA_SMARTSPACE, intent, 0)
 
         verify(spyContext).startActivity(eq(intent))
     }
@@ -187,19 +155,8 @@
         intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
 
         mediaDataFilter.onSmartspaceMediaDataLoaded(KEY_MEDIA_SMARTSPACE, smartspaceMediaData)
-        underTest.startClickIntent(expandable, intent, SMARTSPACE_CARD_CLICK_EVENT, 1, 2, 3)
+        underTest.startClickIntent(expandable, intent)
 
-        verify(smartspaceLogger)
-            .logSmartspaceCardUIEvent(
-                SMARTSPACE_CARD_CLICK_EVENT,
-                SmallHash.hash(smartspaceMediaData.targetId),
-                Process.INVALID_UID,
-                surface = SURFACE,
-                cardinality = 1,
-                isRecommendationCard = true,
-                interactedSubcardRank = 2,
-                interactedSubcardCardinality = 3,
-            )
         verify(spyContext).startActivity(eq(intent))
     }
 
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/domain/pipeline/MediaDataCombineLatestTest.java b/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/domain/pipeline/MediaDataCombineLatestTest.java
index 1d4b090..544350c 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/domain/pipeline/MediaDataCombineLatestTest.java
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/domain/pipeline/MediaDataCombineLatestTest.java
@@ -79,7 +79,7 @@
                 USER_ID, true, APP, null, ARTIST, TITLE, null,
                 new ArrayList<>(), new ArrayList<>(), null, PACKAGE, null, null, null, true, null,
                 MediaData.PLAYBACK_LOCAL, false, KEY, false, false, false, 0L, 0L,
-                InstanceId.fakeInstanceId(-1), -1, false, null, -1, false);
+                InstanceId.fakeInstanceId(-1), -1, false, null);
         mDeviceData = new MediaDeviceData(true, null, DEVICE_NAME, null, false);
     }
 
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/ui/binder/SeekBarObserverTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/ui/binder/SeekBarObserverTest.kt
index 943ada9..c71b107 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/ui/binder/SeekBarObserverTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/ui/binder/SeekBarObserverTest.kt
@@ -18,9 +18,6 @@
 
 import android.animation.Animator
 import android.animation.ObjectAnimator
-import android.icu.text.MeasureFormat
-import android.icu.util.Measure
-import android.icu.util.MeasureUnit
 import android.testing.TestableLooper
 import android.view.View
 import android.widget.SeekBar
@@ -33,7 +30,6 @@
 import com.android.systemui.media.controls.ui.viewmodel.SeekBarViewModel
 import com.android.systemui.res.R
 import com.google.common.truth.Truth.assertThat
-import java.util.Locale
 import org.junit.Before
 import org.junit.Rule
 import org.junit.Test
@@ -114,32 +110,12 @@
 
     @Test
     fun seekBarProgress() {
-        val elapsedTime = 3000
-        val duration = (1.5 * 60 * 60 * 1000).toInt()
         // WHEN part of the track has been played
-        val data = SeekBarViewModel.Progress(true, true, true, false, elapsedTime, duration, true)
+        val data = SeekBarViewModel.Progress(true, true, true, false, 3000, 120000, true)
         observer.onChanged(data)
         // THEN seek bar shows the progress
-        assertThat(seekBarView.progress).isEqualTo(elapsedTime)
-        assertThat(seekBarView.max).isEqualTo(duration)
-
-        val expectedProgress =
-            MeasureFormat.getInstance(Locale.getDefault(), MeasureFormat.FormatWidth.WIDE)
-                .formatMeasures(Measure(3, MeasureUnit.SECOND))
-        val expectedDuration =
-            MeasureFormat.getInstance(Locale.getDefault(), MeasureFormat.FormatWidth.WIDE)
-                .formatMeasures(
-                    Measure(1, MeasureUnit.HOUR),
-                    Measure(30, MeasureUnit.MINUTE),
-                    Measure(0, MeasureUnit.SECOND),
-                )
-        val desc =
-            context.getString(
-                R.string.controls_media_seekbar_description,
-                expectedProgress,
-                expectedDuration,
-            )
-        assertThat(seekBarView.contentDescription).isEqualTo(desc)
+        assertThat(seekBarView.progress).isEqualTo(3000)
+        assertThat(seekBarView.max).isEqualTo(120000)
     }
 
     @Test
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/ui/view/MediaCarouselScrollHandlerTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/ui/view/MediaCarouselScrollHandlerTest.kt
index c2f0ab9..61119cc 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/ui/view/MediaCarouselScrollHandlerTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/media/controls/ui/view/MediaCarouselScrollHandlerTest.kt
@@ -61,7 +61,6 @@
     @Mock lateinit var seekBarUpdateListener: (visibleToUser: Boolean) -> Unit
     @Mock lateinit var closeGuts: (immediate: Boolean) -> Unit
     @Mock lateinit var falsingManager: FalsingManager
-    @Mock lateinit var logSmartspaceImpression: (Boolean) -> Unit
     @Mock lateinit var logger: MediaUiEventLogger
     @Mock lateinit var contentContainer: ViewGroup
     @Mock lateinit var settingsButton: View
@@ -91,7 +90,6 @@
                 seekBarUpdateListener,
                 closeGuts,
                 falsingManager,
-                logSmartspaceImpression,
                 logger,
             )
         mediaCarouselScrollHandler.playerWidthPlusPadding = carouselWidth
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/notifications/ui/viewmodel/NotificationsShadeOverlayContentViewModelTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/notifications/ui/viewmodel/NotificationsShadeOverlayContentViewModelTest.kt
index 917f356..80ce43d 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/notifications/ui/viewmodel/NotificationsShadeOverlayContentViewModelTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/notifications/ui/viewmodel/NotificationsShadeOverlayContentViewModelTest.kt
@@ -65,8 +65,7 @@
 
     private val kosmos = testKosmos()
     private val testScope = kosmos.testScope
-    private val sceneInteractor = kosmos.sceneInteractor
-
+    private val sceneInteractor by lazy { kosmos.sceneInteractor }
     private val underTest by lazy { kosmos.notificationsShadeOverlayContentViewModel }
 
     @Before
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/customize/TileQueryHelperTest.java b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/customize/TileQueryHelperTest.java
index 1899b7d..0e5e333 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/customize/TileQueryHelperTest.java
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/customize/TileQueryHelperTest.java
@@ -423,5 +423,15 @@
 
         @Override
         public void destroy() {}
+
+        @Override
+        public boolean isDestroyed() {
+            return false;
+        }
+
+        @Override
+        public int getCurrentTileUser() {
+            return 0;
+        }
     }
 }
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/panels/domain/interactor/TilesAvailabilityInteractorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/panels/domain/interactor/TilesAvailabilityInteractorTest.kt
index 5a58597..67fb100 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/panels/domain/interactor/TilesAvailabilityInteractorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/panels/domain/interactor/TilesAvailabilityInteractorTest.kt
@@ -56,166 +56,178 @@
 
     private val createdTiles = mutableListOf<FakeQSTile>()
 
-    private val kosmos = testKosmos().apply {
-        tileAvailabilityInteractorsMap = buildMap {
-            put(AIRPLANE_MODE_TILE_SPEC, QSTileAvailabilityInteractor.AlwaysAvailableInteractor)
-            put(WORK_MODE_TILE_SPEC, FakeTileAvailabilityInteractor(
-                    mapOf(
-                            fakeUserRepository.getSelectedUserInfo().id to flowOf(true),
-                    ).withDefault { flowOf(false) }
-            ))
-            put(HOTSPOT_TILE_SPEC, FakeTileAvailabilityInteractor(
-                    emptyMap<Int, Flow<Boolean>>().withDefault { flowOf(false) }
-            ))
-        }
+    private val kosmos =
+        testKosmos().apply {
+            tileAvailabilityInteractorsMap = buildMap {
+                put(AIRPLANE_MODE_TILE_SPEC, QSTileAvailabilityInteractor.AlwaysAvailableInteractor)
+                put(
+                    WORK_MODE_TILE_SPEC,
+                    FakeTileAvailabilityInteractor(
+                        mapOf(fakeUserRepository.getSelectedUserInfo().id to flowOf(true))
+                            .withDefault { flowOf(false) }
+                    ),
+                )
+                put(
+                    HOTSPOT_TILE_SPEC,
+                    FakeTileAvailabilityInteractor(
+                        emptyMap<Int, Flow<Boolean>>().withDefault { flowOf(false) }
+                    ),
+                )
+            }
 
-        qsTileFactory = constantFactory(
-                tilesForCreator(
+            qsTileFactory =
+                constantFactory(
+                    tilesForCreator(
                         userRepository.getSelectedUserInfo().id,
                         mapOf(
-                                AIRPLANE_MODE_TILE_SPEC to false,
-                                WORK_MODE_TILE_SPEC to false,
-                                HOTSPOT_TILE_SPEC to true,
-                                INTERNET_TILE_SPEC to true,
-                                FLASHLIGHT_TILE_SPEC to false,
-                        )
+                            AIRPLANE_MODE_TILE_SPEC to false,
+                            WORK_MODE_TILE_SPEC to false,
+                            HOTSPOT_TILE_SPEC to true,
+                            INTERNET_TILE_SPEC to true,
+                            FLASHLIGHT_TILE_SPEC to false,
+                        ),
+                    )
                 )
-        )
-    }
+        }
 
     private val underTest by lazy { kosmos.tilesAvailabilityInteractor }
 
     @Test
     @DisableFlags(FLAG_QS_NEW_TILES)
-    fun flagOff_usesAvailabilityFromFactoryTiles() = with(kosmos) {
-        testScope.runTest {
-            val unavailableTiles = underTest.getUnavailableTiles(
-                    setOf(
-                            AIRPLANE_MODE_TILE_SPEC,
-                            WORK_MODE_TILE_SPEC,
-                            HOTSPOT_TILE_SPEC,
-                            INTERNET_TILE_SPEC,
-                            FLASHLIGHT_TILE_SPEC,
-                    ).map(TileSpec::create)
-            )
-            assertThat(unavailableTiles).isEqualTo(setOf(
-                    AIRPLANE_MODE_TILE_SPEC,
-                    WORK_MODE_TILE_SPEC,
-                    FLASHLIGHT_TILE_SPEC,
-            ).mapTo(mutableSetOf(), TileSpec::create))
-        }
-    }
-
-    @Test
-    fun tileCannotBeCreated_isUnavailable() = with(kosmos) {
-        testScope.runTest {
-            val badSpec = TileSpec.create("unknown")
-            val unavailableTiles = underTest.getUnavailableTiles(
-                    setOf(
-                        badSpec
+    fun flagOff_usesAvailabilityFromFactoryTiles() =
+        with(kosmos) {
+            testScope.runTest {
+                val unavailableTiles =
+                    underTest.getUnavailableTiles(
+                        setOf(
+                                AIRPLANE_MODE_TILE_SPEC,
+                                WORK_MODE_TILE_SPEC,
+                                HOTSPOT_TILE_SPEC,
+                                INTERNET_TILE_SPEC,
+                                FLASHLIGHT_TILE_SPEC,
+                            )
+                            .map(TileSpec::create)
                     )
-            )
-            assertThat(unavailableTiles).contains(badSpec)
+                assertThat(unavailableTiles)
+                    .isEqualTo(
+                        setOf(AIRPLANE_MODE_TILE_SPEC, WORK_MODE_TILE_SPEC, FLASHLIGHT_TILE_SPEC)
+                            .mapTo(mutableSetOf(), TileSpec::create)
+                    )
+            }
         }
-    }
+
+    @Test
+    fun tileCannotBeCreated_isUnavailable() =
+        with(kosmos) {
+            testScope.runTest {
+                val badSpec = TileSpec.create("unknown")
+                val unavailableTiles = underTest.getUnavailableTiles(setOf(badSpec))
+                assertThat(unavailableTiles).contains(badSpec)
+            }
+        }
 
     @Test
     @EnableFlags(FLAG_QS_NEW_TILES)
-    fun flagOn_defaultsToInteractorTiles_usesFactoryForOthers() = with(kosmos) {
-        testScope.runTest {
-            val unavailableTiles = underTest.getUnavailableTiles(
+    fun flagOn_defaultsToInteractorTiles_usesFactoryForOthers() =
+        with(kosmos) {
+            testScope.runTest {
+                val unavailableTiles =
+                    underTest.getUnavailableTiles(
+                        setOf(
+                                AIRPLANE_MODE_TILE_SPEC,
+                                WORK_MODE_TILE_SPEC,
+                                HOTSPOT_TILE_SPEC,
+                                INTERNET_TILE_SPEC,
+                                FLASHLIGHT_TILE_SPEC,
+                            )
+                            .map(TileSpec::create)
+                    )
+                assertThat(unavailableTiles)
+                    .isEqualTo(
+                        setOf(HOTSPOT_TILE_SPEC, FLASHLIGHT_TILE_SPEC)
+                            .mapTo(mutableSetOf(), TileSpec::create)
+                    )
+            }
+        }
+
+    @Test
+    @EnableFlags(FLAG_QS_NEW_TILES)
+    fun flagOn_defaultsToInteractorTiles_usesFactoryForOthers_userChange() =
+        with(kosmos) {
+            testScope.runTest {
+                fakeUserRepository.asMainUser()
+                val unavailableTiles =
+                    underTest.getUnavailableTiles(
+                        setOf(
+                                AIRPLANE_MODE_TILE_SPEC,
+                                WORK_MODE_TILE_SPEC,
+                                HOTSPOT_TILE_SPEC,
+                                INTERNET_TILE_SPEC,
+                                FLASHLIGHT_TILE_SPEC,
+                            )
+                            .map(TileSpec::create)
+                    )
+                assertThat(unavailableTiles)
+                    .isEqualTo(
+                        setOf(WORK_MODE_TILE_SPEC, HOTSPOT_TILE_SPEC, FLASHLIGHT_TILE_SPEC)
+                            .mapTo(mutableSetOf(), TileSpec::create)
+                    )
+            }
+        }
+
+    @Test
+    @EnableFlags(FLAG_QS_NEW_TILES)
+    fun flagOn_onlyNeededTilesAreCreated_andThenDestroyed() =
+        with(kosmos) {
+            testScope.runTest {
+                underTest.getUnavailableTiles(
                     setOf(
                             AIRPLANE_MODE_TILE_SPEC,
                             WORK_MODE_TILE_SPEC,
                             HOTSPOT_TILE_SPEC,
                             INTERNET_TILE_SPEC,
                             FLASHLIGHT_TILE_SPEC,
-                    ).map(TileSpec::create)
-            )
-            assertThat(unavailableTiles).isEqualTo(setOf(
-                    HOTSPOT_TILE_SPEC,
-                    FLASHLIGHT_TILE_SPEC,
-            ).mapTo(mutableSetOf(), TileSpec::create))
-        }
-    }
-
-    @Test
-    @EnableFlags(FLAG_QS_NEW_TILES)
-    fun flagOn_defaultsToInteractorTiles_usesFactoryForOthers_userChange() = with(kosmos) {
-        testScope.runTest {
-            fakeUserRepository.asMainUser()
-            val unavailableTiles = underTest.getUnavailableTiles(
-                    setOf(
-                            AIRPLANE_MODE_TILE_SPEC,
-                            WORK_MODE_TILE_SPEC,
-                            HOTSPOT_TILE_SPEC,
-                            INTERNET_TILE_SPEC,
-                            FLASHLIGHT_TILE_SPEC,
-                    ).map(TileSpec::create)
-            )
-            assertThat(unavailableTiles).isEqualTo(setOf(
-                    WORK_MODE_TILE_SPEC,
-                    HOTSPOT_TILE_SPEC,
-                    FLASHLIGHT_TILE_SPEC,
-            ).mapTo(mutableSetOf(), TileSpec::create))
-        }
-    }
-
-    @Test
-    @EnableFlags(FLAG_QS_NEW_TILES)
-    fun flagOn_onlyNeededTilesAreCreated_andThenDestroyed() = with(kosmos) {
-        testScope.runTest {
-            underTest.getUnavailableTiles(
-                    setOf(
-                            AIRPLANE_MODE_TILE_SPEC,
-                            WORK_MODE_TILE_SPEC,
-                            HOTSPOT_TILE_SPEC,
-                            INTERNET_TILE_SPEC,
-                            FLASHLIGHT_TILE_SPEC,
-                    ).map(TileSpec::create)
-            )
-            assertThat(createdTiles.map { it.tileSpec })
+                        )
+                        .map(TileSpec::create)
+                )
+                assertThat(createdTiles.map { it.tileSpec })
                     .containsExactly(INTERNET_TILE_SPEC, FLASHLIGHT_TILE_SPEC)
-            assertThat(createdTiles.all { it.destroyed }).isTrue()
+                assertThat(createdTiles.all { it.isDestroyed }).isTrue()
+            }
         }
-    }
 
     @Test
     @DisableFlags(FLAG_QS_NEW_TILES)
-    fun flagOn_TilesAreCreatedAndThenDestroyed() = with(kosmos) {
-        testScope.runTest {
-            val allTiles = setOf(
-                    AIRPLANE_MODE_TILE_SPEC,
-                    WORK_MODE_TILE_SPEC,
-                    HOTSPOT_TILE_SPEC,
-                    INTERNET_TILE_SPEC,
-                    FLASHLIGHT_TILE_SPEC,
-                )
-            underTest.getUnavailableTiles(allTiles.map(TileSpec::create))
-            assertThat(createdTiles.map { it.tileSpec })
-                    .containsExactlyElementsIn(allTiles)
-            assertThat(createdTiles.all { it.destroyed }).isTrue()
+    fun flagOn_TilesAreCreatedAndThenDestroyed() =
+        with(kosmos) {
+            testScope.runTest {
+                val allTiles =
+                    setOf(
+                        AIRPLANE_MODE_TILE_SPEC,
+                        WORK_MODE_TILE_SPEC,
+                        HOTSPOT_TILE_SPEC,
+                        INTERNET_TILE_SPEC,
+                        FLASHLIGHT_TILE_SPEC,
+                    )
+                underTest.getUnavailableTiles(allTiles.map(TileSpec::create))
+                assertThat(createdTiles.map { it.tileSpec }).containsExactlyElementsIn(allTiles)
+                assertThat(createdTiles.all { it.isDestroyed }).isTrue()
+            }
         }
-    }
-
 
     private fun constantFactory(creatorTiles: Set<FakeQSTile>): QSFactory {
         return FakeQSFactory { spec ->
-            creatorTiles.firstOrNull { it.tileSpec == spec }?.also {
-                createdTiles.add(it)
-            }
+            creatorTiles.firstOrNull { it.tileSpec == spec }?.also { createdTiles.add(it) }
         }
     }
 
     companion object {
         private fun tilesForCreator(
-                user: Int,
-                specAvailabilities: Map<String, Boolean>
+            user: Int,
+            specAvailabilities: Map<String, Boolean>,
         ): Set<FakeQSTile> {
             return specAvailabilities.mapTo(mutableSetOf()) {
-                FakeQSTile(user, it.value).apply {
-                    tileSpec = it.key
-                }
+                FakeQSTile(user, it.value).apply { tileSpec = it.key }
             }
         }
 
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/pipeline/domain/interactor/CurrentTilesInteractorImplTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/pipeline/domain/interactor/CurrentTilesInteractorImplTest.kt
index 9b50f1b..c308976 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/pipeline/domain/interactor/CurrentTilesInteractorImplTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/pipeline/domain/interactor/CurrentTilesInteractorImplTest.kt
@@ -17,10 +17,10 @@
 package com.android.systemui.qs.pipeline.domain.interactor
 
 import android.content.ComponentName
-import android.content.Context
 import android.content.Intent
 import android.content.pm.UserInfo
 import android.os.UserHandle
+import android.platform.test.annotations.EnableFlags
 import android.service.quicksettings.Tile
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.SmallTest
@@ -28,653 +28,702 @@
 import com.android.systemui.SysuiTestCase
 import com.android.systemui.coroutines.collectLastValue
 import com.android.systemui.dump.nano.SystemUIProtoDump
+import com.android.systemui.kosmos.Kosmos
+import com.android.systemui.kosmos.runTest
+import com.android.systemui.kosmos.testScope
 import com.android.systemui.plugins.qs.QSTile
 import com.android.systemui.plugins.qs.QSTile.BooleanState
 import com.android.systemui.plugins.qs.TileDetailsViewModel
 import com.android.systemui.qs.FakeQSFactory
 import com.android.systemui.qs.FakeQSTile
 import com.android.systemui.qs.external.CustomTile
-import com.android.systemui.qs.external.CustomTileStatePersister
 import com.android.systemui.qs.external.TileLifecycleManager
 import com.android.systemui.qs.external.TileServiceKey
-import com.android.systemui.qs.pipeline.data.repository.CustomTileAddedRepository
-import com.android.systemui.qs.pipeline.data.repository.FakeCustomTileAddedRepository
-import com.android.systemui.qs.pipeline.data.repository.FakeInstalledTilesComponentRepository
-import com.android.systemui.qs.pipeline.data.repository.FakeTileSpecRepository
-import com.android.systemui.qs.pipeline.data.repository.MinimumTilesFixedRepository
-import com.android.systemui.qs.pipeline.data.repository.TileSpecRepository
+import com.android.systemui.qs.external.customTileStatePersister
+import com.android.systemui.qs.external.tileLifecycleManagerFactory
+import com.android.systemui.qs.pipeline.data.repository.customTileAddedRepository
+import com.android.systemui.qs.pipeline.data.repository.fakeInstalledTilesRepository
+import com.android.systemui.qs.pipeline.data.repository.tileSpecRepository
 import com.android.systemui.qs.pipeline.domain.model.TileModel
-import com.android.systemui.qs.pipeline.shared.QSPipelineFlagsRepository
 import com.android.systemui.qs.pipeline.shared.TileSpec
 import com.android.systemui.qs.pipeline.shared.logging.QSPipelineLogger
-import com.android.systemui.qs.tiles.di.NewQSTileFactory
+import com.android.systemui.qs.pipeline.shared.logging.qsLogger
+import com.android.systemui.qs.qsTileFactory
+import com.android.systemui.qs.tiles.di.newQSTileFactory
 import com.android.systemui.qs.toProto
-import com.android.systemui.retail.data.repository.FakeRetailModeRepository
-import com.android.systemui.settings.UserTracker
-import com.android.systemui.user.data.repository.FakeUserRepository
+import com.android.systemui.settings.fakeUserTracker
+import com.android.systemui.testKosmos
+import com.android.systemui.user.data.repository.fakeUserRepository
+import com.android.systemui.user.data.repository.userRepository
 import com.android.systemui.util.mockito.any
-import com.android.systemui.util.mockito.mock
 import com.android.systemui.util.mockito.whenever
 import com.google.common.truth.Truth.assertThat
 import com.google.protobuf.nano.MessageNano
-import kotlinx.coroutines.test.StandardTestDispatcher
+import kotlinx.coroutines.ExperimentalCoroutinesApi
 import kotlinx.coroutines.test.TestScope
 import kotlinx.coroutines.test.runCurrent
 import kotlinx.coroutines.test.runTest
-import org.junit.Before
 import org.junit.Test
 import org.junit.runner.RunWith
 import org.mockito.ArgumentMatchers.anyString
-import org.mockito.Mock
 import org.mockito.Mockito.inOrder
 import org.mockito.Mockito.never
 import org.mockito.Mockito.verify
-import org.mockito.MockitoAnnotations
+import org.mockito.kotlin.doReturn
+import org.mockito.kotlin.mock
 
+@OptIn(ExperimentalCoroutinesApi::class)
 @SmallTest
 @RunWith(AndroidJUnit4::class)
+@EnableFlags(FLAG_QS_NEW_TILES)
 class CurrentTilesInteractorImplTest : SysuiTestCase() {
 
-    private val tileSpecRepository: TileSpecRepository = FakeTileSpecRepository()
-    private val userRepository = FakeUserRepository()
-    private val installedTilesPackageRepository = FakeInstalledTilesComponentRepository()
-    private val tileFactory = FakeQSFactory(::tileCreator)
-    private val customTileAddedRepository: CustomTileAddedRepository =
-        FakeCustomTileAddedRepository()
-    private val pipelineFlags = QSPipelineFlagsRepository()
-    private val tileLifecycleManagerFactory = TLMFactory()
-    private val minimumTilesRepository = MinimumTilesFixedRepository()
-    private val retailModeRepository = FakeRetailModeRepository()
-
-    @Mock private lateinit var customTileStatePersister: CustomTileStatePersister
-
-    @Mock private lateinit var userTracker: UserTracker
-
-    @Mock private lateinit var logger: QSPipelineLogger
-
-    @Mock private lateinit var newQSTileFactory: NewQSTileFactory
-
-    private val testDispatcher = StandardTestDispatcher()
-    private val testScope = TestScope(testDispatcher)
+    private val kosmos =
+        testKosmos().apply {
+            qsTileFactory = FakeQSFactory { tileCreator(it) }
+            fakeUserTracker.set(listOf(USER_INFO_0), 0)
+            fakeUserRepository.setUserInfos(listOf(USER_INFO_0, USER_INFO_1))
+            tileLifecycleManagerFactory = TLMFactory()
+            newQSTileFactory = mock()
+            qsLogger = mock()
+        }
 
     private val unavailableTiles = mutableSetOf("e")
 
-    private lateinit var underTest: CurrentTilesInteractorImpl
-
-    @Before
-    fun setup() {
-        MockitoAnnotations.initMocks(this)
-
-        mSetFlagsRule.enableFlags(FLAG_QS_NEW_TILES)
-
-        userRepository.setUserInfos(listOf(USER_INFO_0, USER_INFO_1))
-
-        setUserTracker(0)
-
-        underTest =
-            CurrentTilesInteractorImpl(
-                tileSpecRepository = tileSpecRepository,
-                installedTilesComponentRepository = installedTilesPackageRepository,
-                userRepository = userRepository,
-                minimumTilesRepository = minimumTilesRepository,
-                retailModeRepository = retailModeRepository,
-                customTileStatePersister = customTileStatePersister,
-                tileFactory = tileFactory,
-                newQSTileFactory = { newQSTileFactory },
-                customTileAddedRepository = customTileAddedRepository,
-                tileLifecycleManagerFactory = tileLifecycleManagerFactory,
-                userTracker = userTracker,
-                mainDispatcher = testDispatcher,
-                backgroundDispatcher = testDispatcher,
-                scope = testScope.backgroundScope,
-                logger = logger,
-                featureFlags = pipelineFlags,
-            )
-    }
+    private val underTest = kosmos.currentTilesInteractor
 
     @Test
     fun initialState() =
-        testScope.runTest(USER_INFO_0) {
-            assertThat(underTest.currentTiles.value).isEmpty()
-            assertThat(underTest.currentQSTiles).isEmpty()
-            assertThat(underTest.currentTilesSpecs).isEmpty()
-            assertThat(underTest.userId.value).isEqualTo(0)
-            assertThat(underTest.userContext.value.userId).isEqualTo(0)
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                assertThat(underTest.currentTiles.value).isEmpty()
+                assertThat(underTest.currentQSTiles).isEmpty()
+                assertThat(underTest.currentTilesSpecs).isEmpty()
+                assertThat(underTest.userId.value).isEqualTo(0)
+                assertThat(underTest.userContext.value.userId).isEqualTo(0)
+            }
         }
 
     @Test
     fun correctTiles() =
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(underTest.currentTiles)
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(underTest.currentTiles)
 
-            val specs =
-                listOf(
-                    TileSpec.create("a"),
-                    TileSpec.create("e"),
-                    CUSTOM_TILE_SPEC,
-                    TileSpec.create("d"),
-                    TileSpec.create("non_existent"),
-                )
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                val specs =
+                    listOf(
+                        TileSpec.create("a"),
+                        TileSpec.create("e"),
+                        CUSTOM_TILE_SPEC,
+                        TileSpec.create("d"),
+                        TileSpec.create("non_existent"),
+                    )
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
 
-            // check each tile
+                // check each tile
 
-            // Tile a
-            val tile0 = tiles!![0]
-            assertThat(tile0.spec).isEqualTo(specs[0])
-            assertThat(tile0.tile.tileSpec).isEqualTo(specs[0].spec)
-            assertThat(tile0.tile).isInstanceOf(FakeQSTile::class.java)
-            assertThat(tile0.tile.isAvailable).isTrue()
+                // Tile a
+                val tile0 = tiles!![0]
+                assertThat(tile0.spec).isEqualTo(specs[0])
+                assertThat(tile0.tile.tileSpec).isEqualTo(specs[0].spec)
+                assertThat(tile0.tile).isInstanceOf(FakeQSTile::class.java)
+                assertThat(tile0.tile.isAvailable).isTrue()
 
-            // Tile e is not available and is not in the list
+                // Tile e is not available and is not in the list
 
-            // Custom Tile
-            val tile1 = tiles!![1]
-            assertThat(tile1.spec).isEqualTo(specs[2])
-            assertThat(tile1.tile.tileSpec).isEqualTo(specs[2].spec)
-            assertThat(tile1.tile).isInstanceOf(CustomTile::class.java)
-            assertThat(tile1.tile.isAvailable).isTrue()
+                // Custom Tile
+                val tile1 = tiles!![1]
+                assertThat(tile1.spec).isEqualTo(specs[2])
+                assertThat(tile1.tile.tileSpec).isEqualTo(specs[2].spec)
+                assertThat(tile1.tile).isInstanceOf(CustomTile::class.java)
+                assertThat(tile1.tile.isAvailable).isTrue()
 
-            // Tile d
-            val tile2 = tiles!![2]
-            assertThat(tile2.spec).isEqualTo(specs[3])
-            assertThat(tile2.tile.tileSpec).isEqualTo(specs[3].spec)
-            assertThat(tile2.tile).isInstanceOf(FakeQSTile::class.java)
-            assertThat(tile2.tile.isAvailable).isTrue()
+                // Tile d
+                val tile2 = tiles!![2]
+                assertThat(tile2.spec).isEqualTo(specs[3])
+                assertThat(tile2.tile.tileSpec).isEqualTo(specs[3].spec)
+                assertThat(tile2.tile).isInstanceOf(FakeQSTile::class.java)
+                assertThat(tile2.tile.isAvailable).isTrue()
 
-            // Tile non-existent shouldn't be created. Therefore, only 3 tiles total
-            assertThat(tiles?.size).isEqualTo(3)
+                // Tile non-existent shouldn't be created. Therefore, only 3 tiles total
+                assertThat(tiles?.size).isEqualTo(3)
+            }
         }
 
     @Test
     fun logTileCreated() =
-        testScope.runTest(USER_INFO_0) {
-            val specs = listOf(TileSpec.create("a"), CUSTOM_TILE_SPEC)
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
-            runCurrent()
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val specs = listOf(TileSpec.create("a"), CUSTOM_TILE_SPEC)
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                runCurrent()
 
-            specs.forEach { verify(logger).logTileCreated(it) }
+                specs.forEach { verify(qsLogger).logTileCreated(it) }
+            }
         }
 
     @Test
     fun logTileNotFoundInFactory() =
-        testScope.runTest(USER_INFO_0) {
-            val specs = listOf(TileSpec.create("non_existing"))
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
-            runCurrent()
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val specs = listOf(TileSpec.create("non_existing"))
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                runCurrent()
 
-            verify(logger, never()).logTileCreated(any())
-            verify(logger).logTileNotFoundInFactory(specs[0])
+                verify(qsLogger, never()).logTileCreated(any())
+                verify(qsLogger).logTileNotFoundInFactory(specs[0])
+            }
         }
 
     @Test
     fun tileNotAvailableDestroyed_logged() =
-        testScope.runTest(USER_INFO_0) {
-            val specs = listOf(TileSpec.create("e"))
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
-            runCurrent()
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val specs = listOf(TileSpec.create("e"))
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                runCurrent()
 
-            verify(logger, never()).logTileCreated(any())
-            verify(logger)
-                .logTileDestroyed(
-                    specs[0],
-                    QSPipelineLogger.TileDestroyedReason.NEW_TILE_NOT_AVAILABLE,
-                )
+                verify(qsLogger, never()).logTileCreated(any())
+                verify(qsLogger)
+                    .logTileDestroyed(
+                        specs[0],
+                        QSPipelineLogger.TileDestroyedReason.NEW_TILE_NOT_AVAILABLE,
+                    )
+            }
         }
 
     @Test
     fun someTilesNotValid_repositorySetToDefinitiveList() =
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_0.id))
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_0.id))
 
-            val specs = listOf(TileSpec.create("a"), TileSpec.create("e"))
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                val specs = listOf(TileSpec.create("a"), TileSpec.create("e"))
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
 
-            assertThat(tiles).isEqualTo(listOf(TileSpec.create("a")))
+                assertThat(tiles).isEqualTo(listOf(TileSpec.create("a")))
+            }
         }
 
     @Test
     fun deduplicatedTiles() =
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(underTest.currentTiles)
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(underTest.currentTiles)
 
-            val specs = listOf(TileSpec.create("a"), TileSpec.create("a"))
+                val specs = listOf(TileSpec.create("a"), TileSpec.create("a"))
 
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
 
-            assertThat(tiles?.size).isEqualTo(1)
-            assertThat(tiles!![0].spec).isEqualTo(specs[0])
+                assertThat(tiles?.size).isEqualTo(1)
+                assertThat(tiles!![0].spec).isEqualTo(specs[0])
+            }
         }
 
     @Test
     fun tilesChange_platformTileNotRecreated() =
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(underTest.currentTiles)
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(underTest.currentTiles)
 
-            val specs = listOf(TileSpec.create("a"))
+                val specs = listOf(TileSpec.create("a"))
 
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
-            val originalTileA = tiles!![0].tile
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                val originalTileA = tiles!![0].tile
 
-            tileSpecRepository.addTile(USER_INFO_0.id, TileSpec.create("b"))
+                tileSpecRepository.addTile(USER_INFO_0.id, TileSpec.create("b"))
 
-            assertThat(tiles?.size).isEqualTo(2)
-            assertThat(tiles!![0].tile).isSameInstanceAs(originalTileA)
+                assertThat(tiles?.size).isEqualTo(2)
+                assertThat(tiles!![0].tile).isSameInstanceAs(originalTileA)
+            }
         }
 
     @Test
     fun tileRemovedIsDestroyed() =
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(underTest.currentTiles)
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(underTest.currentTiles)
 
-            val specs = listOf(TileSpec.create("a"), TileSpec.create("c"))
+                val specs = listOf(TileSpec.create("a"), TileSpec.create("c"))
 
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
-            val originalTileC = tiles!![1].tile
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                val originalTileC = tiles!![1].tile
 
-            tileSpecRepository.removeTiles(USER_INFO_0.id, listOf(TileSpec.create("c")))
+                tileSpecRepository.removeTiles(USER_INFO_0.id, listOf(TileSpec.create("c")))
 
-            assertThat(tiles?.size).isEqualTo(1)
-            assertThat(tiles!![0].spec).isEqualTo(TileSpec.create("a"))
+                assertThat(tiles?.size).isEqualTo(1)
+                assertThat(tiles!![0].spec).isEqualTo(TileSpec.create("a"))
 
-            assertThat((originalTileC as FakeQSTile).destroyed).isTrue()
-            verify(logger)
-                .logTileDestroyed(
-                    TileSpec.create("c"),
-                    QSPipelineLogger.TileDestroyedReason.TILE_REMOVED,
-                )
+                assertThat(originalTileC.isDestroyed).isTrue()
+                verify(qsLogger)
+                    .logTileDestroyed(
+                        TileSpec.create("c"),
+                        QSPipelineLogger.TileDestroyedReason.TILE_REMOVED,
+                    )
+            }
         }
 
     @Test
     fun tileBecomesNotAvailable_destroyed() =
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(underTest.currentTiles)
-            val repoTiles by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_0.id))
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(underTest.currentTiles)
+                val repoTiles by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_0.id))
 
-            val specs = listOf(TileSpec.create("a"))
+                val specs = listOf(TileSpec.create("a"))
 
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
-            val originalTileA = tiles!![0].tile
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                val originalTileA = tiles!![0].tile
 
-            // Tile becomes unavailable
-            (originalTileA as FakeQSTile).available = false
-            unavailableTiles.add("a")
-            // and there is some change in the specs
-            tileSpecRepository.addTile(USER_INFO_0.id, TileSpec.create("b"))
-            runCurrent()
+                // Tile becomes unavailable
+                (originalTileA as FakeQSTile).available = false
+                unavailableTiles.add("a")
+                // and there is some change in the specs
+                tileSpecRepository.addTile(USER_INFO_0.id, TileSpec.create("b"))
+                runCurrent()
 
-            assertThat(originalTileA.destroyed).isTrue()
-            verify(logger)
-                .logTileDestroyed(
-                    TileSpec.create("a"),
-                    QSPipelineLogger.TileDestroyedReason.EXISTING_TILE_NOT_AVAILABLE,
-                )
+                assertThat(originalTileA.isDestroyed).isTrue()
+                verify(qsLogger)
+                    .logTileDestroyed(
+                        TileSpec.create("a"),
+                        QSPipelineLogger.TileDestroyedReason.EXISTING_TILE_NOT_AVAILABLE,
+                    )
 
-            assertThat(tiles?.size).isEqualTo(1)
-            assertThat(tiles!![0].spec).isEqualTo(TileSpec.create("b"))
-            assertThat(tiles!![0].tile).isNotSameInstanceAs(originalTileA)
+                assertThat(tiles?.size).isEqualTo(1)
+                assertThat(tiles!![0].spec).isEqualTo(TileSpec.create("b"))
+                assertThat(tiles!![0].tile).isNotSameInstanceAs(originalTileA)
 
-            assertThat(repoTiles).isEqualTo(tiles!!.map(TileModel::spec))
+                assertThat(repoTiles).isEqualTo(tiles!!.map(TileModel::spec))
+            }
         }
 
     @Test
     fun userChange_tilesChange() =
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(underTest.currentTiles)
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(underTest.currentTiles)
 
-            val specs0 = listOf(TileSpec.create("a"))
-            val specs1 = listOf(TileSpec.create("b"))
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs0)
-            tileSpecRepository.setTiles(USER_INFO_1.id, specs1)
+                val specs0 = listOf(TileSpec.create("a"))
+                val specs1 = listOf(TileSpec.create("b"))
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs0)
+                tileSpecRepository.setTiles(USER_INFO_1.id, specs1)
 
-            switchUser(USER_INFO_1)
+                switchUser(USER_INFO_1)
 
-            assertThat(tiles!![0].spec).isEqualTo(specs1[0])
-            assertThat(tiles!![0].tile.tileSpec).isEqualTo(specs1[0].spec)
+                assertThat(tiles!![0].spec).isEqualTo(specs1[0])
+                assertThat(tiles!![0].tile.tileSpec).isEqualTo(specs1[0].spec)
+            }
         }
 
     @Test
     fun tileNotPresentInSecondaryUser_destroyedInUserChange() =
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(underTest.currentTiles)
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(underTest.currentTiles)
 
-            val specs0 = listOf(TileSpec.create("a"))
-            val specs1 = listOf(TileSpec.create("b"))
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs0)
-            tileSpecRepository.setTiles(USER_INFO_1.id, specs1)
+                val specs0 = listOf(TileSpec.create("a"))
+                val specs1 = listOf(TileSpec.create("b"))
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs0)
+                tileSpecRepository.setTiles(USER_INFO_1.id, specs1)
 
-            val originalTileA = tiles!![0].tile
+                val originalTileA = tiles!![0].tile
 
-            switchUser(USER_INFO_1)
-            runCurrent()
+                switchUser(USER_INFO_1)
+                runCurrent()
 
-            assertThat((originalTileA as FakeQSTile).destroyed).isTrue()
-            verify(logger)
-                .logTileDestroyed(
-                    specs0[0],
-                    QSPipelineLogger.TileDestroyedReason.TILE_NOT_PRESENT_IN_NEW_USER,
-                )
+                assertThat(originalTileA.isDestroyed).isTrue()
+                verify(qsLogger)
+                    .logTileDestroyed(
+                        specs0[0],
+                        QSPipelineLogger.TileDestroyedReason.TILE_NOT_PRESENT_IN_NEW_USER,
+                    )
+            }
         }
 
     @Test
-    fun userChange_customTileDestroyed_lifecycleNotTerminated() {
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(underTest.currentTiles)
+    fun userChange_customTileDestroyed_lifecycleNotTerminated() =
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(underTest.currentTiles)
 
-            val specs = listOf(CUSTOM_TILE_SPEC)
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
-            tileSpecRepository.setTiles(USER_INFO_1.id, specs)
+                val specs = listOf(CUSTOM_TILE_SPEC)
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                tileSpecRepository.setTiles(USER_INFO_1.id, specs)
 
-            val originalCustomTile = tiles!![0].tile
+                val originalCustomTile = tiles!![0].tile
 
-            switchUser(USER_INFO_1)
-            runCurrent()
+                switchUser(USER_INFO_1)
+                runCurrent()
 
-            verify(originalCustomTile).destroy()
-            assertThat(tileLifecycleManagerFactory.created).isEmpty()
+                verify(originalCustomTile).destroy()
+                assertThat((tileLifecycleManagerFactory as TLMFactory).created).isEmpty()
+            }
         }
-    }
 
     @Test
     fun userChange_sameTileUserChanged() =
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(underTest.currentTiles)
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(underTest.currentTiles)
 
-            val specs = listOf(TileSpec.create("a"))
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
-            tileSpecRepository.setTiles(USER_INFO_1.id, specs)
+                val specs = listOf(TileSpec.create("a"))
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                tileSpecRepository.setTiles(USER_INFO_1.id, specs)
 
-            val originalTileA = tiles!![0].tile as FakeQSTile
-            assertThat(originalTileA.user).isEqualTo(USER_INFO_0.id)
+                val originalTileA = tiles!![0].tile as FakeQSTile
+                assertThat(originalTileA.user).isEqualTo(USER_INFO_0.id)
 
-            switchUser(USER_INFO_1)
-            runCurrent()
+                switchUser(USER_INFO_1)
+                runCurrent()
 
-            assertThat(tiles!![0].tile).isSameInstanceAs(originalTileA)
-            assertThat(originalTileA.user).isEqualTo(USER_INFO_1.id)
-            verify(logger).logTileUserChanged(specs[0], USER_INFO_1.id)
+                assertThat(tiles!![0].tile).isSameInstanceAs(originalTileA)
+                assertThat(originalTileA.user).isEqualTo(USER_INFO_1.id)
+                verify(qsLogger).logTileUserChanged(specs[0], USER_INFO_1.id)
+            }
         }
 
     @Test
     fun addTile() =
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_0.id))
-            val spec = TileSpec.create("a")
-            val currentSpecs = listOf(TileSpec.create("b"), TileSpec.create("c"))
-            tileSpecRepository.setTiles(USER_INFO_0.id, currentSpecs)
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_0.id))
+                val spec = TileSpec.create("a")
+                val currentSpecs = listOf(TileSpec.create("b"), TileSpec.create("c"))
+                tileSpecRepository.setTiles(USER_INFO_0.id, currentSpecs)
 
-            underTest.addTile(spec, position = 1)
+                underTest.addTile(spec, position = 1)
 
-            val expectedSpecs = listOf(TileSpec.create("b"), spec, TileSpec.create("c"))
-            assertThat(tiles).isEqualTo(expectedSpecs)
+                val expectedSpecs = listOf(TileSpec.create("b"), spec, TileSpec.create("c"))
+                assertThat(tiles).isEqualTo(expectedSpecs)
+            }
         }
 
     @Test
     fun addTile_currentUser() =
-        testScope.runTest(USER_INFO_1) {
-            val tiles0 by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_0.id))
-            val tiles1 by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_1.id))
-            val spec = TileSpec.create("a")
-            val currentSpecs = listOf(TileSpec.create("b"), TileSpec.create("c"))
-            tileSpecRepository.setTiles(USER_INFO_0.id, currentSpecs)
-            tileSpecRepository.setTiles(USER_INFO_1.id, currentSpecs)
+        with(kosmos) {
+            testScope.runTest(USER_INFO_1) {
+                val tiles0 by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_0.id))
+                val tiles1 by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_1.id))
+                val spec = TileSpec.create("a")
+                val currentSpecs = listOf(TileSpec.create("b"), TileSpec.create("c"))
+                tileSpecRepository.setTiles(USER_INFO_0.id, currentSpecs)
+                tileSpecRepository.setTiles(USER_INFO_1.id, currentSpecs)
 
-            switchUser(USER_INFO_1)
-            underTest.addTile(spec, position = 1)
+                switchUser(USER_INFO_1)
+                underTest.addTile(spec, position = 1)
 
-            assertThat(tiles0).isEqualTo(currentSpecs)
+                assertThat(tiles0).isEqualTo(currentSpecs)
 
-            val expectedSpecs = listOf(TileSpec.create("b"), spec, TileSpec.create("c"))
-            assertThat(tiles1).isEqualTo(expectedSpecs)
+                val expectedSpecs = listOf(TileSpec.create("b"), spec, TileSpec.create("c"))
+                assertThat(tiles1).isEqualTo(expectedSpecs)
+            }
         }
 
     @Test
     fun removeTile_platform() =
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_0.id))
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_0.id))
 
-            val specs = listOf(TileSpec.create("a"), TileSpec.create("b"))
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
-            runCurrent()
+                val specs = listOf(TileSpec.create("a"), TileSpec.create("b"))
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                runCurrent()
 
-            underTest.removeTiles(specs.subList(0, 1))
+                underTest.removeTiles(specs.subList(0, 1))
 
-            assertThat(tiles).isEqualTo(specs.subList(1, 2))
+                assertThat(tiles).isEqualTo(specs.subList(1, 2))
+            }
         }
 
     @Test
-    fun removeTile_customTile_lifecycleEnded() {
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_0.id))
+    fun removeTile_customTile_lifecycleEnded() =
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_0.id))
 
-            val specs = listOf(TileSpec.create("a"), CUSTOM_TILE_SPEC)
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
-            runCurrent()
-            assertThat(customTileAddedRepository.isTileAdded(TEST_COMPONENT, USER_INFO_0.id))
-                .isTrue()
+                val specs = listOf(TileSpec.create("a"), CUSTOM_TILE_SPEC)
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                runCurrent()
+                assertThat(customTileAddedRepository.isTileAdded(TEST_COMPONENT, USER_INFO_0.id))
+                    .isTrue()
 
-            underTest.removeTiles(listOf(CUSTOM_TILE_SPEC))
+                underTest.removeTiles(listOf(CUSTOM_TILE_SPEC))
 
-            assertThat(tiles).isEqualTo(specs.subList(0, 1))
+                assertThat(tiles).isEqualTo(specs.subList(0, 1))
 
-            val tileLifecycleManager =
-                tileLifecycleManagerFactory.created[USER_INFO_0.id to TEST_COMPONENT]
-            assertThat(tileLifecycleManager).isNotNull()
+                val tileLifecycleManager =
+                    (tileLifecycleManagerFactory as TLMFactory)
+                        .created[USER_INFO_0.id to TEST_COMPONENT]
+                assertThat(tileLifecycleManager).isNotNull()
 
-            with(inOrder(tileLifecycleManager!!)) {
-                verify(tileLifecycleManager).onStopListening()
-                verify(tileLifecycleManager).onTileRemoved()
-                verify(tileLifecycleManager).flushMessagesAndUnbind()
+                with(inOrder(tileLifecycleManager!!)) {
+                    verify(tileLifecycleManager).onStopListening()
+                    verify(tileLifecycleManager).onTileRemoved()
+                    verify(tileLifecycleManager).flushMessagesAndUnbind()
+                }
+                assertThat(customTileAddedRepository.isTileAdded(TEST_COMPONENT, USER_INFO_0.id))
+                    .isFalse()
+                assertThat(
+                        customTileStatePersister.readState(
+                            TileServiceKey(TEST_COMPONENT, USER_INFO_0.id)
+                        )
+                    )
+                    .isNull()
             }
-            assertThat(customTileAddedRepository.isTileAdded(TEST_COMPONENT, USER_INFO_0.id))
-                .isFalse()
-            verify(customTileStatePersister)
-                .removeState(TileServiceKey(TEST_COMPONENT, USER_INFO_0.id))
         }
-    }
 
     @Test
     fun removeTiles_currentUser() =
-        testScope.runTest {
-            val tiles0 by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_0.id))
-            val tiles1 by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_1.id))
-            val currentSpecs =
-                listOf(TileSpec.create("a"), TileSpec.create("b"), TileSpec.create("c"))
-            tileSpecRepository.setTiles(USER_INFO_0.id, currentSpecs)
-            tileSpecRepository.setTiles(USER_INFO_1.id, currentSpecs)
+        with(kosmos) {
+            testScope.runTest {
+                val tiles0 by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_0.id))
+                val tiles1 by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_1.id))
+                val currentSpecs =
+                    listOf(TileSpec.create("a"), TileSpec.create("b"), TileSpec.create("c"))
+                tileSpecRepository.setTiles(USER_INFO_0.id, currentSpecs)
+                tileSpecRepository.setTiles(USER_INFO_1.id, currentSpecs)
 
-            switchUser(USER_INFO_1)
-            runCurrent()
+                switchUser(USER_INFO_1)
+                runCurrent()
 
-            underTest.removeTiles(currentSpecs.subList(0, 2))
+                underTest.removeTiles(currentSpecs.subList(0, 2))
 
-            assertThat(tiles0).isEqualTo(currentSpecs)
-            assertThat(tiles1).isEqualTo(currentSpecs.subList(2, 3))
+                assertThat(tiles0).isEqualTo(currentSpecs)
+                assertThat(tiles1).isEqualTo(currentSpecs.subList(2, 3))
+            }
         }
 
     @Test
     fun setTiles() =
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_0.id))
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(tileSpecRepository.tilesSpecs(USER_INFO_0.id))
 
-            val currentSpecs = listOf(TileSpec.create("a"), TileSpec.create("b"))
-            tileSpecRepository.setTiles(USER_INFO_0.id, currentSpecs)
-            runCurrent()
+                val currentSpecs = listOf(TileSpec.create("a"), TileSpec.create("b"))
+                tileSpecRepository.setTiles(USER_INFO_0.id, currentSpecs)
+                runCurrent()
 
-            val newSpecs = listOf(TileSpec.create("b"), TileSpec.create("c"), TileSpec.create("a"))
-            underTest.setTiles(newSpecs)
-            runCurrent()
+                val newSpecs =
+                    listOf(TileSpec.create("b"), TileSpec.create("c"), TileSpec.create("a"))
+                underTest.setTiles(newSpecs)
+                runCurrent()
 
-            assertThat(tiles).isEqualTo(newSpecs)
+                assertThat(tiles).isEqualTo(newSpecs)
+            }
         }
 
     @Test
     fun setTiles_customTiles_lifecycleEndedIfGone() =
-        testScope.runTest(USER_INFO_0) {
-            val otherCustomTileSpec = TileSpec.create("custom(b/c)")
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val otherCustomTileSpec = TileSpec.create("custom(b/c)")
 
-            val currentSpecs = listOf(CUSTOM_TILE_SPEC, TileSpec.create("a"), otherCustomTileSpec)
-            tileSpecRepository.setTiles(USER_INFO_0.id, currentSpecs)
-            runCurrent()
+                val currentSpecs =
+                    listOf(CUSTOM_TILE_SPEC, TileSpec.create("a"), otherCustomTileSpec)
+                tileSpecRepository.setTiles(USER_INFO_0.id, currentSpecs)
+                runCurrent()
 
-            val newSpecs = listOf(otherCustomTileSpec, TileSpec.create("a"))
+                val newSpecs = listOf(otherCustomTileSpec, TileSpec.create("a"))
 
-            underTest.setTiles(newSpecs)
-            runCurrent()
+                underTest.setTiles(newSpecs)
+                runCurrent()
 
-            val tileLifecycleManager =
-                tileLifecycleManagerFactory.created[USER_INFO_0.id to TEST_COMPONENT]!!
+                val tileLifecycleManager =
+                    (tileLifecycleManagerFactory as TLMFactory)
+                        .created[USER_INFO_0.id to TEST_COMPONENT]!!
 
-            with(inOrder(tileLifecycleManager)) {
-                verify(tileLifecycleManager).onStopListening()
-                verify(tileLifecycleManager).onTileRemoved()
-                verify(tileLifecycleManager).flushMessagesAndUnbind()
+                with(inOrder(tileLifecycleManager)) {
+                    verify(tileLifecycleManager).onStopListening()
+                    verify(tileLifecycleManager).onTileRemoved()
+                    verify(tileLifecycleManager).flushMessagesAndUnbind()
+                }
+                assertThat(customTileAddedRepository.isTileAdded(TEST_COMPONENT, USER_INFO_0.id))
+                    .isFalse()
+                assertThat(
+                        customTileStatePersister.readState(
+                            TileServiceKey(TEST_COMPONENT, USER_INFO_0.id)
+                        )
+                    )
+                    .isNull()
             }
-            assertThat(customTileAddedRepository.isTileAdded(TEST_COMPONENT, USER_INFO_0.id))
-                .isFalse()
-            verify(customTileStatePersister)
-                .removeState(TileServiceKey(TEST_COMPONENT, USER_INFO_0.id))
         }
 
     @Test
     fun protoDump() =
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(underTest.currentTiles)
-            val specs = listOf(TileSpec.create("a"), CUSTOM_TILE_SPEC)
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(underTest.currentTiles)
+                val specs = listOf(TileSpec.create("a"), CUSTOM_TILE_SPEC)
 
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
 
-            val stateA = tiles!![0].tile.state
-            stateA.fillIn(Tile.STATE_INACTIVE, "A", "AA")
-            val stateCustom = QSTile.BooleanState()
-            stateCustom.fillIn(Tile.STATE_ACTIVE, "B", "BB")
-            stateCustom.spec = CUSTOM_TILE_SPEC.spec
-            whenever(tiles!![1].tile.state).thenReturn(stateCustom)
+                val stateA = tiles!![0].tile.state
+                stateA.fillIn(Tile.STATE_INACTIVE, "A", "AA")
+                val stateCustom = QSTile.BooleanState()
+                stateCustom.fillIn(Tile.STATE_ACTIVE, "B", "BB")
+                stateCustom.spec = CUSTOM_TILE_SPEC.spec
+                whenever(tiles!![1].tile.state).thenReturn(stateCustom)
 
-            val proto = SystemUIProtoDump()
-            underTest.dumpProto(proto, emptyArray())
+                val proto = SystemUIProtoDump()
+                underTest.dumpProto(proto, emptyArray())
 
-            assertThat(MessageNano.messageNanoEquals(proto.tiles[0], stateA.toProto())).isTrue()
-            assertThat(MessageNano.messageNanoEquals(proto.tiles[1], stateCustom.toProto()))
-                .isTrue()
+                assertThat(MessageNano.messageNanoEquals(proto.tiles[0], stateA.toProto())).isTrue()
+                assertThat(MessageNano.messageNanoEquals(proto.tiles[1], stateCustom.toProto()))
+                    .isTrue()
+            }
         }
 
     @Test
     fun retainedTiles_callbackNotRemoved() =
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(underTest.currentTiles)
-            tileSpecRepository.setTiles(USER_INFO_0.id, listOf(TileSpec.create("a")))
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(underTest.currentTiles)
+                tileSpecRepository.setTiles(USER_INFO_0.id, listOf(TileSpec.create("a")))
 
-            val tileA = tiles!![0].tile
-            val callback = mock<QSTile.Callback>()
-            tileA.addCallback(callback)
+                val tileA = tiles!![0].tile
+                val callback = mock<QSTile.Callback>()
+                tileA.addCallback(callback)
 
-            tileSpecRepository.setTiles(
-                USER_INFO_0.id,
-                listOf(TileSpec.create("a"), CUSTOM_TILE_SPEC),
-            )
-            val newTileA = tiles!![0].tile
-            assertThat(tileA).isSameInstanceAs(newTileA)
+                tileSpecRepository.setTiles(
+                    USER_INFO_0.id,
+                    listOf(TileSpec.create("a"), CUSTOM_TILE_SPEC),
+                )
+                val newTileA = tiles!![0].tile
+                assertThat(tileA).isSameInstanceAs(newTileA)
 
-            assertThat((tileA as FakeQSTile).callbacks).containsExactly(callback)
+                assertThat((tileA as FakeQSTile).callbacks).containsExactly(callback)
+            }
         }
 
     @Test
     fun packageNotInstalled_customTileNotVisible() =
-        testScope.runTest(USER_INFO_0) {
-            installedTilesPackageRepository.setInstalledPackagesForUser(USER_INFO_0.id, emptySet())
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                fakeInstalledTilesRepository.setInstalledPackagesForUser(USER_INFO_0.id, emptySet())
 
-            val tiles by collectLastValue(underTest.currentTiles)
+                val tiles by collectLastValue(underTest.currentTiles)
 
-            val specs = listOf(TileSpec.create("a"), CUSTOM_TILE_SPEC)
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                val specs = listOf(TileSpec.create("a"), CUSTOM_TILE_SPEC)
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
 
-            assertThat(tiles!!.size).isEqualTo(1)
-            assertThat(tiles!![0].spec).isEqualTo(specs[0])
+                assertThat(tiles!!.size).isEqualTo(1)
+                assertThat(tiles!![0].spec).isEqualTo(specs[0])
+            }
         }
 
     @Test
     fun packageInstalledLater_customTileAdded() =
-        testScope.runTest(USER_INFO_0) {
-            installedTilesPackageRepository.setInstalledPackagesForUser(USER_INFO_0.id, emptySet())
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                fakeInstalledTilesRepository.setInstalledPackagesForUser(USER_INFO_0.id, emptySet())
 
-            val tiles by collectLastValue(underTest.currentTiles)
-            val specs = listOf(TileSpec.create("a"), CUSTOM_TILE_SPEC, TileSpec.create("b"))
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                val tiles by collectLastValue(underTest.currentTiles)
+                val specs = listOf(TileSpec.create("a"), CUSTOM_TILE_SPEC, TileSpec.create("b"))
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
 
-            assertThat(tiles!!.size).isEqualTo(2)
+                assertThat(tiles!!.size).isEqualTo(2)
 
-            installedTilesPackageRepository.setInstalledPackagesForUser(
-                USER_INFO_0.id,
-                setOf(TEST_COMPONENT),
-            )
+                fakeInstalledTilesRepository.setInstalledPackagesForUser(
+                    USER_INFO_0.id,
+                    setOf(TEST_COMPONENT),
+                )
 
-            assertThat(tiles!!.size).isEqualTo(3)
-            assertThat(tiles!![1].spec).isEqualTo(CUSTOM_TILE_SPEC)
+                assertThat(tiles!!.size).isEqualTo(3)
+                assertThat(tiles!![1].spec).isEqualTo(CUSTOM_TILE_SPEC)
+            }
         }
 
     @Test
     fun tileAddedOnEmptyList_blocked() =
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(underTest.currentTiles)
-            val specs = listOf(TileSpec.create("a"), TileSpec.create("b"))
-            val newTile = TileSpec.create("c")
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(underTest.currentTiles)
+                val specs = listOf(TileSpec.create("a"), TileSpec.create("b"))
+                val newTile = TileSpec.create("c")
 
-            underTest.addTile(newTile)
+                underTest.addTile(newTile)
 
-            assertThat(tiles!!.isEmpty()).isTrue()
+                assertThat(tiles!!.isEmpty()).isTrue()
 
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
 
-            assertThat(tiles!!.size).isEqualTo(3)
+                assertThat(tiles!!.size).isEqualTo(3)
+            }
         }
 
     @Test
     fun changeInPackagesTiles_doesntTriggerUserChange_logged() =
-        testScope.runTest(USER_INFO_0) {
-            val specs = listOf(TileSpec.create("a"))
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
-            runCurrent()
-            // Settled on the same list of tiles.
-            assertThat(underTest.currentTilesSpecs).isEqualTo(specs)
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val specs = listOf(TileSpec.create("a"))
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                runCurrent()
+                // Settled on the same list of tiles.
+                assertThat(underTest.currentTilesSpecs).isEqualTo(specs)
 
-            installedTilesPackageRepository.setInstalledPackagesForUser(USER_INFO_0.id, emptySet())
-            runCurrent()
+                fakeInstalledTilesRepository.setInstalledPackagesForUser(USER_INFO_0.id, emptySet())
+                runCurrent()
 
-            verify(logger, never()).logTileUserChanged(TileSpec.create("a"), 0)
+                verify(qsLogger, never()).logTileUserChanged(TileSpec.create("a"), 0)
+            }
         }
 
     @Test
     fun getTileDetails() =
-        testScope.runTest(USER_INFO_0) {
-            val tiles by collectLastValue(underTest.currentTiles)
-            val tileA = TileSpec.create("a")
-            val tileB = TileSpec.create("b")
-            val tileNoDetails = TileSpec.create("NoDetails")
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(underTest.currentTiles)
+                val tileA = TileSpec.create("a")
+                val tileB = TileSpec.create("b")
+                val tileNoDetails = TileSpec.create("NoDetails")
 
-            val specs = listOf(tileA, tileB, tileNoDetails)
+                val specs = listOf(tileA, tileB, tileNoDetails)
 
-            assertThat(tiles!!.isEmpty()).isTrue()
+                assertThat(tiles!!.isEmpty()).isTrue()
 
-            tileSpecRepository.setTiles(USER_INFO_0.id, specs)
-            assertThat(tiles!!.size).isEqualTo(3)
+                tileSpecRepository.setTiles(USER_INFO_0.id, specs)
+                assertThat(tiles!!.size).isEqualTo(3)
 
-            // The third tile doesn't have a details view.
-            assertThat(tiles!![2].spec).isEqualTo(tileNoDetails)
-            (tiles!![2].tile as FakeQSTile).hasDetailsViewModel = false
+                // The third tile doesn't have a details view.
+                assertThat(tiles!![2].spec).isEqualTo(tileNoDetails)
+                (tiles!![2].tile as FakeQSTile).hasDetailsViewModel = false
 
-            var currentModel: TileDetailsViewModel? = null
-            val setCurrentModel = { model: TileDetailsViewModel? -> currentModel = model }
-            tiles!![0].tile.getDetailsViewModel(setCurrentModel)
-            assertThat(currentModel?.getTitle()).isEqualTo("a")
+                var currentModel: TileDetailsViewModel? = null
+                val setCurrentModel = { model: TileDetailsViewModel? -> currentModel = model }
+                tiles!![0].tile.getDetailsViewModel(setCurrentModel)
+                assertThat(currentModel?.getTitle()).isEqualTo("a")
 
-            currentModel = null
-            tiles!![1].tile.getDetailsViewModel(setCurrentModel)
-            assertThat(currentModel?.getTitle()).isEqualTo("b")
+                currentModel = null
+                tiles!![1].tile.getDetailsViewModel(setCurrentModel)
+                assertThat(currentModel?.getTitle()).isEqualTo("b")
 
-            currentModel = null
-            tiles!![2].tile.getDetailsViewModel(setCurrentModel)
-            assertThat(currentModel).isNull()
+                currentModel = null
+                tiles!![2].tile.getDetailsViewModel(setCurrentModel)
+                assertThat(currentModel).isNull()
+            }
+        }
+
+    @Test
+    fun destroyedTilesNotReused() =
+        with(kosmos) {
+            testScope.runTest(USER_INFO_0) {
+                val tiles by collectLastValue(underTest.currentTiles)
+                val specs = listOf(TileSpec.create("a"), TileSpec.create("b"))
+                val newTile = TileSpec.create("c")
+
+                underTest.setTiles(specs)
+
+                val tileABefore = tiles!!.first { it.spec == specs[0] }.tile
+
+                // We destroy it manually, in prod, this could happen if the tile processing action
+                // is interrupted in the middle.
+                tileABefore.destroy()
+
+                underTest.addTile(newTile)
+
+                val tileAAfter = tiles!!.first { it.spec == specs[0] }.tile
+                assertThat(tileAAfter).isNotSameInstanceAs(tileABefore)
+            }
         }
 
     private fun QSTile.State.fillIn(state: Int, label: CharSequence, secondaryLabel: CharSequence) {
@@ -686,20 +735,21 @@
         }
     }
 
-    private fun tileCreator(spec: String): QSTile? {
-        val currentUser = userTracker.userId
+    private fun Kosmos.tileCreator(spec: String): QSTile? {
+        val currentUser = userRepository.getSelectedUserInfo().id
         return when (spec) {
             CUSTOM_TILE_SPEC.spec ->
                 mock<CustomTile> {
                     var tileSpecReference: String? = null
-                    whenever(user).thenReturn(currentUser)
-                    whenever(component).thenReturn(CUSTOM_TILE_SPEC.componentName)
-                    whenever(isAvailable).thenReturn(true)
-                    whenever(setTileSpec(anyString())).thenAnswer {
-                        tileSpecReference = it.arguments[0] as? String
-                        Unit
-                    }
-                    whenever(tileSpec).thenAnswer { tileSpecReference }
+                    on { user } doReturn currentUser
+                    on { component } doReturn CUSTOM_TILE_SPEC.componentName
+                    on { isAvailable } doReturn true
+                    on { setTileSpec(anyString()) }
+                        .thenAnswer {
+                            tileSpecReference = it.arguments[0] as? String
+                            Unit
+                        }
+                    on { tileSpec }.thenAnswer { tileSpecReference }
                     // Also, add it to the set of added tiles (as this happens as part of the tile
                     // creation).
                     customTileAddedRepository.setTileAdded(
@@ -714,22 +764,16 @@
     }
 
     private fun TestScope.runTest(user: UserInfo, body: suspend TestScope.() -> Unit) {
-        return runTest {
+        return kosmos.runTest {
             switchUser(user)
             body()
         }
     }
 
-    private suspend fun switchUser(user: UserInfo) {
-        setUserTracker(user.id)
-        installedTilesPackageRepository.setInstalledPackagesForUser(user.id, setOf(TEST_COMPONENT))
-        userRepository.setSelectedUserInfo(user)
-    }
-
-    private fun setUserTracker(user: Int) {
-        val mockContext = mockUserContext(user)
-        whenever(userTracker.userContext).thenReturn(mockContext)
-        whenever(userTracker.userId).thenReturn(user)
+    private suspend fun Kosmos.switchUser(user: UserInfo) {
+        fakeUserTracker.set(listOf(user), 0)
+        fakeInstalledTilesRepository.setInstalledPackagesForUser(user.id, setOf(TEST_COMPONENT))
+        fakeUserRepository.setSelectedUserInfo(user)
     }
 
     private class TLMFactory : TileLifecycleManager.Factory {
@@ -745,13 +789,6 @@
         }
     }
 
-    private fun mockUserContext(user: Int): Context {
-        return mock {
-            whenever(this.userId).thenReturn(user)
-            whenever(this.user).thenReturn(UserHandle.of(user))
-        }
-    }
-
     companion object {
         private val USER_INFO_0 = UserInfo().apply { id = 0 }
         private val USER_INFO_1 = UserInfo().apply { id = 1 }
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tileimpl/QSTileImplTest.java b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tileimpl/QSTileImplTest.java
index 296478b..1d8c6cc 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tileimpl/QSTileImplTest.java
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tileimpl/QSTileImplTest.java
@@ -508,6 +508,12 @@
         assertThat(mTile.mRefreshes).isEqualTo(1);
     }
 
+    @Test
+    public void testIsDestroyedImmediately() {
+        mTile.destroy();
+        assertThat(mTile.isDestroyed()).isTrue();
+    }
+
     private void assertEvent(UiEventLogger.UiEventEnum eventType,
             UiEventLoggerFake.FakeUiEvent fakeEvent) {
         assertEquals(eventType.getId(), fakeEvent.eventId);
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/AirplaneModeTileTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/AirplaneModeTileTest.kt
index b921ff7..3914bd7 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/AirplaneModeTileTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/AirplaneModeTileTest.kt
@@ -23,7 +23,6 @@
 import android.testing.TestableLooper
 import androidx.test.filters.SmallTest
 import com.android.internal.logging.MetricsLogger
-import com.android.internal.telephony.flags.Flags
 import com.android.systemui.SysuiTestCase
 import com.android.systemui.broadcast.BroadcastDispatcher
 import com.android.systemui.classifier.FalsingManagerFake
@@ -131,17 +130,7 @@
     }
 
     @Test
-    fun handleClick_noSatelliteFeature_directSetAirplaneMode() {
-        mSetFlagsRule.disableFlags(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
-
-        mTile.handleClick(null)
-
-        verify(mConnectivityManager).setAirplaneMode(any())
-    }
-
-    @Test
     fun handleClick_hasSatelliteFeatureButClickIsProcessing_doNothing() {
-        mSetFlagsRule.enableFlags(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
         Mockito.`when`(mClickJob.isCompleted).thenReturn(false)
         mTile.mClickJob = mClickJob
 
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/base/viewmodel/QSTileViewModelImplTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/base/viewmodel/QSTileViewModelImplTest.kt
index fba6151..da3cebd 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/base/viewmodel/QSTileViewModelImplTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/base/viewmodel/QSTileViewModelImplTest.kt
@@ -22,6 +22,7 @@
 import com.android.systemui.classifier.FalsingManagerFake
 import com.android.systemui.common.shared.model.ContentDescription
 import com.android.systemui.common.shared.model.Icon
+import com.android.systemui.qs.FakeTileDetailsViewModel
 import com.android.systemui.qs.tiles.base.analytics.QSTileAnalytics
 import com.android.systemui.qs.tiles.base.interactor.FakeDisabledByPolicyInteractor
 import com.android.systemui.qs.tiles.base.interactor.FakeQSTileDataInteractor
@@ -97,6 +98,7 @@
                 testCoroutineDispatcher,
                 testCoroutineDispatcher,
                 testScope.backgroundScope,
+                FakeTileDetailsViewModel("QSTileViewModelImplTest"),
             )
     }
 
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/impl/internet/domain/interactor/InternetTileUserActionInteractorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/impl/internet/domain/interactor/InternetTileUserActionInteractorTest.kt
index 3db5efc..261e3de 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/impl/internet/domain/interactor/InternetTileUserActionInteractorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/impl/internet/domain/interactor/InternetTileUserActionInteractorTest.kt
@@ -26,8 +26,6 @@
 import com.android.systemui.qs.tiles.base.actions.FakeQSTileIntentUserInputHandler
 import com.android.systemui.qs.tiles.base.actions.QSTileIntentUserInputHandlerSubject
 import com.android.systemui.qs.tiles.base.interactor.QSTileInputTestKtx
-import com.android.systemui.qs.tiles.dialog.InternetDetailsContentManager
-import com.android.systemui.qs.tiles.dialog.InternetDetailsViewModel
 import com.android.systemui.qs.tiles.dialog.InternetDialogManager
 import com.android.systemui.qs.tiles.impl.internet.domain.model.InternetTileModel
 import com.android.systemui.statusbar.connectivity.AccessPointController
@@ -39,11 +37,8 @@
 import org.junit.runner.RunWith
 import org.mockito.ArgumentMatchers.anyBoolean
 import org.mockito.ArgumentMatchers.eq
-import org.mockito.kotlin.any
 import org.mockito.kotlin.mock
-import org.mockito.kotlin.times
 import org.mockito.kotlin.verify
-import org.mockito.kotlin.whenever
 
 @SmallTest
 @EnabledOnRavenwood
@@ -56,31 +51,17 @@
 
     private lateinit var internetDialogManager: InternetDialogManager
     private lateinit var controller: AccessPointController
-    private lateinit var internetDetailsViewModelFactory: InternetDetailsViewModel.Factory
-    private lateinit var internetDetailsContentManagerFactory: InternetDetailsContentManager.Factory
-    private lateinit var internetDetailsViewModel: InternetDetailsViewModel
 
     @Before
     fun setup() {
         internetDialogManager = mock<InternetDialogManager>()
         controller = mock<AccessPointController>()
-        internetDetailsViewModelFactory = mock<InternetDetailsViewModel.Factory>()
-        internetDetailsContentManagerFactory = mock<InternetDetailsContentManager.Factory>()
-        internetDetailsViewModel =
-            InternetDetailsViewModel(
-                onLongClick = {},
-                accessPointController = mock<AccessPointController>(),
-                contentManagerFactory = internetDetailsContentManagerFactory,
-            )
-        whenever(internetDetailsViewModelFactory.create(any())).thenReturn(internetDetailsViewModel)
-
         underTest =
             InternetTileUserActionInteractor(
                 kosmos.testScope.coroutineContext,
                 internetDialogManager,
                 controller,
                 inputHandler,
-                internetDetailsViewModelFactory,
             )
     }
 
@@ -127,12 +108,4 @@
                 assertThat(it.intent.action).isEqualTo(Settings.ACTION_WIFI_SETTINGS)
             }
         }
-
-    @Test
-    fun detailsViewModel() =
-        kosmos.testScope.runTest {
-            assertThat(underTest.detailsViewModel.getTitle()).isEqualTo("Internet")
-            assertThat(underTest.detailsViewModel.getSubTitle())
-                .isEqualTo("Tab a network to connect")
-        }
 }
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/viewmodel/QSTileViewModelTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/viewmodel/QSTileViewModelTest.kt
index 0598a8b..4e9b635 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/viewmodel/QSTileViewModelTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/viewmodel/QSTileViewModelTest.kt
@@ -25,6 +25,7 @@
 import com.android.systemui.common.shared.model.ContentDescription
 import com.android.systemui.common.shared.model.Icon
 import com.android.systemui.coroutines.collectValues
+import com.android.systemui.qs.FakeTileDetailsViewModel
 import com.android.systemui.qs.tiles.base.analytics.QSTileAnalytics
 import com.android.systemui.qs.tiles.base.interactor.DataUpdateTrigger
 import com.android.systemui.qs.tiles.base.interactor.FakeDisabledByPolicyInteractor
@@ -171,21 +172,6 @@
                 .isEqualTo(FakeQSTileDataInteractor.AvailabilityRequest(USER))
         }
 
-    @Test
-    fun tileDetails() =
-        testScope.runTest {
-            assertThat(tileUserActionInteractor.detailsViewModel).isNotNull()
-            assertThat(tileUserActionInteractor.detailsViewModel?.getTitle())
-                .isEqualTo("FakeQSTileUserActionInteractor")
-            assertThat(underTest.detailsViewModel).isNotNull()
-            assertThat(underTest.detailsViewModel?.getTitle())
-                .isEqualTo("FakeQSTileUserActionInteractor")
-
-            tileUserActionInteractor.detailsViewModel = null
-            assertThat(tileUserActionInteractor.detailsViewModel).isNull()
-            assertThat(underTest.detailsViewModel).isNull()
-        }
-
     private fun createViewModel(
         scope: TestScope,
         config: QSTileConfig = tileConfig,
@@ -209,6 +195,7 @@
             testCoroutineDispatcher,
             testCoroutineDispatcher,
             scope.backgroundScope,
+            FakeTileDetailsViewModel("QSTileViewModelTest"),
         )
 
     private companion object {
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/viewmodel/QSTileViewModelUserInputTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/viewmodel/QSTileViewModelUserInputTest.kt
index ece21e1..166e950 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/viewmodel/QSTileViewModelUserInputTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/viewmodel/QSTileViewModelUserInputTest.kt
@@ -22,6 +22,7 @@
 import com.android.systemui.classifier.FalsingManagerFake
 import com.android.systemui.common.shared.model.ContentDescription
 import com.android.systemui.common.shared.model.Icon
+import com.android.systemui.qs.FakeTileDetailsViewModel
 import com.android.systemui.qs.tiles.base.analytics.QSTileAnalytics
 import com.android.systemui.qs.tiles.base.interactor.DataUpdateTrigger
 import com.android.systemui.qs.tiles.base.interactor.FakeDisabledByPolicyInteractor
@@ -253,5 +254,6 @@
             testCoroutineDispatcher,
             testCoroutineDispatcher,
             scope.backgroundScope,
+            FakeTileDetailsViewModel("QSTileViewModelUserInputTest"),
         )
 }
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/ui/viewmodel/QuickSettingsSceneContentViewModelTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/ui/viewmodel/QuickSettingsSceneContentViewModelTest.kt
index b36c111..1d891da 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/ui/viewmodel/QuickSettingsSceneContentViewModelTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/ui/viewmodel/QuickSettingsSceneContentViewModelTest.kt
@@ -23,8 +23,6 @@
 import com.android.systemui.SysuiTestCase
 import com.android.systemui.coroutines.collectLastValue
 import com.android.systemui.flags.EnableSceneContainer
-import com.android.systemui.flags.Flags
-import com.android.systemui.flags.fakeFeatureFlagsClassic
 import com.android.systemui.kosmos.testScope
 import com.android.systemui.lifecycle.activateIn
 import com.android.systemui.media.controls.data.repository.mediaFilterRepository
@@ -79,8 +77,6 @@
 
     @Before
     fun setUp() {
-        kosmos.fakeFeatureFlagsClassic.set(Flags.NEW_NETWORK_SLICE_UI, false)
-
         sceneContainerStartable.start()
         underTest =
             QuickSettingsSceneContentViewModel(
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/ui/viewmodel/QuickSettingsShadeOverlayContentViewModelTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/ui/viewmodel/QuickSettingsShadeOverlayContentViewModelTest.kt
index c69ebab..baf0aeb 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/ui/viewmodel/QuickSettingsShadeOverlayContentViewModelTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/ui/viewmodel/QuickSettingsShadeOverlayContentViewModelTest.kt
@@ -61,8 +61,7 @@
             usingMediaInComposeFragment = false // This is not for the compose fragment
         }
     private val testScope = kosmos.testScope
-    private val sceneInteractor = kosmos.sceneInteractor
-
+    private val sceneInteractor by lazy { kosmos.sceneInteractor }
     private val underTest by lazy { kosmos.quickSettingsShadeOverlayContentViewModel }
 
     @Before
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/ui/viewmodel/QuickSettingsUserActionsViewModelTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/ui/viewmodel/QuickSettingsUserActionsViewModelTest.kt
index d5fbe49..0254dfb 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/ui/viewmodel/QuickSettingsUserActionsViewModelTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/qs/ui/viewmodel/QuickSettingsUserActionsViewModelTest.kt
@@ -29,8 +29,6 @@
 import com.android.systemui.coroutines.collectLastValue
 import com.android.systemui.deviceentry.data.repository.fakeDeviceEntryRepository
 import com.android.systemui.flags.EnableSceneContainer
-import com.android.systemui.flags.Flags
-import com.android.systemui.flags.fakeFeatureFlagsClassic
 import com.android.systemui.keyguard.data.repository.fakeDeviceEntryFingerprintAuthRepository
 import com.android.systemui.keyguard.domain.interactor.keyguardEnabledInteractor
 import com.android.systemui.keyguard.shared.model.SuccessFingerprintAuthenticationStatus
@@ -68,8 +66,6 @@
 
     @Before
     fun setUp() {
-        kosmos.fakeFeatureFlagsClassic.set(Flags.NEW_NETWORK_SLICE_UI, false)
-
         sceneContainerStartable.start()
         underTest =
             QuickSettingsUserActionsViewModel(
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/scene/SceneFrameworkIntegrationTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/scene/SceneFrameworkIntegrationTest.kt
index eb630b4..abb41b5 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/scene/SceneFrameworkIntegrationTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/scene/SceneFrameworkIntegrationTest.kt
@@ -39,8 +39,6 @@
 import com.android.systemui.deviceentry.data.repository.fakeDeviceEntryRepository
 import com.android.systemui.deviceentry.domain.interactor.deviceEntryInteractor
 import com.android.systemui.flags.EnableSceneContainer
-import com.android.systemui.flags.Flags
-import com.android.systemui.flags.fakeFeatureFlagsClassic
 import com.android.systemui.keyguard.KeyguardViewMediator
 import com.android.systemui.keyguard.ui.viewmodel.lockscreenUserActionsViewModel
 import com.android.systemui.kosmos.Kosmos
@@ -112,8 +110,6 @@
             whenever(mockTelecomManager.isInCall).thenReturn(false)
             whenever(emergencyAffordanceManager.needsEmergencyAffordance()).thenReturn(true)
 
-            fakeFeatureFlagsClassic.apply { set(Flags.NEW_NETWORK_SLICE_UI, false) }
-
             fakeMobileConnectionsRepository.isAnySimSecure.value = false
 
             fakeTelephonyRepository.apply {
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/scene/domain/interactor/SceneInteractorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/scene/domain/interactor/SceneInteractorTest.kt
index 559e363..d3f5923 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/scene/domain/interactor/SceneInteractorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/scene/domain/interactor/SceneInteractorTest.kt
@@ -73,9 +73,8 @@
 
     private val kosmos = testKosmos()
     private val testScope = kosmos.testScope
-    private val fakeSceneDataSource = kosmos.fakeSceneDataSource
-
-    private val underTest = kosmos.sceneInteractor
+    private val fakeSceneDataSource by lazy { kosmos.fakeSceneDataSource }
+    private val underTest by lazy { kosmos.sceneInteractor }
 
     @Before
     fun setUp() {
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/screenshot/DefaultScreenshotActionsProviderTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/screenshot/DefaultScreenshotActionsProviderTest.kt
index cd30edd..0448ad5 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/screenshot/DefaultScreenshotActionsProviderTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/screenshot/DefaultScreenshotActionsProviderTest.kt
@@ -46,6 +46,7 @@
     private val actionExecutor = mock<ActionExecutor>()
     private val uiEventLogger = mock<UiEventLogger>()
     private val actionsCallback = mock<ScreenshotActionsController.ActionsCallback>()
+    private val actionIntentCreator = ActionIntentCreator(context, context.packageManager)
 
     private val request = ScreenshotData.forTesting(userHandle = UserHandle.OWNER)
     private val validResult = ScreenshotSavedResult(Uri.EMPTY, Process.myUserHandle(), 0)
@@ -196,6 +197,7 @@
         return DefaultScreenshotActionsProvider(
             context,
             uiEventLogger,
+            actionIntentCreator,
             UUID.randomUUID(),
             request,
             actionExecutor,
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/settings/brightness/domain/interactor/BrightnessMirrorShowingInteractorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/settings/brightness/domain/interactor/BrightnessMirrorShowingInteractorTest.kt
index 31d6df2..7b7d76b 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/settings/brightness/domain/interactor/BrightnessMirrorShowingInteractorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/settings/brightness/domain/interactor/BrightnessMirrorShowingInteractorTest.kt
@@ -21,7 +21,6 @@
 import com.android.systemui.SysuiTestCase
 import com.android.systemui.coroutines.collectLastValue
 import com.android.systemui.kosmos.testScope
-import com.android.systemui.settings.brightness.data.repository.brightnessMirrorShowingRepository
 import com.android.systemui.testKosmos
 import com.google.common.truth.Truth.assertThat
 import kotlinx.coroutines.test.runTest
@@ -34,8 +33,7 @@
 
     private val kosmos = testKosmos()
 
-    private val underTest =
-        BrightnessMirrorShowingInteractor(kosmos.brightnessMirrorShowingRepository)
+    private val underTest = kosmos.brightnessMirrorShowingInteractor
 
     @Test
     fun isShowing_setAndFlow() =
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/NotificationPanelViewControllerBaseTest.java b/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/NotificationPanelViewControllerBaseTest.java
index 904f5e8..d852a9d 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/NotificationPanelViewControllerBaseTest.java
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/NotificationPanelViewControllerBaseTest.java
@@ -104,7 +104,7 @@
 import com.android.systemui.qs.QSFragmentLegacy;
 import com.android.systemui.res.R;
 import com.android.systemui.screenrecord.RecordingController;
-import com.android.systemui.settings.brightness.domain.interactor.BrightnessMirrorShowingInteractor;
+import com.android.systemui.settings.brightness.data.repository.BrightnessMirrorShowingRepository;
 import com.android.systemui.shade.data.repository.FakeShadeRepository;
 import com.android.systemui.shade.data.repository.ShadeAnimationRepository;
 import com.android.systemui.shade.data.repository.ShadeRepository;
@@ -314,8 +314,8 @@
     protected ShadeRepository mShadeRepository;
     protected FakeMSDLPlayer mMSDLPlayer = mKosmos.getMsdlPlayer();
 
-    protected BrightnessMirrorShowingInteractor mBrightnessMirrorShowingInteractor =
-            mKosmos.getBrightnessMirrorShowingInteractor();
+    protected BrightnessMirrorShowingRepository mBrightnessMirrorShowingRepository =
+            mKosmos.getBrightnessMirrorShowingRepository();
 
     protected final FalsingManagerFake mFalsingManager = new FalsingManagerFake();
     protected final Optional<SysUIUnfoldComponent> mSysUIUnfoldComponent = Optional.empty();
@@ -588,7 +588,7 @@
                 mPowerInteractor,
                 mKeyguardClockPositionAlgorithm,
                 mMSDLPlayer,
-                mBrightnessMirrorShowingInteractor,
+                mBrightnessMirrorShowingRepository,
                 new BlurConfig(0f, 0f));
         mNotificationPanelViewController.initDependencies(
                 mCentralSurfaces,
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/NotificationPanelViewControllerTest.java b/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/NotificationPanelViewControllerTest.java
index ba989db..354c23d 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/NotificationPanelViewControllerTest.java
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/NotificationPanelViewControllerTest.java
@@ -27,6 +27,7 @@
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
+import android.os.Build;
 import android.platform.test.annotations.EnableFlags;
 import android.testing.TestableLooper;
 import android.view.HapticFeedbackConstants;
@@ -41,6 +42,7 @@
 
 import com.google.android.msdl.data.model.MSDLToken;
 
+import org.junit.Assume;
 import org.junit.Before;
 import org.junit.Ignore;
 import org.junit.Test;
@@ -59,6 +61,8 @@
     @Test
     @EnableFlags(com.android.systemui.Flags.FLAG_SHADE_EXPANDS_ON_STATUS_BAR_LONG_PRESS)
     public void onStatusBarLongPress_shadeExpands() {
+        //TODO(b/394977231) delete this temporary workaround used only by tests
+        Assume.assumeFalse(Build.HARDWARE.equals("cutf_cvm"));
         long downTime = 42L;
         // Start touch session with down event
         onTouchEvent(MotionEvent.obtain(downTime, downTime, MotionEvent.ACTION_DOWN, 1f, 1f, 0));
@@ -85,6 +89,8 @@
     @Test
     @EnableFlags(com.android.systemui.Flags.FLAG_SHADE_EXPANDS_ON_STATUS_BAR_LONG_PRESS)
     public void onStatusBarLongPress_qsExpands() {
+        //TODO(b/394977231) delete this temporary workaround used only by tests
+        Assume.assumeFalse(Build.HARDWARE.equals("cutf_cvm"));
         long downTime = 42L;
         // Start with shade already expanded
         mNotificationPanelViewController.setExpandedFraction(1F);
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/NotificationShadeWindowViewTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/NotificationShadeWindowViewTest.kt
index a8b4836..59e3a2e 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/NotificationShadeWindowViewTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/NotificationShadeWindowViewTest.kt
@@ -43,7 +43,7 @@
 import com.android.systemui.keyguard.shared.model.KeyguardState.LOCKSCREEN
 import com.android.systemui.res.R
 import com.android.systemui.settings.brightness.data.repository.BrightnessMirrorShowingRepository
-import com.android.systemui.settings.brightness.domain.interactor.BrightnessMirrorShowingInteractor
+import com.android.systemui.settings.brightness.domain.interactor.BrightnessMirrorShowingInteractorPassThrough
 import com.android.systemui.shade.NotificationShadeWindowView.InteractionEventHandler
 import com.android.systemui.shade.data.repository.ShadeAnimationRepository
 import com.android.systemui.shade.data.repository.ShadeRepositoryImpl
@@ -143,7 +143,7 @@
 
     private val brightnessMirrorShowingRepository = BrightnessMirrorShowingRepository()
     private val brightnessMirrorShowingInteractor =
-        BrightnessMirrorShowingInteractor(brightnessMirrorShowingRepository)
+        BrightnessMirrorShowingInteractorPassThrough(brightnessMirrorShowingRepository)
 
     private lateinit var underTest: NotificationShadeWindowView
     private lateinit var controller: NotificationShadeWindowViewController
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/domain/interactor/ShadeInteractorSceneContainerImplTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/domain/interactor/ShadeInteractorSceneContainerImplTest.kt
index 4a011c0..ccc876c 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/domain/interactor/ShadeInteractorSceneContainerImplTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/domain/interactor/ShadeInteractorSceneContainerImplTest.kt
@@ -50,11 +50,10 @@
 
     private val kosmos = testKosmos()
     private val testScope = kosmos.testScope
-    private val configurationRepository = kosmos.fakeConfigurationRepository
-    private val keyguardRepository = kosmos.fakeKeyguardRepository
-    private val sceneInteractor = kosmos.sceneInteractor
+    private val configurationRepository by lazy { kosmos.fakeConfigurationRepository }
+    private val keyguardRepository by lazy { kosmos.fakeKeyguardRepository }
+    private val sceneInteractor by lazy { kosmos.sceneInteractor }
     private val shadeTestUtil by lazy { kosmos.shadeTestUtil }
-
     private val underTest by lazy { kosmos.shadeInteractorSceneContainerImpl }
 
     @Test
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/ui/viewmodel/ShadeHeaderViewModelTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/ui/viewmodel/ShadeHeaderViewModelTest.kt
index 37b4688..a832f48 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/ui/viewmodel/ShadeHeaderViewModelTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/shade/ui/viewmodel/ShadeHeaderViewModelTest.kt
@@ -15,7 +15,9 @@
 import com.android.systemui.flags.EnableSceneContainer
 import com.android.systemui.keyguard.data.repository.fakeDeviceEntryFingerprintAuthRepository
 import com.android.systemui.keyguard.shared.model.SuccessFingerprintAuthenticationStatus
+import com.android.systemui.kosmos.runCurrent
 import com.android.systemui.kosmos.testScope
+import com.android.systemui.kosmos.useUnconfinedTestDispatcher
 import com.android.systemui.lifecycle.activateIn
 import com.android.systemui.plugins.activityStarter
 import com.android.systemui.scene.domain.interactor.sceneInteractor
@@ -51,12 +53,11 @@
 @RunWith(AndroidJUnit4::class)
 @EnableSceneContainer
 class ShadeHeaderViewModelTest : SysuiTestCase() {
-    private val kosmos = testKosmos()
+    private val kosmos = testKosmos().useUnconfinedTestDispatcher()
     private val testScope = kosmos.testScope
-    private val mobileIconsInteractor = kosmos.fakeMobileIconsInteractor
-    private val sceneInteractor = kosmos.sceneInteractor
-    private val deviceEntryInteractor = kosmos.deviceEntryInteractor
-
+    private val mobileIconsInteractor by lazy { kosmos.fakeMobileIconsInteractor }
+    private val sceneInteractor by lazy { kosmos.sceneInteractor }
+    private val deviceEntryInteractor by lazy { kosmos.deviceEntryInteractor }
     private val underTest by lazy { kosmos.shadeHeaderViewModel }
 
     @Before
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/CommandQueueTest.java b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/CommandQueueTest.java
index 3d8da61..70df82d 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/CommandQueueTest.java
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/CommandQueueTest.java
@@ -22,6 +22,7 @@
 import static android.service.quickaccesswallet.Flags.FLAG_LAUNCH_WALLET_VIA_SYSUI_CALLBACKS;
 import static android.view.Display.DEFAULT_DISPLAY;
 import static android.view.WindowInsetsController.BEHAVIOR_DEFAULT;
+import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION;
 
 import static org.mockito.ArgumentMatchers.anyInt;
 import static org.mockito.ArgumentMatchers.eq;
@@ -556,9 +557,9 @@
     @Test
     public void testImmersiveModeChanged() {
         final int displayAreaId = 10;
-        mCommandQueue.immersiveModeChanged(displayAreaId, true);
+        mCommandQueue.immersiveModeChanged(displayAreaId, true, TYPE_APPLICATION);
         waitForIdleSync();
-        verify(mCallbacks).immersiveModeChanged(displayAreaId, true);
+        verify(mCallbacks).immersiveModeChanged(displayAreaId, true, TYPE_APPLICATION);
     }
 
     @Test
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/NotificationShadeDepthControllerTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/NotificationShadeDepthControllerTest.kt
index c10fd5e..326d8ff 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/NotificationShadeDepthControllerTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/NotificationShadeDepthControllerTest.kt
@@ -19,7 +19,6 @@
 import android.os.IBinder
 import android.platform.test.annotations.DisableFlags
 import android.platform.test.annotations.EnableFlags
-import android.platform.test.annotations.RequiresFlagsDisabled
 import android.testing.TestableLooper.RunWithLooper
 import android.view.Choreographer
 import android.view.View
@@ -360,7 +359,7 @@
     }
 
     @Test
-    @RequiresFlagsDisabled(Flags.FLAG_NOTIFICATION_SHADE_BLUR)
+    @DisableFlags(Flags.FLAG_NOTIFICATION_SHADE_BLUR)
     fun updateBlurCallback_setsOpaque_whenScrim() {
         scrimVisibilityCaptor.value.accept(ScrimController.OPAQUE)
         notificationShadeDepthController.updateBlurCallback.doFrame(0)
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/core/MultiDisplayStatusBarOrchestratorStoreTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/core/MultiDisplayStatusBarOrchestratorStoreTest.kt
new file mode 100644
index 0000000..06650f2
--- /dev/null
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/core/MultiDisplayStatusBarOrchestratorStoreTest.kt
@@ -0,0 +1,61 @@
+/*
+ * Copyright (C) 2025 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.systemui.statusbar.core
+
+import android.platform.test.annotations.EnableFlags
+import android.view.Display.DEFAULT_DISPLAY
+import androidx.test.ext.junit.runners.AndroidJUnit4
+import androidx.test.filters.SmallTest
+import com.android.systemui.SysuiTestCase
+import com.android.systemui.display.data.repository.displayRepository
+import com.android.systemui.kosmos.testScope
+import com.android.systemui.kosmos.useUnconfinedTestDispatcher
+import com.android.systemui.testKosmos
+import kotlinx.coroutines.runBlocking
+import kotlinx.coroutines.test.runTest
+import org.junit.Before
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.mockito.kotlin.verify
+
+@SmallTest
+@RunWith(AndroidJUnit4::class)
+@EnableFlags(StatusBarConnectedDisplays.FLAG_NAME)
+class MultiDisplayStatusBarOrchestratorStoreTest : SysuiTestCase() {
+
+    private val kosmos = testKosmos().useUnconfinedTestDispatcher()
+    private val testScope = kosmos.testScope
+    private val fakeDisplayRepository = kosmos.displayRepository
+    private val underTest by lazy { kosmos.multiDisplayStatusBarOrchestratorStore }
+
+    @Before
+    fun start() {
+        underTest.start()
+    }
+
+    @Before fun addDisplays() = runBlocking { fakeDisplayRepository.addDisplay(DEFAULT_DISPLAY) }
+
+    @Test
+    fun displayRemoved_stopsInstance() =
+        testScope.runTest {
+            val instance = underTest.forDisplay(DEFAULT_DISPLAY)!!
+
+            fakeDisplayRepository.removeDisplay(DEFAULT_DISPLAY)
+
+            verify(instance).stop()
+        }
+}
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/core/StatusBarOrchestratorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/core/StatusBarOrchestratorTest.kt
index 04c5bd9..f5d9f43 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/core/StatusBarOrchestratorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/core/StatusBarOrchestratorTest.kt
@@ -22,6 +22,7 @@
 import androidx.test.filters.SmallTest
 import com.android.systemui.SysuiTestCase
 import com.android.systemui.bouncer.data.repository.fakeKeyguardBouncerRepository
+import com.android.systemui.dump.dumpManager
 import com.android.systemui.kosmos.testScope
 import com.android.systemui.kosmos.useUnconfinedTestDispatcher
 import com.android.systemui.plugins.DarkIconDispatcher
@@ -70,6 +71,7 @@
     private val mockBubbles = kosmos.bubbles
     private val fakeStatusBarWindowController = kosmos.fakeStatusBarWindowController
     private val fakeStatusBarInitializer = kosmos.fakeStatusBarInitializer
+    private val dumpManager = kosmos.dumpManager
 
     private val orchestrator = kosmos.statusBarOrchestrator
 
@@ -291,6 +293,15 @@
                 .transitionTo(TRANSPARENT.toTransitionModeInt(), /* animate= */ true)
         }
 
+    @Test
+    fun stop_unregisterDumpable() {
+        orchestrator.start()
+
+        orchestrator.stop()
+
+        verify(dumpManager).unregisterDumpable("StatusBarOrchestrator")
+    }
+
     private fun putDeviceToSleep() {
         fakePowerRepository.updateWakefulness(
             rawState = WakefulnessState.ASLEEP,
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/data/repository/PrivacyDotWindowControllerStoreImplTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/data/repository/PrivacyDotWindowControllerStoreImplTest.kt
index ae734b3..a5b7fc2 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/data/repository/PrivacyDotWindowControllerStoreImplTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/data/repository/PrivacyDotWindowControllerStoreImplTest.kt
@@ -22,24 +22,29 @@
 import androidx.test.filters.SmallTest
 import com.android.systemui.SysuiTestCase
 import com.android.systemui.display.data.repository.displayRepository
+import com.android.systemui.kosmos.testScope
 import com.android.systemui.statusbar.core.StatusBarConnectedDisplays
 import com.android.systemui.testKosmos
 import kotlinx.coroutines.runBlocking
+import kotlinx.coroutines.test.runTest
 import org.junit.Before
 import org.junit.Test
 import org.junit.runner.RunWith
+import org.mockito.kotlin.verify
 
 @SmallTest
 @RunWith(AndroidJUnit4::class)
 @EnableFlags(StatusBarConnectedDisplays.FLAG_NAME)
 class PrivacyDotWindowControllerStoreImplTest : SysuiTestCase() {
     private val kosmos = testKosmos()
+    private val testScope = kosmos.testScope
     private val underTest by lazy { kosmos.privacyDotWindowControllerStoreImpl }
 
     @Before
     fun installDisplays() = runBlocking {
+        underTest.start()
         kosmos.displayRepository.addDisplay(displayId = Display.DEFAULT_DISPLAY)
-        kosmos.displayRepository.addDisplay(displayId = Display.DEFAULT_DISPLAY + 1)
+        kosmos.displayRepository.addDisplay(displayId = DISPLAY_2)
     }
 
     @Test(expected = IllegalArgumentException::class)
@@ -49,6 +54,20 @@
 
     @Test
     fun forDisplay_nonDefaultDisplay_doesNotThrow() {
-        underTest.forDisplay(displayId = Display.DEFAULT_DISPLAY + 1)
+        underTest.forDisplay(displayId = DISPLAY_2)
+    }
+
+    @Test
+    fun displayRemoved_stopsInstance() =
+        testScope.runTest {
+            val instance = underTest.forDisplay(DISPLAY_2)!!
+
+            kosmos.displayRepository.removeDisplay(DISPLAY_2)
+
+            verify(instance).stop()
+        }
+
+    private companion object {
+        const val DISPLAY_2 = Display.DEFAULT_DISPLAY + 1
     }
 }
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/events/PrivacyDotWindowControllerTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/events/PrivacyDotWindowControllerTest.kt
index 6bcd735..60782b8 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/events/PrivacyDotWindowControllerTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/events/PrivacyDotWindowControllerTest.kt
@@ -173,6 +173,17 @@
         expect.that(gravityForView(viewController.bottomRight!!)).isEqualTo(BOTTOM or LEFT)
     }
 
+    @Test
+    fun onStop_removeAllWindows() {
+        underTest.start()
+        executor.runAllReady()
+
+        underTest.stop()
+        executor.runAllReady()
+
+        assertThat(windowManager.addedViews).isEmpty()
+    }
+
     private fun paramsForView(view: View): WindowManager.LayoutParams {
         return windowManager.addedViews.entries
             .first { it.key == view || it.key.findViewById<View>(view.id) != null }
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/lockscreen/LockscreenSmartspaceControllerTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/lockscreen/LockscreenSmartspaceControllerTest.kt
index 611ae3d..d546206 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/lockscreen/LockscreenSmartspaceControllerTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/lockscreen/LockscreenSmartspaceControllerTest.kt
@@ -846,7 +846,7 @@
     }
 
     private fun connectSession() {
-        val dateView = controller.buildAndConnectDateView(fakeParent)
+        val dateView = controller.buildAndConnectDateView(fakeParent, false)
         dateSmartspaceView = dateView as SmartspaceView
         fakeParent.addView(dateView)
         controller.stateChangeListener.onViewAttachedToWindow(dateView)
@@ -860,7 +860,7 @@
         verify(dateSmartspaceView).setPrimaryTextColor(anyInt())
         verify(dateSmartspaceView).setDozeAmount(0.5f)
 
-        val weatherView = controller.buildAndConnectWeatherView(fakeParent)
+        val weatherView = controller.buildAndConnectWeatherView(fakeParent, false)
         weatherSmartspaceView = weatherView as SmartspaceView
         fakeParent.addView(weatherView)
         controller.stateChangeListener.onViewAttachedToWindow(weatherView)
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/ConversationNotificationProcessorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/ConversationNotificationProcessorTest.kt
index 67d0ade..0caddf4 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/ConversationNotificationProcessorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/ConversationNotificationProcessorTest.kt
@@ -111,13 +111,13 @@
             .isNotNull()
 
         val processedSummary = nb.build().extras.getCharSequence(EXTRA_SUMMARIZED_CONTENT)
-        assertThat(processedSummary.toString()).isEqualTo("x$summarization")
+        assertThat(processedSummary.toString()).isEqualTo("x $summarization")
 
         val checkSpans = SpannableStringBuilder(processedSummary)
         assertThat(
                 checkSpans.getSpans(
                     /* queryStart = */ 0,
-                    /* queryEnd = */ 1,
+                    /* queryEnd = */ 2,
                     /* kind = */ ImageSpan::class.java,
                 )
             )
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/NotificationTransitionAnimatorControllerTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/NotificationTransitionAnimatorControllerTest.kt
index 510167d..d3cd240 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/NotificationTransitionAnimatorControllerTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/NotificationTransitionAnimatorControllerTest.kt
@@ -84,7 +84,7 @@
         controller.onIntentStarted(willAnimate = false)
 
         assertTrue(HeadsUpUtil.isClickedHeadsUpNotification(notification))
-        assertFalse(notification.entry.isExpandAnimationRunning)
+        assertFalse(notification.isLaunchAnimationRunning)
         val isExpandAnimationRunning by
             testScope.collectLastValue(
                 notificationLaunchAnimationInteractor.isLaunchAnimationRunning
@@ -107,7 +107,7 @@
         controller.onTransitionAnimationCancelled()
 
         assertTrue(HeadsUpUtil.isClickedHeadsUpNotification(notification))
-        assertFalse(notification.entry.isExpandAnimationRunning)
+        assertFalse(notification.isLaunchAnimationRunning)
         val isExpandAnimationRunning by
             testScope.collectLastValue(
                 notificationLaunchAnimationInteractor.isLaunchAnimationRunning
@@ -130,7 +130,7 @@
         controller.onTransitionAnimationEnd(isExpandingFullyAbove = true)
 
         assertFalse(HeadsUpUtil.isClickedHeadsUpNotification(notification))
-        assertFalse(notification.entry.isExpandAnimationRunning)
+        assertFalse(notification.isLaunchAnimationRunning)
         val isExpandAnimationRunning by
             testScope.collectLastValue(
                 notificationLaunchAnimationInteractor.isLaunchAnimationRunning
@@ -199,7 +199,7 @@
     fun testNotificationIsExpandingDuringAnimation() {
         controller.onIntentStarted(willAnimate = true)
 
-        assertTrue(notification.entry.isExpandAnimationRunning)
+        assertTrue(notification.isLaunchAnimationRunning)
         val isExpandAnimationRunning by
             testScope.collectLastValue(
                 notificationLaunchAnimationInteractor.isLaunchAnimationRunning
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/BundleEntryTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/BundleEntryTest.kt
index 83e26c4..83fd5dc 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/BundleEntryTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/BundleEntryTest.kt
@@ -65,8 +65,8 @@
 
     @Test
     @EnableFlags(NotificationBundleUi.FLAG_NAME)
-    fun getGroupRoot_adapter() {
-        assertThat(underTest.entryAdapter.groupRoot).isEqualTo(underTest.entryAdapter)
+    fun isGroupRoot_adapter() {
+        assertThat(underTest.entryAdapter.isGroupRoot).isTrue()
     }
 
     @Test
@@ -105,4 +105,52 @@
     fun getWhen_adapter() {
         assertThat(underTest.entryAdapter.`when`).isEqualTo(0)
     }
+
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    fun isColorized() {
+        assertThat(underTest.entryAdapter.isColorized).isFalse()
+    }
+
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    fun getSbn() {
+        assertThat(underTest.entryAdapter.sbn).isNull()
+    }
+
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    fun canDragAndDrop() {
+        assertThat(underTest.entryAdapter.canDragAndDrop()).isFalse()
+    }
+
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    fun isBubble() {
+        assertThat(underTest.entryAdapter.isBubbleCapable).isFalse()
+    }
+
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    fun getStyle() {
+        assertThat(underTest.entryAdapter.style).isNull()
+    }
+
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    fun getSectionBucket() {
+        assertThat(underTest.entryAdapter.sectionBucket).isEqualTo(underTest.bucket)
+    }
+
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    fun isAmbient() {
+        assertThat(underTest.entryAdapter.isAmbient).isFalse()
+    }
+
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    fun canShowFullScreen() {
+        assertThat(underTest.entryAdapter.isFullScreenCapable()).isFalse()
+    }
 }
\ No newline at end of file
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/NotifCollectionTest.java b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/NotifCollectionTest.java
index 0df1073..4c18025 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/NotifCollectionTest.java
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/NotifCollectionTest.java
@@ -41,7 +41,6 @@
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.ArgumentMatchers.anyBoolean;
 import static org.mockito.ArgumentMatchers.anyInt;
 import static org.mockito.ArgumentMatchers.eq;
 import static org.mockito.Mockito.clearInvocations;
@@ -64,7 +63,6 @@
 import android.app.NotificationManager;
 import android.os.Handler;
 import android.os.RemoteException;
-import android.platform.test.annotations.EnableFlags;
 import android.service.notification.NotificationListenerService.Ranking;
 import android.service.notification.NotificationListenerService.RankingMap;
 import android.service.notification.StatusBarNotification;
@@ -78,7 +76,6 @@
 
 import com.android.internal.statusbar.IStatusBarService;
 import com.android.internal.statusbar.NotificationVisibility;
-import com.android.systemui.Flags;
 import com.android.systemui.SysuiTestCase;
 import com.android.systemui.dump.DumpManager;
 import com.android.systemui.dump.LogBufferEulogizer;
@@ -96,6 +93,7 @@
 import com.android.systemui.statusbar.notification.collection.notifcollection.NotifCollectionLogger;
 import com.android.systemui.statusbar.notification.collection.notifcollection.NotifDismissInterceptor;
 import com.android.systemui.statusbar.notification.collection.notifcollection.NotifLifetimeExtender;
+import com.android.systemui.statusbar.notification.collection.notifcollection.UpdateSource;
 import com.android.systemui.statusbar.notification.collection.provider.NotificationDismissibilityProvider;
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
 import com.android.systemui.util.concurrency.FakeExecutor;
@@ -1587,7 +1585,7 @@
 
         // THEN entry updated gets called, added does not, and ranking is called again
         verify(mCollectionListener).onEntryUpdated(eq(entry));
-        verify(mCollectionListener).onEntryUpdated(eq(entry), eq(true));
+        verify(mCollectionListener).onEntryUpdated(eq(entry), eq(UpdateSource.App));
         verify(mCollectionListener).onEntryAdded((entry));
         verify(mCollectionListener, times(2)).onRankingApplied();
     }
@@ -1610,7 +1608,7 @@
         verify(mCollectionListener).onEntryAdded(eq(entry));
         verify(mCollectionListener).onRankingApplied();
         verify(mCollectionListener).onEntryUpdated(eq(entry));
-        verify(mCollectionListener).onEntryUpdated(eq(entry), eq(false));
+        verify(mCollectionListener).onEntryUpdated(eq(entry), eq(UpdateSource.SystemUi));
     }
 
     @Test
@@ -1626,7 +1624,7 @@
         verify(mCollectionListener, never()).onRankingUpdate(any());
         verify(mCollectionListener, never()).onRankingApplied();
         verify(mCollectionListener, never()).onEntryUpdated(any());
-        verify(mCollectionListener, never()).onEntryUpdated(any(), anyBoolean());
+        verify(mCollectionListener, never()).onEntryUpdated(any(), any());
     }
 
     @Test
@@ -1786,6 +1784,7 @@
 
     private static NotificationEntryBuilder buildNotif(String pkg, int id, String tag) {
         return new NotificationEntryBuilder()
+                .setPostTime(System.currentTimeMillis())
                 .setPkg(pkg)
                 .setId(id)
                 .setTag(tag);
@@ -1838,7 +1837,7 @@
         }
 
         @Override
-        public void onEntryUpdated(NotificationEntry entry, boolean fromSystem) {
+        public void onEntryUpdated(NotificationEntry entry, UpdateSource source) {
             onEntryUpdated(entry);
         }
 
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/NotificationEntryTest.java b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/NotificationEntryTest.java
index 1f5c672..4810813 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/NotificationEntryTest.java
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/NotificationEntryTest.java
@@ -21,12 +21,15 @@
 import static android.app.Notification.CATEGORY_EVENT;
 import static android.app.Notification.CATEGORY_MESSAGE;
 import static android.app.Notification.CATEGORY_REMINDER;
+import static android.app.Notification.FLAG_BUBBLE;
 import static android.app.Notification.FLAG_FSI_REQUESTED_BUT_DENIED;
 import static android.app.Notification.FLAG_PROMOTED_ONGOING;
+import static android.app.NotificationManager.IMPORTANCE_MIN;
 import static android.app.NotificationManager.Policy.SUPPRESSED_EFFECT_AMBIENT;
 
 import static com.android.systemui.statusbar.NotificationEntryHelper.modifyRanking;
 import static com.android.systemui.statusbar.NotificationEntryHelper.modifySbn;
+import static com.android.systemui.statusbar.notification.stack.NotificationPriorityBucketKt.BUCKET_ALERTING;
 
 import static com.google.common.truth.Truth.assertThat;
 
@@ -35,6 +38,7 @@
 import static org.junit.Assert.assertTrue;
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
 
 import android.app.ActivityManager;
 import android.app.Notification;
@@ -542,7 +546,7 @@
 
     @Test
     @EnableFlags(NotificationBundleUi.FLAG_NAME)
-    public void getGroupRoot_adapter_groupSummary() {
+    public void isGroupRoot_adapter_groupSummary() {
         ExpandableNotificationRow row = mock(ExpandableNotificationRow.class);
         Notification notification = new Notification.Builder(mContext, "")
                 .setSmallIcon(R.drawable.ic_person)
@@ -562,12 +566,12 @@
                 .build();
         entry.setRow(row);
 
-        assertThat(entry.getEntryAdapter().getGroupRoot()).isNull();
+        assertThat(entry.getEntryAdapter().isGroupRoot()).isFalse();
     }
 
     @Test
     @EnableFlags(NotificationBundleUi.FLAG_NAME)
-    public void getGroupRoot_adapter_groupChild() {
+    public void isGroupRoot_adapter_groupChild() {
         Notification notification = new Notification.Builder(mContext, "")
                 .setSmallIcon(R.drawable.ic_person)
                 .setGroupSummary(true)
@@ -591,7 +595,7 @@
                 .setParent(groupEntry.build())
                 .build();
 
-        assertThat(entry.getEntryAdapter().getGroupRoot()).isEqualTo(parent.getEntryAdapter());
+        assertThat(entry.getEntryAdapter().isGroupRoot()).isFalse();
     }
 
     @Test
@@ -664,6 +668,126 @@
         assertThat(entry.getEntryAdapter().getIcons()).isEqualTo(entry.getIcons());
     }
 
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    public void isColorized() {
+        Notification notification = new Notification.Builder(mContext, "")
+                .setSmallIcon(R.drawable.ic_person)
+                .setColorized(true)
+                .build();
+
+        NotificationEntry entry = new NotificationEntryBuilder()
+                .setNotification(notification)
+                .build();
+        assertThat(entry.getEntryAdapter().isColorized()).isEqualTo(
+                entry.getSbn().getNotification().isColorized());
+    }
+
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    public void getSbn() {
+        Notification notification = new Notification.Builder(mContext, "")
+                .setSmallIcon(R.drawable.ic_person)
+                .build();
+
+        NotificationEntry entry = new NotificationEntryBuilder()
+                .setNotification(notification)
+                .build();
+        assertThat(entry.getEntryAdapter().getSbn()).isEqualTo(
+                entry.getSbn());
+    }
+
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    public void canDragAndDrop() {
+        PendingIntent pi = mock(PendingIntent.class);
+        when(pi.isActivity()).thenReturn(true);
+        Notification notification = new Notification.Builder(mContext, "")
+                .setSmallIcon(R.drawable.ic_person)
+                .setContentIntent(pi)
+                .build();
+
+        NotificationEntry entry = new NotificationEntryBuilder()
+                .setNotification(notification)
+                .build();
+        assertThat(entry.getEntryAdapter().canDragAndDrop()).isTrue();
+    }
+
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    public void isBubble() {
+        Notification notification = new Notification.Builder(mContext, "")
+                .setSmallIcon(R.drawable.ic_person)
+                .setFlag(FLAG_BUBBLE, true)
+                .build();
+
+        NotificationEntry entry = new NotificationEntryBuilder()
+                .setNotification(notification)
+                .build();
+        assertThat(entry.getEntryAdapter().isBubbleCapable()).isEqualTo(entry.isBubble());
+    }
+
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    public void getStyle() {
+        Notification notification = new Notification.Builder(mContext, "")
+                .setSmallIcon(R.drawable.ic_person)
+                .setStyle(new Notification.BigTextStyle())
+                .build();
+
+        NotificationEntry entry = new NotificationEntryBuilder()
+                .setNotification(notification)
+                .build();
+        assertThat(entry.getEntryAdapter().getStyle()).isEqualTo(entry.getNotificationStyle());
+    }
+
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    public void getSectionBucket() {
+        Notification notification = new Notification.Builder(mContext, "")
+                .setSmallIcon(R.drawable.ic_person)
+                .setStyle(new Notification.BigTextStyle())
+                .build();
+
+        NotificationEntry entry = new NotificationEntryBuilder()
+                .setNotification(notification)
+                .build();
+        entry.setBucket(BUCKET_ALERTING);
+
+        assertThat(entry.getEntryAdapter().getSectionBucket()).isEqualTo(BUCKET_ALERTING);
+    }
+
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    public void isAmbient() {
+        Notification notification = new Notification.Builder(mContext, "")
+                .setSmallIcon(R.drawable.ic_person)
+                .build();
+
+        NotificationEntry entry = new NotificationEntryBuilder()
+                .setNotification(notification)
+                .setImportance(IMPORTANCE_MIN)
+                .build();
+
+        assertThat(entry.getEntryAdapter().isAmbient()).isTrue();
+    }
+
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    public void canShowFullScreen() {
+        Notification notification = new Notification.Builder(mContext, "")
+                .setSmallIcon(R.drawable.ic_person)
+                .setFullScreenIntent(mock(PendingIntent.class), true)
+                .build();
+
+        NotificationEntry entry = new NotificationEntryBuilder()
+                .setNotification(notification)
+                .setImportance(IMPORTANCE_MIN)
+                .build();
+
+        assertThat(entry.getEntryAdapter().isFullScreenCapable()).isTrue();
+    }
+
     private Notification.Action createContextualAction(String title) {
         return new Notification.Action.Builder(
                 Icon.createWithResource(getContext(), android.R.drawable.sym_def_app_icon),
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/DismissibilityCoordinatorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/DismissibilityCoordinatorTest.kt
index 543f0c7..e40d68e 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/DismissibilityCoordinatorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/DismissibilityCoordinatorTest.kt
@@ -66,7 +66,7 @@
 
         assertTrue(
             "Notifs without any flags should be dismissible",
-            dismissibilityProvider.isDismissable(entry)
+            dismissibilityProvider.isDismissable(entry.key)
         )
     }
 
@@ -96,7 +96,7 @@
 
         assertFalse(
             "Non-dismiss Notifs should NOT be dismissible",
-            dismissibilityProvider.isDismissable(entry)
+            dismissibilityProvider.isDismissable(entry.key)
         )
     }
 
@@ -113,7 +113,7 @@
 
         assertFalse(
             "Ongoing Notifs should NOT be dismissible when the device is locked",
-            dismissibilityProvider.isDismissable(entry)
+            dismissibilityProvider.isDismissable(entry.key)
         )
     }
 
@@ -130,7 +130,7 @@
 
         assertTrue(
             "Ongoing Notifs should be dismissible when the device is unlocked",
-            dismissibilityProvider.isDismissable(entry)
+            dismissibilityProvider.isDismissable(entry.key)
         )
     }
 
@@ -148,7 +148,7 @@
 
         assertFalse(
             "Non-dismiss Notifs should NOT be dismissible",
-            dismissibilityProvider.isDismissable(entry)
+            dismissibilityProvider.isDismissable(entry.key)
         )
     }
 
@@ -174,16 +174,16 @@
 
         assertTrue(
             "Notifs without any flags should be dismissible",
-            dismissibilityProvider.isDismissable(noFlagEntry)
+            dismissibilityProvider.isDismissable(noFlagEntry.key)
         )
         assertTrue(
             "Ongoing Notifs should be dismissible when the device is unlocked",
-            dismissibilityProvider.isDismissable(ongoingEntry)
+            dismissibilityProvider.isDismissable(ongoingEntry.key)
         )
 
         assertFalse(
             "Non-dismiss Notifs should NOT be dismissible",
-            dismissibilityProvider.isDismissable(nonDismissEntry)
+            dismissibilityProvider.isDismissable(nonDismissEntry.key)
         )
     }
 
@@ -199,10 +199,13 @@
 
         onBeforeRenderListListener.onBeforeRenderList(listOf(group))
 
-        assertFalse("Child should be non-dismissible", dismissibilityProvider.isDismissable(entry))
+        assertFalse(
+            "Child should be non-dismissible",
+            dismissibilityProvider.isDismissable(entry.key)
+        )
         assertFalse(
             "Summary should be non-dismissible",
-            dismissibilityProvider.isDismissable(summary)
+            dismissibilityProvider.isDismissable(summary.key)
         )
     }
 
@@ -219,10 +222,13 @@
 
         onBeforeRenderListListener.onBeforeRenderList(listOf(group))
 
-        assertFalse("Child should be non-dismissible", dismissibilityProvider.isDismissable(entry))
+        assertFalse(
+            "Child should be non-dismissible",
+            dismissibilityProvider.isDismissable(entry.key)
+        )
         assertFalse(
             "Summary should be non-dismissible",
-            dismissibilityProvider.isDismissable(summary)
+            dismissibilityProvider.isDismissable(summary.key)
         )
     }
 
@@ -239,8 +245,11 @@
 
         onBeforeRenderListListener.onBeforeRenderList(listOf(group))
 
-        assertTrue("Child should be dismissible", dismissibilityProvider.isDismissable(entry))
-        assertTrue("Summary should be dismissible", dismissibilityProvider.isDismissable(summary))
+        assertTrue("Child should be dismissible", dismissibilityProvider.isDismissable(entry.key))
+        assertTrue(
+            "Summary should be dismissible",
+            dismissibilityProvider.isDismissable(summary.key)
+        )
     }
 
     @Test
@@ -254,7 +263,10 @@
 
         onBeforeRenderListListener.onBeforeRenderList(listOf(group))
 
-        assertFalse("Child should be non-dismissible", dismissibilityProvider.isDismissable(entry))
+        assertFalse(
+            "Child should be non-dismissible",
+            dismissibilityProvider.isDismissable(entry.key)
+        )
     }
 
     @Test
@@ -269,7 +281,10 @@
 
         onBeforeRenderListListener.onBeforeRenderList(listOf(group))
 
-        assertFalse("Child should be non-dismissible", dismissibilityProvider.isDismissable(entry))
+        assertFalse(
+            "Child should be non-dismissible",
+            dismissibilityProvider.isDismissable(entry.key)
+        )
     }
 
     @Test
@@ -284,7 +299,7 @@
 
         onBeforeRenderListListener.onBeforeRenderList(listOf(group))
 
-        assertTrue("Child should be dismissible", dismissibilityProvider.isDismissable(entry))
+        assertTrue("Child should be dismissible", dismissibilityProvider.isDismissable(entry.key))
     }
 
     @Test
@@ -299,10 +314,10 @@
 
         onBeforeRenderListListener.onBeforeRenderList(listOf(group))
 
-        assertTrue("Child should be dismissible", dismissibilityProvider.isDismissable(entry))
+        assertTrue("Child should be dismissible", dismissibilityProvider.isDismissable(entry.key))
         assertFalse(
             "Summary should be non-dismissible",
-            dismissibilityProvider.isDismissable(summary)
+            dismissibilityProvider.isDismissable(summary.key)
         )
     }
 }
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/OriginalUnseenKeyguardCoordinatorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/OriginalUnseenKeyguardCoordinatorTest.kt
index 43cb957..4e13dcd 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/OriginalUnseenKeyguardCoordinatorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/OriginalUnseenKeyguardCoordinatorTest.kt
@@ -20,7 +20,6 @@
 import android.media.session.MediaSession
 import android.platform.test.flag.junit.FlagsParameterization
 import android.provider.Settings
-import android.service.notification.StatusBarNotification
 import androidx.test.filters.SmallTest
 import com.android.systemui.SysuiTestCase
 import com.android.systemui.dump.dumpManager
@@ -46,6 +45,7 @@
 import com.android.systemui.statusbar.notification.collection.listbuilder.pluggable.NotifFilter
 import com.android.systemui.statusbar.notification.collection.listbuilder.pluggable.Pluggable
 import com.android.systemui.statusbar.notification.collection.notifcollection.NotifCollectionListener
+import com.android.systemui.statusbar.notification.collection.notifcollection.UpdateSource
 import com.android.systemui.statusbar.notification.domain.interactor.SeenNotificationsInteractor
 import com.android.systemui.statusbar.notification.domain.interactor.lockScreenShowOnlyUnseenNotificationsSetting
 import com.android.systemui.statusbar.notification.domain.interactor.seenNotificationsInteractor
@@ -221,16 +221,19 @@
                         mock<ExpandableNotificationRow>().apply {
                             whenever(isMediaRow).thenReturn(true)
                         }
-                    sbn = SbnBuilder().setNotification(
-                        Notification.Builder(context, "channel").setStyle(
-                            MediaStyle().setMediaSession(
-                                MediaSession(
-                                    context,
-                                    "tag"
-                                ).sessionToken
+                    sbn =
+                        SbnBuilder()
+                            .setNotification(
+                                Notification.Builder(context, "channel")
+                                    .setStyle(
+                                        MediaStyle()
+                                            .setMediaSession(
+                                                MediaSession(context, "tag").sessionToken
+                                            )
+                                    )
+                                    .build()
                             )
-                        ).build()
-                    ).build()
+                            .build()
                 }
             collectionListener.onEntryAdded(fakeEntry)
 
@@ -600,7 +603,7 @@
             testScheduler.runCurrent()
 
             // WHEN: the notification is updated
-            collectionListener.onEntryUpdated(entry)
+            collectionListener.onEntryUpdated(entry, UpdateSource.App)
             testScheduler.runCurrent()
 
             // WHEN: four more seconds have passed
@@ -630,6 +633,132 @@
         }
     }
 
+    @Test
+    fun seenNotificationOnKeyguardMarkedAsSeenIfUpdatedBySystemServer() {
+        // GIVEN: Keyguard is showing, not dozing, unseen notification is present
+        keyguardRepository.setKeyguardShowing(true)
+        keyguardRepository.setIsDozing(false)
+        runKeyguardCoordinatorTest {
+            val fakeEntry = NotificationEntryBuilder().build()
+            collectionListener.onEntryAdded(fakeEntry)
+            keyguardTransitionRepository.sendTransitionSteps(
+                from = KeyguardState.AOD,
+                to = KeyguardState.LOCKSCREEN,
+                this.testScheduler,
+            )
+            testScheduler.runCurrent()
+
+            // WHEN: five seconds have passed
+            testScheduler.advanceTimeBy(5.seconds)
+            testScheduler.runCurrent()
+
+            // WHEN: Keyguard is no longer showing
+            keyguardRepository.setKeyguardShowing(false)
+            kosmos.setTransition(
+                sceneTransition = Idle(Scenes.Gone),
+                stateTransition = TransitionStep(KeyguardState.LOCKSCREEN, KeyguardState.GONE),
+            )
+
+            // WHEN: the notification is updated by the Server
+            collectionListener.onEntryUpdated(fakeEntry, UpdateSource.SystemServer)
+            testScheduler.runCurrent()
+
+            // WHEN: Keyguard is shown again
+            keyguardRepository.setKeyguardShowing(true)
+            kosmos.setTransition(
+                sceneTransition = Idle(Scenes.Lockscreen),
+                stateTransition = TransitionStep(KeyguardState.GONE, KeyguardState.AOD),
+            )
+
+            // THEN: The notification is still recognized as "seen" and is filtered out.
+            assertThat(unseenFilter.shouldFilterOut(fakeEntry, 0L)).isTrue()
+        }
+    }
+
+    @Test
+    fun seenNotificationOnKeyguardMarkedAsSeenIfUpdatedBySystemUi() {
+        // GIVEN: Keyguard is showing, not dozing, unseen notification is present
+        keyguardRepository.setKeyguardShowing(true)
+        keyguardRepository.setIsDozing(false)
+        runKeyguardCoordinatorTest {
+            val fakeEntry = NotificationEntryBuilder().build()
+            collectionListener.onEntryAdded(fakeEntry)
+            keyguardTransitionRepository.sendTransitionSteps(
+                from = KeyguardState.AOD,
+                to = KeyguardState.LOCKSCREEN,
+                this.testScheduler,
+            )
+            testScheduler.runCurrent()
+
+            // WHEN: five seconds have passed
+            testScheduler.advanceTimeBy(5.seconds)
+            testScheduler.runCurrent()
+
+            // WHEN: Keyguard is no longer showing
+            keyguardRepository.setKeyguardShowing(false)
+            kosmos.setTransition(
+                sceneTransition = Idle(Scenes.Gone),
+                stateTransition = TransitionStep(KeyguardState.LOCKSCREEN, KeyguardState.GONE),
+            )
+
+            // WHEN: the notification is updated by the SystemUi
+            collectionListener.onEntryUpdated(fakeEntry, UpdateSource.SystemUi)
+            testScheduler.runCurrent()
+
+            // WHEN: Keyguard is shown again
+            keyguardRepository.setKeyguardShowing(true)
+            kosmos.setTransition(
+                sceneTransition = Idle(Scenes.Lockscreen),
+                stateTransition = TransitionStep(KeyguardState.GONE, KeyguardState.AOD),
+            )
+
+            // THEN: The notification is still recognized as "seen" and is filtered out.
+            assertThat(unseenFilter.shouldFilterOut(fakeEntry, 0L)).isTrue()
+        }
+    }
+
+    @Test
+    fun seenNotificationOnKeyguardMarkedAsUnseenIfUpdatedByApp() {
+        // GIVEN: Keyguard is showing, not dozing, unseen notification is present
+        keyguardRepository.setKeyguardShowing(true)
+        keyguardRepository.setIsDozing(false)
+        runKeyguardCoordinatorTest {
+            val fakeEntry = NotificationEntryBuilder().build()
+            collectionListener.onEntryAdded(fakeEntry)
+            keyguardTransitionRepository.sendTransitionSteps(
+                from = KeyguardState.AOD,
+                to = KeyguardState.LOCKSCREEN,
+                this.testScheduler,
+            )
+            testScheduler.runCurrent()
+
+            // WHEN: five seconds have passed
+            testScheduler.advanceTimeBy(5.seconds)
+            testScheduler.runCurrent()
+
+            // WHEN: Keyguard is no longer showing
+            keyguardRepository.setKeyguardShowing(false)
+            kosmos.setTransition(
+                sceneTransition = Idle(Scenes.Gone),
+                stateTransition = TransitionStep(KeyguardState.LOCKSCREEN, KeyguardState.GONE),
+            )
+
+            // WHEN: the notification is updated by the App
+            collectionListener.onEntryUpdated(fakeEntry, UpdateSource.App)
+            testScheduler.runCurrent()
+
+            // WHEN: Keyguard is shown again
+            keyguardRepository.setKeyguardShowing(true)
+            kosmos.setTransition(
+                sceneTransition = Idle(Scenes.Lockscreen),
+                stateTransition = TransitionStep(KeyguardState.GONE, KeyguardState.AOD),
+            )
+
+            // THEN: The notification is now recognized as "unseen" and is not filtered out.
+            assertThat(unseenFilter.shouldFilterOut(fakeEntry, 0L)).isFalse()
+        }
+    }
+
     private fun runKeyguardCoordinatorTest(
         testBlock: suspend KeyguardCoordinatorTestScope.() -> Unit
     ) {
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/RemoteInputCoordinatorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/RemoteInputCoordinatorTest.kt
index a3f8452..85d7386 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/RemoteInputCoordinatorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/RemoteInputCoordinatorTest.kt
@@ -39,6 +39,7 @@
 import com.android.systemui.statusbar.notification.collection.notifcollection.NotifCollectionListener
 import com.android.systemui.statusbar.notification.collection.notifcollection.NotifLifetimeExtender
 import com.android.systemui.statusbar.notification.collection.notifcollection.NotifLifetimeExtender.OnEndLifetimeExtensionCallback
+import com.android.systemui.statusbar.notification.collection.notifcollection.UpdateSource
 import com.android.systemui.util.mockito.any
 import com.android.systemui.util.mockito.captureMany
 import com.android.systemui.util.mockito.withArgCaptor
@@ -191,7 +192,7 @@
         `when`(remoteInputManager.shouldKeepForRemoteInputHistory(entry)).thenReturn(true)
         `when`(remoteInputManager.shouldKeepForSmartReplyHistory(entry)).thenReturn(false)
 
-        collectionListeners.forEach { it.onEntryUpdated(entry, true) }
+        collectionListeners.forEach { it.onEntryUpdated(entry, UpdateSource.App) }
 
         verify(rebuilder, times(1)).rebuildForRemoteInputReply(entry)
     }
@@ -208,7 +209,7 @@
                 .build()
         `when`(remoteInputManager.shouldKeepForRemoteInputHistory(entry)).thenReturn(false)
         `when`(remoteInputManager.shouldKeepForSmartReplyHistory(entry)).thenReturn(true)
-        collectionListeners.forEach { it.onEntryUpdated(entry, true) }
+        collectionListeners.forEach { it.onEntryUpdated(entry, UpdateSource.App) }
 
         verify(rebuilder, times(1)).rebuildForCanceledSmartReplies(entry)
         verify(smartReplyController, times(1)).stopSending(entry)
@@ -226,7 +227,7 @@
                 .build()
         `when`(remoteInputManager.shouldKeepForRemoteInputHistory(entry)).thenReturn(false)
         `when`(remoteInputManager.shouldKeepForSmartReplyHistory(entry)).thenReturn(false)
-        collectionListeners.forEach { it.onEntryUpdated(entry, true) }
+        collectionListeners.forEach { it.onEntryUpdated(entry, UpdateSource.App) }
 
         verify(rebuilder, times(1)).rebuildForRemoteInputReply(entry)
     }
@@ -246,7 +247,7 @@
         `when`(remoteInputManager.shouldKeepForRemoteInputHistory(entry)).thenReturn(false)
         `when`(remoteInputManager.shouldKeepForSmartReplyHistory(entry)).thenReturn(false)
 
-        collectionListeners.forEach { it.onEntryUpdated(entry, true) }
+        collectionListeners.forEach { it.onEntryUpdated(entry, UpdateSource.App) }
 
         assertThat(entry.remoteInputs).isNull()
     }
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/VisualStabilityCoordinatorTest.java b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/VisualStabilityCoordinatorTest.java
deleted file mode 100644
index 2aa1efa..0000000
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/VisualStabilityCoordinatorTest.java
+++ /dev/null
@@ -1,1000 +0,0 @@
-/*
- * Copyright (C) 2020 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.systemui.statusbar.notification.collection.coordinator;
-
-import static android.platform.test.flag.junit.FlagsParameterization.allCombinationsOf;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import static junit.framework.Assert.assertFalse;
-
-
-import static org.junit.Assume.assumeFalse;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assume.assumeTrue;
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.ArgumentMatchers.eq;
-import static org.mockito.Mockito.doAnswer;
-import static org.mockito.Mockito.doReturn;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.never;
-import static org.mockito.Mockito.times;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-import static kotlinx.coroutines.flow.StateFlowKt.MutableStateFlow;
-
-import android.platform.test.annotations.EnableFlags;
-import android.platform.test.flag.junit.FlagsParameterization;
-import android.testing.TestableLooper;
-
-import androidx.test.filters.SmallTest;
-
-import com.android.compose.animation.scene.ObservableTransitionState;
-import com.android.systemui.Flags;
-import com.android.systemui.SysuiTestCase;
-import com.android.systemui.communal.shared.model.CommunalScenes;
-import com.android.systemui.dump.DumpManager;
-import com.android.systemui.flags.BrokenWithSceneContainer;
-import com.android.systemui.flags.DisableSceneContainer;
-import com.android.systemui.flags.EnableSceneContainer;
-import com.android.systemui.flags.SceneContainerFlagParameterizationKt;
-import com.android.systemui.keyguard.WakefulnessLifecycle;
-import com.android.systemui.keyguard.shared.model.KeyguardState;
-import com.android.systemui.keyguard.shared.model.TransitionState;
-import com.android.systemui.keyguard.shared.model.TransitionStep;
-import com.android.systemui.kosmos.KosmosJavaAdapter;
-import com.android.systemui.plugins.statusbar.StatusBarStateController;
-import com.android.systemui.scene.shared.flag.SceneContainerFlag;
-import com.android.systemui.shade.data.repository.FakeShadeRepository;
-import com.android.systemui.shade.data.repository.ShadeAnimationRepository;
-import com.android.systemui.shade.data.repository.ShadeRepository;
-import com.android.systemui.shade.domain.interactor.ShadeAnimationInteractor;
-import com.android.systemui.shade.domain.interactor.ShadeAnimationInteractorLegacyImpl;
-import com.android.systemui.statusbar.notification.VisibilityLocationProvider;
-import com.android.systemui.statusbar.notification.collection.GroupEntry;
-import com.android.systemui.statusbar.notification.collection.GroupEntryBuilder;
-import com.android.systemui.statusbar.notification.collection.NotifPipeline;
-import com.android.systemui.statusbar.notification.collection.NotificationEntry;
-import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
-import com.android.systemui.statusbar.notification.collection.listbuilder.pluggable.NotifStabilityManager;
-import com.android.systemui.statusbar.notification.collection.listbuilder.pluggable.Pluggable;
-import com.android.systemui.statusbar.notification.collection.provider.VisualStabilityProvider;
-import com.android.systemui.statusbar.notification.domain.interactor.SeenNotificationsInteractor;
-import com.android.systemui.statusbar.notification.headsup.HeadsUpManager;
-import com.android.systemui.statusbar.policy.KeyguardStateController;
-import com.android.systemui.util.concurrency.FakeExecutor;
-import com.android.systemui.util.kotlin.JavaAdapter;
-import com.android.systemui.util.time.FakeSystemClock;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.ArgumentCaptor;
-import org.mockito.Captor;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.mockito.verification.VerificationMode;
-
-import java.util.List;
-import java.util.Set;
-
-import kotlinx.coroutines.flow.MutableStateFlow;
-import kotlinx.coroutines.test.TestScope;
-
-import platform.test.runner.parameterized.ParameterizedAndroidJunit4;
-import platform.test.runner.parameterized.Parameters;
-
-@SmallTest
-@RunWith(ParameterizedAndroidJunit4.class)
-@TestableLooper.RunWithLooper
-public class VisualStabilityCoordinatorTest extends SysuiTestCase {
-
-    @Parameters(name = "{0}")
-    public static List<FlagsParameterization> getParams() {
-        return SceneContainerFlagParameterizationKt
-                .andSceneContainer(allCombinationsOf(Flags.FLAG_STABILIZE_HEADS_UP_GROUP_V2));
-    }
-
-    private VisualStabilityCoordinator mCoordinator;
-
-    @Mock private DumpManager mDumpManager;
-    @Mock private NotifPipeline mNotifPipeline;
-    @Mock private WakefulnessLifecycle mWakefulnessLifecycle;
-    @Mock private StatusBarStateController mStatusBarStateController;
-    @Mock private Pluggable.PluggableListener<NotifStabilityManager> mInvalidateListener;
-    @Mock private SeenNotificationsInteractor mSeenNotificationsInteractor;
-    @Mock private HeadsUpManager mHeadsUpManager;
-    @Mock private VisibilityLocationProvider mVisibilityLocationProvider;
-    @Mock private VisualStabilityProvider mVisualStabilityProvider;
-    @Mock private VisualStabilityCoordinatorLogger mLogger;
-    @Mock private KeyguardStateController mKeyguardStateController;
-
-    @Captor private ArgumentCaptor<WakefulnessLifecycle.Observer> mWakefulnessObserverCaptor;
-    @Captor private ArgumentCaptor<StatusBarStateController.StateListener> mSBStateListenerCaptor;
-    @Captor private ArgumentCaptor<NotifStabilityManager> mNotifStabilityManagerCaptor;
-
-    private final KosmosJavaAdapter mKosmos = new KosmosJavaAdapter(this);
-    private FakeSystemClock mFakeSystemClock = new FakeSystemClock();
-    private FakeExecutor mFakeBackgroundExecutor = new FakeExecutor(mFakeSystemClock);
-    private FakeExecutor mFakeMainExecutor = new FakeExecutor(mFakeSystemClock);
-    private final TestScope mTestScope = mKosmos.getTestScope();
-    private final JavaAdapter mJavaAdapter = new JavaAdapter(mTestScope.getBackgroundScope());
-
-    private ShadeAnimationInteractor mShadeAnimationInteractor;
-    private ShadeRepository mShadeRepository;
-    private WakefulnessLifecycle.Observer mWakefulnessObserver;
-    private StatusBarStateController.StateListener mStatusBarStateListener;
-    private NotifStabilityManager mNotifStabilityManager;
-    private NotificationEntry mEntry;
-    private GroupEntry mGroupEntry;
-
-    public VisualStabilityCoordinatorTest(FlagsParameterization flags) {
-        super();
-        mSetFlagsRule.setFlagsParameterization(flags);
-    }
-
-    @Before
-    public void setUp() {
-        MockitoAnnotations.initMocks(this);
-
-        mShadeRepository = new FakeShadeRepository();
-        mShadeAnimationInteractor = new ShadeAnimationInteractorLegacyImpl(
-                new ShadeAnimationRepository(), mShadeRepository);
-        mCoordinator = new VisualStabilityCoordinator(
-                mFakeBackgroundExecutor,
-                mFakeMainExecutor,
-                mDumpManager,
-                mHeadsUpManager,
-                mShadeAnimationInteractor,
-                mJavaAdapter,
-                mSeenNotificationsInteractor,
-                mStatusBarStateController,
-                mVisibilityLocationProvider,
-                mVisualStabilityProvider,
-                mWakefulnessLifecycle,
-                mKosmos.getCommunalSceneInteractor(),
-                mKosmos.getShadeInteractor(),
-                mKosmos.getKeyguardTransitionInteractor(),
-                mKeyguardStateController,
-                mLogger);
-        mCoordinator.attach(mNotifPipeline);
-        mTestScope.getTestScheduler().runCurrent();
-
-        // capture arguments:
-        verify(mWakefulnessLifecycle).addObserver(mWakefulnessObserverCaptor.capture());
-        mWakefulnessObserver = mWakefulnessObserverCaptor.getValue();
-
-        verify(mStatusBarStateController).addCallback(mSBStateListenerCaptor.capture());
-        mStatusBarStateListener = mSBStateListenerCaptor.getValue();
-
-        verify(mNotifPipeline).setVisualStabilityManager(mNotifStabilityManagerCaptor.capture());
-        mNotifStabilityManager = mNotifStabilityManagerCaptor.getValue();
-        mNotifStabilityManager.setInvalidationListener(mInvalidateListener);
-
-        mEntry = new NotificationEntryBuilder()
-                .setPkg("testPkg1")
-                .build();
-
-        mGroupEntry = new GroupEntryBuilder()
-                .setSummary(mEntry)
-                .build();
-
-        when(mHeadsUpManager.isHeadsUpEntry(mEntry.getKey())).thenReturn(false);
-
-        // Whenever we invalidate, the pipeline runs again, so we invalidate the state
-        doAnswer(i -> {
-            mNotifStabilityManager.onBeginRun();
-            return null;
-        }).when(mInvalidateListener).onPluggableInvalidated(eq(mNotifStabilityManager), any());
-    }
-
-    @Test
-    public void testScreenOff_groupAndSectionChangesAllowed() {
-        // GIVEN screen is off, panel isn't expanded and device isn't pulsing
-        setFullyDozed(true);
-        setSleepy(true);
-        setPanelExpanded(false);
-        setPulsing(false);
-
-        // THEN group changes are allowed
-        assertTrue(mNotifStabilityManager.isGroupChangeAllowed(mEntry));
-        assertTrue(mNotifStabilityManager.isGroupPruneAllowed(mGroupEntry));
-
-        // THEN section changes are allowed
-        assertTrue(mNotifStabilityManager.isSectionChangeAllowed(mEntry));
-    }
-
-    @Test
-    public void testScreenTurningOff_groupAndSectionChangesNotAllowed() {
-        // GIVEN the screen is turning off (sleepy but partially dozed)
-        setFullyDozed(false);
-        setSleepy(true);
-        setPanelExpanded(true);
-        setPulsing(false);
-
-        // THEN group changes are NOT allowed
-        assertFalse(mNotifStabilityManager.isGroupChangeAllowed(mEntry));
-        assertFalse(mNotifStabilityManager.isGroupPruneAllowed(mGroupEntry));
-
-        // THEN section changes are NOT allowed
-        assertFalse(mNotifStabilityManager.isSectionChangeAllowed(mEntry));
-    }
-
-    @Test
-    public void testScreenTurningOn_groupAndSectionChangesNotAllowed() {
-        // GIVEN the screen is turning on (still fully dozed, not sleepy)
-        setFullyDozed(true);
-        setSleepy(false);
-        setPanelExpanded(true);
-        setPulsing(false);
-
-        // THEN group changes are NOT allowed
-        assertFalse(mNotifStabilityManager.isGroupChangeAllowed(mEntry));
-        assertFalse(mNotifStabilityManager.isGroupPruneAllowed(mGroupEntry));
-
-        // THEN section changes are NOT allowed
-        assertFalse(mNotifStabilityManager.isSectionChangeAllowed(mEntry));
-    }
-
-    @Test
-    public void testPanelNotExpanded_groupAndSectionChangesAllowed() {
-        // GIVEN screen is on but the panel isn't expanded and device isn't pulsing
-        setFullyDozed(false);
-        setSleepy(false);
-        setPanelExpanded(false);
-        setPulsing(false);
-
-        // THEN group changes are allowed
-        assertTrue(mNotifStabilityManager.isGroupChangeAllowed(mEntry));
-        assertTrue(mNotifStabilityManager.isGroupPruneAllowed(mGroupEntry));
-
-        // THEN section changes are allowed
-        assertTrue(mNotifStabilityManager.isSectionChangeAllowed(mEntry));
-    }
-
-    @Test
-    public void testPanelExpanded_groupAndSectionChangesNotAllowed() {
-        // GIVEN the panel true expanded and device isn't pulsing
-        setFullyDozed(false);
-        setSleepy(false);
-        setPanelExpanded(true);
-        setPulsing(false);
-
-        // THEN group changes are NOT allowed
-        assertFalse(mNotifStabilityManager.isGroupChangeAllowed(mEntry));
-        assertFalse(mNotifStabilityManager.isGroupPruneAllowed(mGroupEntry));
-
-        // THEN section changes are NOT allowed
-        assertFalse(mNotifStabilityManager.isSectionChangeAllowed(mEntry));
-    }
-
-    @Test
-    @BrokenWithSceneContainer(bugId = 377868472) // mReorderingAllowed is broken with SceneContainer
-    public void testLockscreenPartlyShowing_groupAndSectionChangesNotAllowed() {
-        // GIVEN the panel true expanded and device isn't pulsing
-        setFullyDozed(false);
-        setSleepy(false);
-        setLockscreenShowing(0.5f);
-        setPulsing(false);
-
-        // THEN group changes are NOT allowed
-        assertFalse(mNotifStabilityManager.isGroupChangeAllowed(mEntry));
-        assertFalse(mNotifStabilityManager.isGroupPruneAllowed(mGroupEntry));
-
-        // THEN section changes are NOT allowed
-        assertFalse(mNotifStabilityManager.isSectionChangeAllowed(mEntry));
-    }
-
-    @Test
-    @BrokenWithSceneContainer(bugId = 377868472) // mReorderingAllowed is broken with SceneContainer
-    public void testLockscreenFullyShowing_groupAndSectionChangesNotAllowed() {
-        // GIVEN the panel true expanded and device isn't pulsing
-        setFullyDozed(false);
-        setSleepy(false);
-        setLockscreenShowing(1.0f);
-        setPulsing(false);
-
-        // THEN group changes are NOT allowed
-        assertFalse(mNotifStabilityManager.isGroupChangeAllowed(mEntry));
-        assertFalse(mNotifStabilityManager.isGroupPruneAllowed(mGroupEntry));
-
-        // THEN section changes are NOT allowed
-        assertFalse(mNotifStabilityManager.isSectionChangeAllowed(mEntry));
-    }
-
-    @Test
-    public void testPulsing_screenOff_groupAndSectionChangesNotAllowed() {
-        // GIVEN the device is pulsing and screen is off
-        setFullyDozed(true);
-        setSleepy(true);
-        setPulsing(true);
-
-        // THEN group changes are NOT allowed
-        assertFalse(mNotifStabilityManager.isGroupChangeAllowed(mEntry));
-        assertFalse(mNotifStabilityManager.isGroupPruneAllowed(mGroupEntry));
-
-        // THEN section changes are NOT allowed
-        assertFalse(mNotifStabilityManager.isSectionChangeAllowed(mEntry));
-    }
-
-    @Test
-    public void testPulsing_panelNotExpanded_groupAndSectionChangesNotAllowed() {
-        // GIVEN the device is pulsing and screen is off with the panel not expanded
-        setFullyDozed(true);
-        setSleepy(true);
-        setPanelExpanded(false);
-        setPulsing(true);
-
-        // THEN group changes are NOT allowed
-        assertFalse(mNotifStabilityManager.isGroupChangeAllowed(mEntry));
-        assertFalse(mNotifStabilityManager.isGroupPruneAllowed(mGroupEntry));
-
-        // THEN section changes are NOT allowed
-        assertFalse(mNotifStabilityManager.isSectionChangeAllowed(mEntry));
-    }
-
-    @Test
-    public void testOverrideReorderingSuppression_onlySectionChangesAllowed() {
-        // GIVEN section changes typically wouldn't be allowed because the panel is expanded and
-        // we're not pulsing
-        setFullyDozed(false);
-        setSleepy(false);
-        setPanelExpanded(true);
-        setPulsing(true);
-
-        // WHEN we temporarily allow section changes for this notification entry
-        mCoordinator.temporarilyAllowSectionChanges(mEntry, mFakeSystemClock.currentTimeMillis());
-
-        // THEN group changes aren't allowed
-        assertFalse(mNotifStabilityManager.isGroupChangeAllowed(mEntry));
-        assertFalse(mNotifStabilityManager.isGroupPruneAllowed(mGroupEntry));
-
-        // THEN section changes are allowed for this notification but not other notifications
-        assertTrue(mNotifStabilityManager.isSectionChangeAllowed(mEntry));
-        assertFalse(mNotifStabilityManager.isSectionChangeAllowed(
-                new NotificationEntryBuilder()
-                        .setPkg("testPkg2")
-                        .build()));
-    }
-
-    @Test
-    public void testTemporarilyAllowSectionChanges_callsInvalidate() {
-        // GIVEN section changes typically wouldn't be allowed because the panel is expanded
-        setFullyDozed(false);
-        setSleepy(false);
-        setPanelExpanded(true);
-        setPulsing(false);
-
-        // WHEN we temporarily allow section changes for this notification entry
-        mCoordinator.temporarilyAllowSectionChanges(mEntry, mFakeSystemClock.uptimeMillis());
-
-        // THEN the notification list is invalidated
-        verifyStabilityManagerWasInvalidated(times(1));
-    }
-
-    @Test
-    public void testTemporarilyAllowSectionChanges_noInvalidationCalled() {
-        // GIVEN section changes typically WOULD be allowed
-        setFullyDozed(true);
-        setSleepy(true);
-        setPanelExpanded(false);
-        setPulsing(false);
-
-        // WHEN we temporarily allow section changes for this notification entry
-        mCoordinator.temporarilyAllowSectionChanges(mEntry, mFakeSystemClock.currentTimeMillis());
-
-        // THEN invalidate is not called because this entry was never suppressed from reordering
-        verifyStabilityManagerWasInvalidated(never());
-    }
-
-    @Test
-    public void testTemporarilyAllowSectionChangesTimeout() {
-        // GIVEN section changes typically WOULD be allowed
-        setFullyDozed(true);
-        setSleepy(true);
-        setPanelExpanded(false);
-        setPulsing(false);
-        assertTrue(mNotifStabilityManager.isSectionChangeAllowed(mEntry));
-
-        // WHEN we temporarily allow section changes for this notification entry
-        mCoordinator.temporarilyAllowSectionChanges(mEntry, mFakeSystemClock.currentTimeMillis());
-
-        // THEN invalidate is not called because this entry was never suppressed from reordering;
-        // THEN section changes are allowed for this notification
-        verifyStabilityManagerWasInvalidated(never());
-        assertTrue(mNotifStabilityManager.isSectionChangeAllowed(mEntry));
-
-        // WHEN we're pulsing (now disallowing reordering)
-        setPulsing(true);
-
-        // THEN we're still allowed to reorder this section because it's still in the list of
-        // notifications to allow section changes
-        assertTrue(mNotifStabilityManager.isSectionChangeAllowed(mEntry));
-
-        // WHEN the timeout for the temporarily allow section reordering runnable is finsihed
-        mFakeBackgroundExecutor.advanceClockToNext();
-        mFakeBackgroundExecutor.runNextReady();
-
-        // THEN section changes aren't allowed anymore
-        assertFalse(mNotifStabilityManager.isSectionChangeAllowed(mEntry));
-    }
-
-    @Test
-    public void testTemporarilyAllowSectionChanges_isPulsingChangeBeforeTimeout() {
-        // GIVEN section changes typically wouldn't be allowed because the device is pulsing
-        setFullyDozed(true);
-        setSleepy(true);
-        setPanelExpanded(false);
-        setPulsing(true);
-
-        // WHEN we temporarily allow section changes for this notification entry
-        mCoordinator.temporarilyAllowSectionChanges(mEntry, mFakeSystemClock.currentTimeMillis());
-        // can now reorder, so invalidates
-        verifyStabilityManagerWasInvalidated(times(1));
-
-        // WHEN reordering is now allowed because device isn't pulsing anymore
-        setPulsing(false);
-
-        // THEN invalidate isn't called a second time since reordering was already allowed
-        verifyStabilityManagerWasInvalidated(times(1));
-    }
-
-    @Test
-    public void testMovingVisibleHeadsUpNotAllowed() {
-        // GIVEN stability enforcing conditions
-        setPanelExpanded(true);
-        setSleepy(false);
-
-        // WHEN a notification is alerting and visible
-        when(mHeadsUpManager.isHeadsUpEntry(mEntry.getKey())).thenReturn(true);
-        when(mVisibilityLocationProvider.isInVisibleLocation(any(NotificationEntry.class)))
-                .thenReturn(true);
-
-        // VERIFY the notification cannot be reordered
-        assertThat(mNotifStabilityManager.isEntryReorderingAllowed(mEntry)).isFalse();
-        assertThat(mNotifStabilityManager.isSectionChangeAllowed(mEntry)).isFalse();
-    }
-
-    @Test
-    public void testMovingInvisibleHeadsUpAllowed() {
-        // GIVEN stability enforcing conditions
-        setPanelExpanded(true);
-        setSleepy(false);
-
-        // WHEN a notification is alerting but not visible
-        when(mHeadsUpManager.isHeadsUpEntry(mEntry.getKey())).thenReturn(true);
-        when(mVisibilityLocationProvider.isInVisibleLocation(any(NotificationEntry.class)))
-                .thenReturn(false);
-
-        // VERIFY the notification can be reordered
-        assertThat(mNotifStabilityManager.isEntryReorderingAllowed(mEntry)).isTrue();
-        assertThat(mNotifStabilityManager.isSectionChangeAllowed(mEntry)).isTrue();
-    }
-
-    @Test
-    public void testNeverSuppressedChanges_noInvalidationCalled() {
-        // GIVEN no notifications are currently being suppressed from grouping nor being sorted
-
-        // WHEN device isn't pulsing anymore
-        setPulsing(false);
-
-        // WHEN fully dozed
-        setFullyDozed(true);
-
-        // WHEN sleepy
-        setSleepy(true);
-
-        // WHEN panel isn't expanded
-        setPanelExpanded(false);
-
-        // THEN we never see any calls to invalidate since there weren't any notifications that
-        // were being suppressed from grouping or section changes
-        verifyStabilityManagerWasInvalidated(never());
-    }
-
-    @Test
-    public void testNotSuppressingGroupChangesAnymore_invalidationCalled() {
-        // GIVEN visual stability is being maintained b/c panel is expanded
-        setPulsing(false);
-        setFullyDozed(false);
-        setSleepy(false);
-        setPanelExpanded(true);
-
-        assertFalse(mNotifStabilityManager.isGroupChangeAllowed(mEntry));
-        assertFalse(mNotifStabilityManager.isGroupPruneAllowed(mGroupEntry));
-
-        // WHEN the panel isn't expanded anymore
-        setPanelExpanded(false);
-
-        //  invalidate is called because we were previously suppressing a group change
-        verifyStabilityManagerWasInvalidated(times(1));
-    }
-
-    @Test
-    public void testNotLaunchingActivityAnymore_invalidationCalled() {
-        // GIVEN visual stability is being maintained b/c animation is playing
-        setActivityLaunching(true);
-
-        assertFalse(mNotifStabilityManager.isPipelineRunAllowed());
-
-        // WHEN the animation has stopped playing
-        setActivityLaunching(false);
-
-        // invalidate is called, b/c we were previously suppressing the pipeline from running
-        verifyStabilityManagerWasInvalidated(times(1));
-    }
-
-    @Test
-    public void testNotCollapsingPanelAnymore_invalidationCalled() {
-        // GIVEN visual stability is being maintained b/c animation is playing
-        setPanelCollapsing(true);
-
-        assertFalse(mNotifStabilityManager.isPipelineRunAllowed());
-
-        // WHEN the animation has stopped playing
-        setPanelCollapsing(false);
-
-        // invalidate is called, b/c we were previously suppressing the pipeline from running
-        verifyStabilityManagerWasInvalidated(times(1));
-    }
-
-    @Test
-    @EnableFlags(Flags.FLAG_CHECK_LOCKSCREEN_GONE_TRANSITION)
-    @DisableSceneContainer
-    public void testNotLockscreenInGoneTransitionLegacy_invalidationCalled() {
-        // GIVEN visual stability is being maintained b/c animation is playing
-        doReturn(true).when(mKeyguardStateController).isKeyguardFadingAway();
-        mCoordinator.mKeyguardFadeAwayAnimationCallback.onKeyguardFadingAwayChanged();
-
-        assertFalse(mNotifStabilityManager.isPipelineRunAllowed());
-
-        // WHEN the animation has stopped playing
-        doReturn(false).when(mKeyguardStateController).isKeyguardFadingAway();
-        mCoordinator.mKeyguardFadeAwayAnimationCallback.onKeyguardFadingAwayChanged();
-
-        // invalidate is called, b/c we were previously suppressing the pipeline from running
-        verifyStabilityManagerWasInvalidated(times(1));
-    }
-
-    @Test
-    @EnableFlags(Flags.FLAG_CHECK_LOCKSCREEN_GONE_TRANSITION)
-    @EnableSceneContainer
-    @BrokenWithSceneContainer(bugId = 377868472) // mReorderingAllowed is broken with SceneContainer
-    public void testNotLockscreenInGoneTransition_invalidationCalled() {
-        // GIVEN visual stability is being maintained b/c animation is playing
-        mKosmos.getKeyguardTransitionRepository().sendTransitionStepJava(
-                mTestScope, new TransitionStep(
-                        KeyguardState.LOCKSCREEN,
-                        KeyguardState.GONE,
-                        1f,
-                        TransitionState.RUNNING),  /* validateStep = */ false);
-        mTestScope.getTestScheduler().runCurrent();
-        assertFalse(mNotifStabilityManager.isPipelineRunAllowed());
-
-        // WHEN the animation has stopped playing
-        mKosmos.getKeyguardTransitionRepository().sendTransitionStepJava(
-                mTestScope, new TransitionStep(
-                        KeyguardState.LOCKSCREEN,
-                        KeyguardState.GONE,
-                        1f,
-                        TransitionState.FINISHED),  /* validateStep = */ false);
-        mTestScope.getTestScheduler().runCurrent();
-
-        // invalidate is called, b/c we were previously suppressing the pipeline from running
-        verifyStabilityManagerWasInvalidated(times(1));
-    }
-
-    @Test
-    public void testNeverSuppressPipelineRunFromPanelCollapse_noInvalidationCalled() {
-        // GIVEN animation is playing
-        setPanelCollapsing(true);
-
-        // WHEN the animation has stopped playing
-        setPanelCollapsing(false);
-
-        // THEN invalidate is not called, b/c nothing has been suppressed
-        verifyStabilityManagerWasInvalidated(never());
-    }
-
-    @Test
-    public void testNeverSuppressPipelineRunFromLaunchActivity_noInvalidationCalled() {
-        // GIVEN animation is playing
-        setActivityLaunching(true);
-
-        // WHEN the animation has stopped playing
-        setActivityLaunching(false);
-
-        // THEN invalidate is not called, b/c nothing has been suppressed
-        verifyStabilityManagerWasInvalidated(never());
-    }
-
-    @Test
-    public void testNotSuppressingEntryReorderingAnymoreWillInvalidate() {
-        // GIVEN visual stability is being maintained b/c panel is expanded
-        setPulsing(false);
-        setFullyDozed(false);
-        setSleepy(false);
-        setPanelExpanded(true);
-        setCommunalShowing(false);
-
-        assertFalse(mNotifStabilityManager.isEntryReorderingAllowed(mEntry));
-        // The pipeline still has to report back that entry reordering was suppressed
-        mNotifStabilityManager.onEntryReorderSuppressed();
-
-        // WHEN the panel isn't expanded anymore
-        setPanelExpanded(false);
-
-        //  invalidate is called because we were previously suppressing an entry reorder
-        verifyStabilityManagerWasInvalidated(times(1));
-    }
-
-    @Test
-    @BrokenWithSceneContainer(bugId = 377868472) // mReorderingAllowed is broken with SceneContainer
-    public void testCommunalShowingWillNotSuppressReordering() {
-        // GIVEN panel is expanded, communal is showing, and QS is collapsed
-        setPulsing(false);
-        setFullyDozed(false);
-        setSleepy(false);
-        setPanelExpanded(true);
-        setQsExpanded(false);
-        setCommunalShowing(true);
-
-        // Reordering should be allowed
-        assertTrue(mNotifStabilityManager.isEntryReorderingAllowed(mEntry));
-    }
-
-    @Test
-    public void testQsExpandedOverCommunalWillSuppressReordering() {
-        // GIVEN panel is expanded and communal is showing, but QS is expanded
-        setPulsing(false);
-        setFullyDozed(false);
-        setSleepy(false);
-        setPanelExpanded(true);
-        setQsExpanded(true);
-        setCommunalShowing(true);
-
-        // Reordering should not be allowed
-        assertFalse(mNotifStabilityManager.isEntryReorderingAllowed(mEntry));
-    }
-
-    @Test
-    public void testQueryingEntryReorderingButNotReportingReorderSuppressedDoesNotInvalidate() {
-        // GIVEN visual stability is being maintained b/c panel is expanded
-        setPulsing(false);
-        setFullyDozed(false);
-        setSleepy(false);
-        setPanelExpanded(true);
-
-        assertFalse(mNotifStabilityManager.isEntryReorderingAllowed(mEntry));
-
-        // WHEN the panel isn't expanded anymore
-        setPanelExpanded(false);
-
-        // invalidate is not called because we were not told that an entry reorder was suppressed
-        verifyStabilityManagerWasInvalidated(never());
-    }
-
-    @Test
-    public void testHeadsUp_allowedToChangeGroupAndSection() {
-        // GIVEN group + section changes disallowed
-        setFullyDozed(false);
-        setSleepy(false);
-        setPanelExpanded(true);
-        setPulsing(true);
-        assertFalse(mNotifStabilityManager.isGroupChangeAllowed(mEntry));
-        assertFalse(mNotifStabilityManager.isGroupPruneAllowed(mGroupEntry));
-        assertFalse(mNotifStabilityManager.isSectionChangeAllowed(mEntry));
-
-        // GIVEN mEntry is a HUN
-        when(mHeadsUpManager.isHeadsUpEntry(mEntry.getKey())).thenReturn(true);
-
-        // THEN group + section changes are allowed
-        assertTrue(mNotifStabilityManager.isGroupChangeAllowed(mEntry));
-        assertTrue(mNotifStabilityManager.isSectionChangeAllowed(mEntry));
-
-        // BUT pruning the group for which this is the summary would still NOT be allowed.
-        assertFalse(mNotifStabilityManager.isGroupPruneAllowed(mGroupEntry));
-    }
-
-    @Test
-    public void everyChangeAllowed_onReorderingEnabled_legacy() {
-        assumeFalse(StabilizeHeadsUpGroup.isEnabled());
-        // GIVEN - reordering is allowed.
-        setPulsing(false);
-        setPanelExpanded(false);
-
-        // THEN
-        assertThat(mNotifStabilityManager.isEveryChangeAllowed()).isTrue();
-        assertThat(mNotifStabilityManager.isGroupChangeAllowed(any())).isTrue();
-        assertThat(mNotifStabilityManager.isGroupPruneAllowed(any())).isTrue();
-        assertThat(mNotifStabilityManager.isSectionChangeAllowed(any())).isTrue();
-        assertThat(mNotifStabilityManager.isEntryReorderingAllowed(any())).isTrue();
-    }
-
-    @Test
-    public void everyChangeAllowed_noActiveHeadsUpGroup_onReorderingEnabled() {
-        assumeTrue(StabilizeHeadsUpGroup.isEnabled());
-        // GIVEN - reordering is allowed.
-        setPulsing(false);
-        setPanelExpanded(false);
-
-        // GIVEN - empty heads-up-group keys
-        mCoordinator.setHeadsUpGroupKeys(Set.of());
-
-        // THEN
-        assertThat(mNotifStabilityManager.isEveryChangeAllowed()).isTrue();
-        assertThat(mNotifStabilityManager.isGroupChangeAllowed(any())).isTrue();
-        assertThat(mNotifStabilityManager.isGroupPruneAllowed(any())).isTrue();
-        assertThat(mNotifStabilityManager.isSectionChangeAllowed(any())).isTrue();
-        assertThat(mNotifStabilityManager.isEntryReorderingAllowed(any())).isTrue();
-    }
-
-    @Test
-    public void everyChangeDisallowed_activeHeadsUpGroup_onReorderingEnabled() {
-        assumeTrue(StabilizeHeadsUpGroup.isEnabled());
-        // GIVEN - reordering is allowed.
-        setPulsing(false);
-        setPanelExpanded(false);
-
-        // GIVEN - there is a group heads-up.
-        mCoordinator.setHeadsUpGroupKeys(Set.of("heads_up_group_key"));
-
-        // THEN
-        assertThat(mNotifStabilityManager.isEveryChangeAllowed()).isFalse();
-    }
-
-    @Test
-    public void nonHeadsUpGroup_changesAllowed_onReorderingEnabled() {
-        assumeTrue(StabilizeHeadsUpGroup.isEnabled());
-        // GIVEN - reordering is allowed.
-        setPulsing(false);
-        setPanelExpanded(false);
-
-        //  GIVEN - there is a group heads-up.
-        String headsUpGroupKey = "heads_up_group_key";
-        mCoordinator.setHeadsUpGroupKeys(Set.of(headsUpGroupKey));
-        when(mHeadsUpManager.isHeadsUpEntry(headsUpGroupKey)).thenReturn(true);
-
-        // GIVEN - HUN Group Summary
-        final NotificationEntry nonHeadsUpGroupSummary = mock(NotificationEntry.class);
-        when(nonHeadsUpGroupSummary.getKey()).thenReturn("non_heads_up_group_key");
-        when(nonHeadsUpGroupSummary.isSummaryWithChildren()).thenReturn(true);
-        final GroupEntry nonHeadsUpGroupEntry = mock(GroupEntry.class);
-        when(nonHeadsUpGroupEntry.getSummary()).thenReturn(nonHeadsUpGroupSummary);
-        when(nonHeadsUpGroupEntry.getRepresentativeEntry()).thenReturn(nonHeadsUpGroupSummary);
-
-        // THEN
-        assertThat(mNotifStabilityManager.isGroupPruneAllowed(nonHeadsUpGroupEntry)).isTrue();
-        assertThat(mNotifStabilityManager.isEntryReorderingAllowed(nonHeadsUpGroupEntry)).isTrue();
-    }
-
-    @Test
-    public void headsUpGroup_changesDisallowed_onReorderingEnabled() {
-        assumeTrue(StabilizeHeadsUpGroup.isEnabled());
-        // GIVEN - reordering is allowed.
-        setPulsing(false);
-        setPanelExpanded(false);
-
-        //  GIVEN - there is a group heads-up.
-        final String headsUpGroupKey = "heads_up_group_key";
-        mCoordinator.setHeadsUpGroupKeys(Set.of(headsUpGroupKey));
-        when(mHeadsUpManager.isHeadsUpEntry(headsUpGroupKey)).thenReturn(true);
-
-        // GIVEN - HUN Group
-        final NotificationEntry headsUpGroupSummary = mock(NotificationEntry.class);
-        when(headsUpGroupSummary.rowIsChildInGroup()).thenReturn(false);
-        when(headsUpGroupSummary.getKey()).thenReturn(headsUpGroupKey);
-        when(headsUpGroupSummary.isSummaryWithChildren()).thenReturn(true);
-
-        final GroupEntry headsUpGroupEntry = mock(GroupEntry.class);
-        when(headsUpGroupEntry.getSummary()).thenReturn(headsUpGroupSummary);
-        when(headsUpGroupEntry.getRepresentativeEntry()).thenReturn(headsUpGroupSummary);
-
-        when(headsUpGroupSummary.getParent()).thenReturn(headsUpGroupEntry);
-
-        // GIVEN - HUN is in visible location
-        when(mVisibilityLocationProvider.isInVisibleLocation(headsUpGroupSummary)).thenReturn(true);
-
-        // THEN
-        assertThat(mNotifStabilityManager.isGroupPruneAllowed(headsUpGroupEntry)).isFalse();
-        assertThat(mNotifStabilityManager.isEntryReorderingAllowed(headsUpGroupEntry)).isFalse();
-    }
-
-    @Test
-    public void headsUpGroupSummaries_changesDisallowed_onReorderingEnabled() {
-        assumeTrue(StabilizeHeadsUpGroup.isEnabled());
-        // GIVEN - reordering is allowed.
-        setPulsing(false);
-        setPanelExpanded(false);
-
-        //  GIVEN - there is a group heads-up.
-        final String headsUpGroupKey = "heads_up_group_key";
-        mCoordinator.setHeadsUpGroupKeys(Set.of(headsUpGroupKey));
-        when(mHeadsUpManager.isHeadsUpEntry(headsUpGroupKey)).thenReturn(true);
-
-        // GIVEN - HUN Group
-        final NotificationEntry headsUpGroupSummary = mock(NotificationEntry.class);
-        when(headsUpGroupSummary.rowIsChildInGroup()).thenReturn(false);
-        when(headsUpGroupSummary.getKey()).thenReturn(headsUpGroupKey);
-        when(headsUpGroupSummary.isSummaryWithChildren()).thenReturn(true);
-
-        final GroupEntry headsUpGroupEntry = mock(GroupEntry.class);
-        when(headsUpGroupEntry.getSummary()).thenReturn(headsUpGroupSummary);
-        when(headsUpGroupEntry.getRepresentativeEntry()).thenReturn(headsUpGroupSummary);
-
-        when(headsUpGroupSummary.getParent()).thenReturn(headsUpGroupEntry);
-
-        // GIVEN - HUN is in visible location
-        when(mVisibilityLocationProvider.isInVisibleLocation(headsUpGroupSummary)).thenReturn(true);
-
-        // THEN
-        assertThat(mNotifStabilityManager.isGroupChangeAllowed(headsUpGroupSummary)).isFalse();
-        assertThat(mNotifStabilityManager.isEntryReorderingAllowed(headsUpGroupSummary)).isFalse();
-        assertThat(mNotifStabilityManager.isSectionChangeAllowed(headsUpGroupSummary)).isFalse();
-    }
-
-    @Test
-    public void notificationInNonHUNGroup_changesAllowed_onReorderingEnabled() {
-        assumeTrue(StabilizeHeadsUpGroup.isEnabled());
-        // GIVEN - reordering is allowed.
-        setPulsing(false);
-        setPanelExpanded(false);
-
-        //  GIVEN - there is a group heads-up.
-        String headsUpGroupKey = "heads_up_group_key";
-        mCoordinator.setHeadsUpGroupKeys(Set.of(headsUpGroupKey));
-        when(mHeadsUpManager.isHeadsUpEntry(headsUpGroupKey)).thenReturn(true);
-
-        // GIVEN - non HUN parent Group Summary
-        final NotificationEntry groupSummary = mock(NotificationEntry.class);
-        when(groupSummary.getKey()).thenReturn("non_heads_up_group_key");
-        when(groupSummary.isSummaryWithChildren()).thenReturn(true);
-
-        final GroupEntry nonHeadsUpGroupEntry = mock(GroupEntry.class);
-        when(nonHeadsUpGroupEntry.getSummary()).thenReturn(groupSummary);
-        when(nonHeadsUpGroupEntry.getRepresentativeEntry()).thenReturn(groupSummary);
-
-        // GIVEN - child entry in a non heads-up group.
-        final NotificationEntry childEntry = mock(NotificationEntry.class);
-        when(childEntry.rowIsChildInGroup()).thenReturn(true);
-        when(childEntry.getParent()).thenReturn(nonHeadsUpGroupEntry);
-        when(childEntry.getParent()).thenReturn(nonHeadsUpGroupEntry);
-
-        // THEN
-        assertThat(mNotifStabilityManager.isGroupChangeAllowed(childEntry)).isTrue();
-        assertThat(mNotifStabilityManager.isSectionChangeAllowed(childEntry)).isTrue();
-        assertThat(mNotifStabilityManager.isEntryReorderingAllowed(nonHeadsUpGroupEntry)).isTrue();
-    }
-
-    @Test
-    public void notificationInHUNGroup_changesDisallowed_reorderingEnabled() {
-        assumeTrue(StabilizeHeadsUpGroup.isEnabled());
-        // GIVEN - reordering is allowed.
-        setPulsing(false);
-        setPanelExpanded(false);
-
-        // GIVEN - there is a group heads-up.
-        final String headsUpGroupKey = "heads_up_group_key";
-        mCoordinator.setHeadsUpGroupKeys(Set.of(headsUpGroupKey));
-        when(mHeadsUpManager.isHeadsUpEntry(headsUpGroupKey)).thenReturn(true);
-
-        // GIVEN - HUN Group Summary
-        final NotificationEntry headsUpGroupSummary = mock(NotificationEntry.class);
-        when(headsUpGroupSummary.rowIsChildInGroup()).thenReturn(false);
-        when(headsUpGroupSummary.getKey()).thenReturn(headsUpGroupKey);
-        when(headsUpGroupSummary.isSummaryWithChildren()).thenReturn(true);
-
-        final GroupEntry nonHeadsUpGroupEntry = mock(GroupEntry.class);
-        when(nonHeadsUpGroupEntry.getSummary()).thenReturn(headsUpGroupSummary);
-        when(nonHeadsUpGroupEntry.getRepresentativeEntry()).thenReturn(headsUpGroupSummary);
-
-        // GIVEN - child entry in a non heads-up group.
-        final NotificationEntry childEntry = mock(NotificationEntry.class);
-        when(childEntry.rowIsChildInGroup()).thenReturn(true);
-        when(childEntry.getParent()).thenReturn(nonHeadsUpGroupEntry);
-
-        // GIVEN - HUN is in visible location
-        when(mVisibilityLocationProvider.isInVisibleLocation(headsUpGroupSummary)).thenReturn(true);
-
-        // THEN
-        assertThat(mNotifStabilityManager.isGroupChangeAllowed(childEntry)).isFalse();
-        assertThat(mNotifStabilityManager.isSectionChangeAllowed(childEntry)).isFalse();
-        assertThat(mNotifStabilityManager.isEntryReorderingAllowed(childEntry)).isFalse();
-    }
-
-    private void verifyStabilityManagerWasInvalidated(VerificationMode mode) {
-        verify(mInvalidateListener, mode).onPluggableInvalidated(eq(mNotifStabilityManager), any());
-    }
-
-    private void setActivityLaunching(boolean activityLaunching) {
-        mShadeAnimationInteractor.setIsLaunchingActivity(activityLaunching);
-        mTestScope.getTestScheduler().runCurrent();
-    }
-
-    private void setPanelCollapsing(boolean collapsing) {
-        mShadeRepository.setLegacyIsClosing(collapsing);
-        mTestScope.getTestScheduler().runCurrent();
-    }
-
-    private void setCommunalShowing(boolean isShowing) {
-        final MutableStateFlow<ObservableTransitionState> showingFlow =
-                MutableStateFlow(
-                        new ObservableTransitionState.Idle(
-                                isShowing ? CommunalScenes.Communal : CommunalScenes.Blank)
-                );
-        mKosmos.getCommunalSceneInteractor().setTransitionState(showingFlow);
-        mTestScope.getTestScheduler().runCurrent();
-    }
-
-    private void setQsExpanded(boolean isExpanded) {
-        mKosmos.getShadeRepository().setQsExpansion(isExpanded ? 1.0f : 0.0f);
-        mTestScope.getTestScheduler().runCurrent();
-    }
-
-    private void setPulsing(boolean pulsing) {
-        mStatusBarStateListener.onPulsingChanged(pulsing);
-    }
-
-    private void setFullyDozed(boolean fullyDozed) {
-        float dozeAmount = fullyDozed ? 1 : 0;
-        mStatusBarStateListener.onDozeAmountChanged(dozeAmount, dozeAmount);
-    }
-
-    private void setSleepy(boolean sleepy) {
-        if (sleepy) {
-            mWakefulnessObserver.onFinishedGoingToSleep();
-        } else {
-            mWakefulnessObserver.onStartedWakingUp();
-        }
-    }
-
-    private void setPanelExpanded(boolean expanded) {
-        setPanelExpandedAndLockscreenShowing(expanded, /* lockscreenShowing = */ 0.0f);
-    }
-
-    private void setLockscreenShowing(float lockscreenShowing) {
-        setPanelExpandedAndLockscreenShowing(/* panelExpanded = */ false, lockscreenShowing);
-    }
-
-    private void setPanelExpandedAndLockscreenShowing(boolean panelExpanded,
-            float lockscreenShowing) {
-        if (SceneContainerFlag.isEnabled()) {
-            mStatusBarStateListener.onExpandedChanged(panelExpanded);
-            mKosmos.getKeyguardTransitionRepository().sendTransitionStepJava(
-                    mTestScope,
-                    makeLockscreenTransitionStep(lockscreenShowing),
-                    /* validateStep = */ false);
-        } else {
-            mStatusBarStateListener.onExpandedChanged(panelExpanded || lockscreenShowing > 0.0f);
-        }
-    }
-
-    private TransitionStep makeLockscreenTransitionStep(float value) {
-        if (value <= 0.0f) {
-            return new TransitionStep(KeyguardState.GONE);
-        } else if (value >= 1.0f) {
-            return new TransitionStep(KeyguardState.LOCKSCREEN);
-        } else {
-            return new TransitionStep(
-                    KeyguardState.GONE,
-                    KeyguardState.LOCKSCREEN,
-                    value,
-                    TransitionState.RUNNING);
-        }
-    }
-}
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/VisualStabilityCoordinatorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/VisualStabilityCoordinatorTest.kt
new file mode 100644
index 0000000..ef0a416
--- /dev/null
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/coordinator/VisualStabilityCoordinatorTest.kt
@@ -0,0 +1,1007 @@
+/*
+ * Copyright (C) 2020 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.systemui.statusbar.notification.collection.coordinator
+
+import android.platform.test.annotations.EnableFlags
+import android.platform.test.flag.junit.FlagsParameterization
+import android.testing.TestableLooper.RunWithLooper
+import androidx.test.filters.SmallTest
+import com.android.compose.animation.scene.ObservableTransitionState
+import com.android.systemui.Flags
+import com.android.systemui.SysuiTestCase
+import com.android.systemui.communal.domain.interactor.communalSceneInteractor
+import com.android.systemui.communal.shared.model.CommunalScenes
+import com.android.systemui.concurrency.fakeExecutor
+import com.android.systemui.flags.BrokenWithSceneContainer
+import com.android.systemui.flags.DisableSceneContainer
+import com.android.systemui.flags.EnableSceneContainer
+import com.android.systemui.flags.andSceneContainer
+import com.android.systemui.keyguard.WakefulnessLifecycle
+import com.android.systemui.keyguard.data.repository.fakeKeyguardTransitionRepository
+import com.android.systemui.keyguard.shared.model.KeyguardState
+import com.android.systemui.keyguard.shared.model.TransitionState
+import com.android.systemui.keyguard.shared.model.TransitionStep
+import com.android.systemui.keyguard.wakefulnessLifecycle
+import com.android.systemui.kosmos.testCase
+import com.android.systemui.kosmos.testScope
+import com.android.systemui.plugins.statusbar.StatusBarStateController
+import com.android.systemui.plugins.statusbar.statusBarStateController
+import com.android.systemui.scene.shared.flag.SceneContainerFlag
+import com.android.systemui.shade.data.repository.ShadeAnimationRepository
+import com.android.systemui.shade.data.repository.fakeShadeRepository
+import com.android.systemui.shade.data.repository.shadeRepository
+import com.android.systemui.shade.domain.interactor.ShadeAnimationInteractorLegacyImpl
+import com.android.systemui.shade.domain.interactor.shadeAnimationInteractor
+import com.android.systemui.statusbar.notification.VisibilityLocationProvider
+import com.android.systemui.statusbar.notification.collection.GroupEntry
+import com.android.systemui.statusbar.notification.collection.GroupEntryBuilder
+import com.android.systemui.statusbar.notification.collection.NotificationEntry
+import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder
+import com.android.systemui.statusbar.notification.collection.listbuilder.pluggable.NotifStabilityManager
+import com.android.systemui.statusbar.notification.collection.listbuilder.pluggable.Pluggable.PluggableListener
+import com.android.systemui.statusbar.notification.collection.notifPipeline
+import com.android.systemui.statusbar.notification.data.repository.FakeHeadsUpRowRepository
+import com.android.systemui.statusbar.notification.stack.data.repository.FakeHeadsUpNotificationRepository
+import com.android.systemui.statusbar.notification.stack.data.repository.headsUpNotificationRepository
+import com.android.systemui.statusbar.notification.visibilityLocationProvider
+import com.android.systemui.statusbar.policy.KeyguardStateController
+import com.android.systemui.statusbar.policy.keyguardStateController
+import com.android.systemui.testKosmos
+import com.android.systemui.util.mockito.withArgCaptor
+import com.android.systemui.util.time.fakeSystemClock
+import com.google.common.truth.Truth.assertThat
+import kotlin.test.Test
+import kotlinx.coroutines.flow.MutableStateFlow
+import kotlinx.coroutines.test.runTest
+import org.junit.Assume.assumeFalse
+import org.junit.Assume.assumeTrue
+import org.junit.Before
+import org.junit.runner.RunWith
+import org.mockito.kotlin.any
+import org.mockito.kotlin.doAnswer
+import org.mockito.kotlin.eq
+import org.mockito.kotlin.mock
+import org.mockito.kotlin.never
+import org.mockito.kotlin.times
+import org.mockito.kotlin.verify
+import org.mockito.kotlin.whenever
+import org.mockito.verification.VerificationMode
+import platform.test.runner.parameterized.ParameterizedAndroidJunit4
+import platform.test.runner.parameterized.Parameters
+
+@SmallTest
+@RunWith(ParameterizedAndroidJunit4::class)
+@RunWithLooper
+class VisualStabilityCoordinatorTest(flags: FlagsParameterization) : SysuiTestCase() {
+    private val kosmos = testKosmos().apply { testCase = this@VisualStabilityCoordinatorTest }
+
+    private val invalidateListener: PluggableListener<NotifStabilityManager> = mock()
+    private val headsUpRepository = kosmos.headsUpNotificationRepository
+    private val visibilityLocationProvider: VisibilityLocationProvider =
+        kosmos.visibilityLocationProvider
+    private val keyguardStateController: KeyguardStateController = kosmos.keyguardStateController
+
+    private val fakeSystemClock = kosmos.fakeSystemClock
+    private val fakeBackgroundExecutor = kosmos.fakeExecutor
+    private val testScope = kosmos.testScope
+
+    private val shadeRepository = kosmos.fakeShadeRepository
+    private lateinit var wakefulnessObserver: WakefulnessLifecycle.Observer
+    private lateinit var statusBarStateListener: StatusBarStateController.StateListener
+    private lateinit var notifStabilityManager: NotifStabilityManager
+    private lateinit var entry: NotificationEntry
+    private lateinit var groupEntry: GroupEntry
+
+    private val underTest: VisualStabilityCoordinator by lazy { kosmos.visualStabilityCoordinator }
+
+    companion object {
+        @JvmStatic
+        @Parameters(name = "{0}")
+        fun getParams(): List<FlagsParameterization> {
+            return FlagsParameterization.allCombinationsOf(Flags.FLAG_STABILIZE_HEADS_UP_GROUP_V2)
+                .andSceneContainer()
+        }
+    }
+
+    init {
+        mSetFlagsRule.setFlagsParameterization(flags)
+    }
+
+    @Before
+    fun setUp() {
+        configureKosmos()
+
+        underTest.attach(kosmos.notifPipeline)
+        testScope.testScheduler.runCurrent()
+
+        // capture arguments:
+        wakefulnessObserver = withArgCaptor {
+            verify(kosmos.wakefulnessLifecycle).addObserver(capture())
+        }
+        statusBarStateListener = withArgCaptor {
+            verify(kosmos.statusBarStateController).addCallback(capture())
+        }
+        notifStabilityManager = withArgCaptor {
+            verify(kosmos.notifPipeline).setVisualStabilityManager(capture())
+        }
+        notifStabilityManager.setInvalidationListener(invalidateListener)
+
+        entry = NotificationEntryBuilder().setPkg("testPkg1").build()
+
+        groupEntry = GroupEntryBuilder().setSummary(entry).build()
+
+        // Whenever we invalidate, the pipeline runs again, so we invalidate the state
+        whenever(invalidateListener.onPluggableInvalidated(eq(notifStabilityManager), any()))
+            .doAnswer { _ ->
+                notifStabilityManager.onBeginRun()
+                null
+            }
+    }
+
+    private fun configureKosmos() {
+        kosmos.statusBarStateController = mock()
+        // TODO(377868472) only override this when SceneContainer is disabled
+        kosmos.shadeAnimationInteractor =
+            ShadeAnimationInteractorLegacyImpl(ShadeAnimationRepository(), shadeRepository)
+    }
+
+    @Test
+    fun testScreenOff_groupAndSectionChangesAllowed() =
+        testScope.runTest {
+            // GIVEN screen is off, panel isn't expanded and device isn't pulsing
+            setFullyDozed(true)
+            setSleepy(true)
+            setPanelExpanded(false)
+            setPulsing(false)
+
+            // THEN group changes are allowed
+            assertThat(notifStabilityManager.isGroupChangeAllowed(entry)).isTrue()
+            assertThat(notifStabilityManager.isGroupPruneAllowed(groupEntry)).isTrue()
+
+            // THEN section changes are allowed
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isTrue()
+        }
+
+    @Test
+    fun testScreenTurningOff_groupAndSectionChangesNotAllowed() =
+        testScope.runTest {
+            // GIVEN the screen is turning off (sleepy but partially dozed)
+            setFullyDozed(false)
+            setSleepy(true)
+            setPanelExpanded(true)
+            setPulsing(false)
+
+            // THEN group changes are NOT allowed
+            assertThat(notifStabilityManager.isGroupChangeAllowed(entry)).isFalse()
+            assertThat(notifStabilityManager.isGroupPruneAllowed(groupEntry)).isFalse()
+
+            // THEN section changes are NOT allowed
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isFalse()
+        }
+
+    @Test
+    fun testScreenTurningOn_groupAndSectionChangesNotAllowed() =
+        testScope.runTest {
+            // GIVEN the screen is turning on (still fully dozed, not sleepy)
+            setFullyDozed(true)
+            setSleepy(false)
+            setPanelExpanded(true)
+            setPulsing(false)
+
+            // THEN group changes are NOT allowed
+            assertThat(notifStabilityManager.isGroupChangeAllowed(entry)).isFalse()
+            assertThat(notifStabilityManager.isGroupPruneAllowed(groupEntry)).isFalse()
+
+            // THEN section changes are NOT allowed
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isFalse()
+        }
+
+    @Test
+    fun testPanelNotExpanded_groupAndSectionChangesAllowed() =
+        testScope.runTest {
+            // GIVEN screen is on but the panel isn't expanded and device isn't pulsing
+            setFullyDozed(false)
+            setSleepy(false)
+            setPanelExpanded(false)
+            setPulsing(false)
+
+            // THEN group changes are allowed
+            assertThat(notifStabilityManager.isGroupChangeAllowed(entry)).isTrue()
+            assertThat(notifStabilityManager.isGroupPruneAllowed(groupEntry)).isTrue()
+
+            // THEN section changes are allowed
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isTrue()
+        }
+
+    @Test
+    fun testPanelExpanded_groupAndSectionChangesNotAllowed() =
+        testScope.runTest {
+            // GIVEN the panel true expanded and device isn't pulsing
+            setFullyDozed(false)
+            setSleepy(false)
+            setPanelExpanded(true)
+            setPulsing(false)
+
+            // THEN group changes are NOT allowed
+            assertThat(notifStabilityManager.isGroupChangeAllowed(entry)).isFalse()
+            assertThat(notifStabilityManager.isGroupPruneAllowed(groupEntry)).isFalse()
+
+            // THEN section changes are NOT allowed
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isFalse()
+        }
+
+    @Test
+    @BrokenWithSceneContainer(bugId = 377868472) // mReorderingAllowed is broken with SceneContainer
+    fun testLockscreenPartlyShowing_groupAndSectionChangesNotAllowed() =
+        testScope.runTest {
+            // GIVEN the panel true expanded and device isn't pulsing
+            setFullyDozed(false)
+            setSleepy(false)
+            setLockscreenShowing(0.5f)
+            setPulsing(false)
+
+            // THEN group changes are NOT allowed
+            assertThat(notifStabilityManager.isGroupChangeAllowed(entry)).isFalse()
+            assertThat(notifStabilityManager.isGroupPruneAllowed(groupEntry)).isFalse()
+
+            // THEN section changes are NOT allowed
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isFalse()
+        }
+
+    @Test
+    @BrokenWithSceneContainer(bugId = 377868472) // mReorderingAllowed is broken with SceneContainer
+    fun testLockscreenFullyShowing_groupAndSectionChangesNotAllowed() =
+        testScope.runTest {
+            // GIVEN the panel true expanded and device isn't pulsing
+            setFullyDozed(false)
+            setSleepy(false)
+            setLockscreenShowing(1.0f)
+            setPulsing(false)
+
+            // THEN group changes are NOT allowed
+            assertThat(notifStabilityManager.isGroupChangeAllowed(entry)).isFalse()
+            assertThat(notifStabilityManager.isGroupPruneAllowed(groupEntry)).isFalse()
+
+            // THEN section changes are NOT allowed
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isFalse()
+        }
+
+    @Test
+    fun testPulsing_screenOff_groupAndSectionChangesNotAllowed() =
+        testScope.runTest {
+            // GIVEN the device is pulsing and screen is off
+            setFullyDozed(true)
+            setSleepy(true)
+            setPulsing(true)
+
+            // THEN group changes are NOT allowed
+            assertThat(notifStabilityManager.isGroupChangeAllowed(entry)).isFalse()
+            assertThat(notifStabilityManager.isGroupPruneAllowed(groupEntry)).isFalse()
+
+            // THEN section changes are NOT allowed
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isFalse()
+        }
+
+    @Test
+    fun testPulsing_panelNotExpanded_groupAndSectionChangesNotAllowed() =
+        testScope.runTest {
+            // GIVEN the device is pulsing and screen is off with the panel not expanded
+            setFullyDozed(true)
+            setSleepy(true)
+            setPanelExpanded(false)
+            setPulsing(true)
+
+            // THEN group changes are NOT allowed
+            assertThat(notifStabilityManager.isGroupChangeAllowed(entry)).isFalse()
+            assertThat(notifStabilityManager.isGroupPruneAllowed(groupEntry)).isFalse()
+
+            // THEN section changes are NOT allowed
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isFalse()
+        }
+
+    @Test
+    fun testOverrideReorderingSuppression_onlySectionChangesAllowed() =
+        testScope.runTest {
+            // GIVEN section changes typically wouldn't be allowed because the panel is expanded and
+            // we're not pulsing
+            setFullyDozed(false)
+            setSleepy(false)
+            setPanelExpanded(true)
+            setPulsing(true)
+
+            // WHEN we temporarily allow section changes for this notification entry
+            underTest.temporarilyAllowSectionChanges(entry, fakeSystemClock.currentTimeMillis())
+
+            // THEN group changes aren't allowed
+            assertThat(notifStabilityManager.isGroupChangeAllowed(entry)).isFalse()
+            assertThat(notifStabilityManager.isGroupPruneAllowed(groupEntry)).isFalse()
+
+            // THEN section changes are allowed for this notification but not other notifications
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isTrue()
+            assertThat(
+                    notifStabilityManager.isSectionChangeAllowed(
+                        NotificationEntryBuilder().setPkg("testPkg2").build()
+                    )
+                )
+                .isFalse()
+        }
+
+    @Test
+    fun testTemporarilyAllowSectionChanges_callsInvalidate() =
+        testScope.runTest {
+            // GIVEN section changes typically wouldn't be allowed because the panel is expanded
+            setFullyDozed(false)
+            setSleepy(false)
+            setPanelExpanded(true)
+            setPulsing(false)
+
+            // WHEN we temporarily allow section changes for this notification entry
+            underTest.temporarilyAllowSectionChanges(entry, fakeSystemClock.uptimeMillis())
+
+            // THEN the notification list is invalidated
+            verifyStabilityManagerWasInvalidated(times(1))
+        }
+
+    @Test
+    fun testTemporarilyAllowSectionChanges_noInvalidationCalled() =
+        testScope.runTest {
+            // GIVEN section changes typically WOULD be allowed
+            setFullyDozed(true)
+            setSleepy(true)
+            setPanelExpanded(false)
+            setPulsing(false)
+
+            // WHEN we temporarily allow section changes for this notification entry
+            underTest.temporarilyAllowSectionChanges(entry, fakeSystemClock.currentTimeMillis())
+
+            // THEN invalidate is not called because this entry was never suppressed from reordering
+            verifyStabilityManagerWasInvalidated(never())
+        }
+
+    @Test
+    fun testTemporarilyAllowSectionChangesTimeout() =
+        testScope.runTest {
+            // GIVEN section changes typically WOULD be allowed
+            setFullyDozed(true)
+            setSleepy(true)
+            setPanelExpanded(false)
+            setPulsing(false)
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isTrue()
+
+            // WHEN we temporarily allow section changes for this notification entry
+            underTest.temporarilyAllowSectionChanges(entry, fakeSystemClock.currentTimeMillis())
+
+            // THEN invalidate is not called because this entry was never suppressed from
+            // reordering;
+            // THEN section changes are allowed for this notification
+            verifyStabilityManagerWasInvalidated(never())
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isTrue()
+
+            // WHEN we're pulsing (now disallowing reordering)
+            setPulsing(true)
+
+            // THEN we're still allowed to reorder this section because it's still in the list of
+            // notifications to allow section changes
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isTrue()
+
+            // WHEN the timeout for the temporarily allow section reordering runnable is finsihed
+            fakeBackgroundExecutor.advanceClockToNext()
+            fakeBackgroundExecutor.runNextReady()
+
+            // THEN section changes aren't allowed anymore
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isFalse()
+        }
+
+    @Test
+    fun testTemporarilyAllowSectionChanges_isPulsingChangeBeforeTimeout() =
+        testScope.runTest {
+            // GIVEN section changes typically wouldn't be allowed because the device is pulsing
+            setFullyDozed(true)
+            setSleepy(true)
+            setPanelExpanded(false)
+            setPulsing(true)
+
+            // WHEN we temporarily allow section changes for this notification entry
+            underTest.temporarilyAllowSectionChanges(entry, fakeSystemClock.currentTimeMillis())
+            // can now reorder, so invalidates
+            verifyStabilityManagerWasInvalidated(times(1))
+
+            // WHEN reordering is now allowed because device isn't pulsing anymore
+            setPulsing(false)
+
+            // THEN invalidate isn't called a second time since reordering was already allowed
+            verifyStabilityManagerWasInvalidated(times(1))
+        }
+
+    @Test
+    fun testMovingVisibleHeadsUpNotAllowed() =
+        testScope.runTest {
+            // GIVEN stability enforcing conditions
+            setPanelExpanded(true)
+            setSleepy(false)
+
+            // WHEN a notification is alerting and visible
+            headsUpRepository.setHeadsUpKeys(entry.key)
+            whenever(visibilityLocationProvider.isInVisibleLocation(any())).thenReturn(true)
+
+            // THEN the notification cannot be reordered
+            assertThat(notifStabilityManager.isEntryReorderingAllowed(entry)).isFalse()
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isFalse()
+        }
+
+    @Test
+    fun testMovingInvisibleHeadsUpAllowed() =
+        testScope.runTest {
+            // GIVEN stability enforcing conditions
+            setPanelExpanded(true)
+            setSleepy(false)
+
+            // WHEN a notification is alerting but not visible
+            headsUpRepository.setHeadsUpKeys(entry.key)
+            whenever(visibilityLocationProvider.isInVisibleLocation(any())).thenReturn(false)
+
+            // THEN the notification can be reordered
+            assertThat(notifStabilityManager.isEntryReorderingAllowed(entry)).isTrue()
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isTrue()
+        }
+
+    @Test
+    fun testNeverSuppressedChanges_noInvalidationCalled() =
+        testScope.runTest {
+            // GIVEN no notifications are currently being suppressed from grouping nor being sorted
+
+            // WHEN device isn't pulsing anymore
+
+            setPulsing(false)
+
+            // WHEN fully dozed
+            setFullyDozed(true)
+
+            // WHEN sleepy
+            setSleepy(true)
+
+            // WHEN panel isn't expanded
+            setPanelExpanded(false)
+
+            // THEN we never see any calls to invalidate since there weren't any notifications that
+            // were being suppressed from grouping or section changes
+            verifyStabilityManagerWasInvalidated(never())
+        }
+
+    @Test
+    fun testNotSuppressingGroupChangesAnymore_invalidationCalled() =
+        testScope.runTest {
+            // GIVEN visual stability is being maintained b/c panel is expanded
+            setPulsing(false)
+            setFullyDozed(false)
+            setSleepy(false)
+            setPanelExpanded(true)
+
+            assertThat(notifStabilityManager.isGroupChangeAllowed(entry)).isFalse()
+            assertThat(notifStabilityManager.isGroupPruneAllowed(groupEntry)).isFalse()
+
+            // WHEN the panel isn't expanded anymore
+            setPanelExpanded(false)
+
+            // THEN invalidate is called because we were previously suppressing a group change
+            verifyStabilityManagerWasInvalidated(times(1))
+        }
+
+    @Test
+    fun testNotLaunchingActivityAnymore_invalidationCalled() {
+        // GIVEN visual stability is being maintained b/c animation is playing
+        setActivityLaunching(true)
+
+        assertThat(notifStabilityManager.isPipelineRunAllowed()).isFalse()
+
+        // WHEN the animation has stopped playing
+        setActivityLaunching(false)
+
+        // THEN invalidate is called, b/c we were previously suppressing the pipeline from running
+        verifyStabilityManagerWasInvalidated(times(1))
+    }
+
+    @Test
+    fun testNotCollapsingPanelAnymore_invalidationCalled() {
+        // GIVEN visual stability is being maintained b/c animation is playing
+        setPanelCollapsing(true)
+
+        assertThat(notifStabilityManager.isPipelineRunAllowed()).isFalse()
+
+        // WHEN the animation has stopped playing
+        setPanelCollapsing(false)
+
+        // THEN invalidate is called, b/c we were previously suppressing the pipeline from running
+        verifyStabilityManagerWasInvalidated(times(1))
+    }
+
+    @Test
+    @EnableFlags(Flags.FLAG_CHECK_LOCKSCREEN_GONE_TRANSITION)
+    @DisableSceneContainer
+    fun testNotLockscreenInGoneTransitionLegacy_invalidationCalled() {
+        // GIVEN visual stability is being maintained b/c animation is playing
+        whenever(keyguardStateController.isKeyguardFadingAway).thenReturn(true)
+        underTest.mKeyguardFadeAwayAnimationCallback.onKeyguardFadingAwayChanged()
+
+        assertThat(notifStabilityManager.isPipelineRunAllowed()).isFalse()
+
+        // WHEN the animation has stopped playing
+        whenever(keyguardStateController.isKeyguardFadingAway).thenReturn(false)
+        underTest.mKeyguardFadeAwayAnimationCallback.onKeyguardFadingAwayChanged()
+
+        // THEN invalidate is called, b/c we were previously suppressing the pipeline from running
+        verifyStabilityManagerWasInvalidated(times(1))
+    }
+
+    @Test
+    @EnableFlags(Flags.FLAG_CHECK_LOCKSCREEN_GONE_TRANSITION)
+    @EnableSceneContainer
+    @BrokenWithSceneContainer(bugId = 377868472) // mReorderingAllowed is broken with SceneContainer
+    fun testNotLockscreenInGoneTransition_invalidationCalled() =
+        testScope.runTest {
+            // GIVEN visual stability is being maintained b/c animation is playing
+            kosmos.fakeKeyguardTransitionRepository.sendTransitionStep(
+                TransitionStep(
+                    KeyguardState.LOCKSCREEN,
+                    KeyguardState.GONE,
+                    1f,
+                    TransitionState.RUNNING,
+                ),
+                /* validateStep = */ false,
+            )
+            testScope.testScheduler.runCurrent()
+            assertThat(notifStabilityManager.isPipelineRunAllowed()).isFalse()
+
+            // WHEN the animation has stopped playing
+            kosmos.fakeKeyguardTransitionRepository.sendTransitionStep(
+                TransitionStep(
+                    KeyguardState.LOCKSCREEN,
+                    KeyguardState.GONE,
+                    1f,
+                    TransitionState.FINISHED,
+                ),
+                /* validateStep = */ false,
+            )
+            testScope.testScheduler.runCurrent()
+
+            // THEN invalidate is called, b/c we were previously suppressing the pipeline from
+            // running
+            verifyStabilityManagerWasInvalidated(times(1))
+        }
+
+    @Test
+    fun testNeverSuppressPipelineRunFromPanelCollapse_noInvalidationCalled() {
+        // GIVEN animation is playing
+        setPanelCollapsing(true)
+
+        // WHEN the animation has stopped playing
+        setPanelCollapsing(false)
+
+        // THEN invalidate is not called, b/c nothing has been suppressed
+        verifyStabilityManagerWasInvalidated(never())
+    }
+
+    @Test
+    fun testNeverSuppressPipelineRunFromLaunchActivity_noInvalidationCalled() {
+        // GIVEN animation is playing
+        setActivityLaunching(true)
+
+        // WHEN the animation has stopped playing
+        setActivityLaunching(false)
+
+        // THEN invalidate is not called, b/c nothing has been suppressed
+        verifyStabilityManagerWasInvalidated(never())
+    }
+
+    @Test
+    fun testNotSuppressingEntryReorderingAnymoreWillInvalidate() =
+        testScope.runTest {
+            // GIVEN visual stability is being maintained b/c panel is expanded
+            setPulsing(false)
+            setFullyDozed(false)
+            setSleepy(false)
+            setPanelExpanded(true)
+            setCommunalShowing(false)
+
+            assertThat(notifStabilityManager.isEntryReorderingAllowed(entry)).isFalse()
+            // The pipeline still has to report back that entry reordering was suppressed
+            notifStabilityManager.onEntryReorderSuppressed()
+
+            // WHEN the panel isn't expanded anymore
+            setPanelExpanded(false)
+
+            // THEN invalidate is called because we were previously suppressing an entry reorder
+            verifyStabilityManagerWasInvalidated(times(1))
+        }
+
+    @Test
+    @BrokenWithSceneContainer(bugId = 377868472) // mReorderingAllowed is broken with SceneContainer
+    fun testCommunalShowingWillNotSuppressReordering() =
+        testScope.runTest {
+            // GIVEN panel is expanded, communal is showing, and QS is collapsed
+            setPulsing(false)
+            setFullyDozed(false)
+            setSleepy(false)
+            setPanelExpanded(true)
+            setQsExpanded(false)
+            setCommunalShowing(true)
+
+            // THEN Reordering should be allowed
+            assertThat(notifStabilityManager.isEntryReorderingAllowed(entry)).isTrue()
+        }
+
+    @Test
+    fun testQsExpandedOverCommunalWillSuppressReordering() =
+        testScope.runTest {
+            // GIVEN panel is expanded and communal is showing, but QS is expanded
+            setPulsing(false)
+            setFullyDozed(false)
+            setSleepy(false)
+            setPanelExpanded(true)
+            setQsExpanded(true)
+            setCommunalShowing(true)
+
+            // THEN Reordering should not be allowed
+            assertThat(notifStabilityManager.isEntryReorderingAllowed(entry)).isFalse()
+        }
+
+    @Test
+    fun testQueryingEntryReorderingButNotReportingReorderSuppressedDoesNotInvalidate() =
+        testScope.runTest {
+            // GIVEN visual stability is being maintained b/c panel is expanded
+            setPulsing(false)
+            setFullyDozed(false)
+            setSleepy(false)
+            setPanelExpanded(true)
+
+            assertThat(notifStabilityManager.isEntryReorderingAllowed(entry)).isFalse()
+
+            // WHEN the panel isn't expanded anymore
+            setPanelExpanded(false)
+
+            // THEN invalidate is not called because we were not told that an entry reorder was
+            // suppressed
+            verifyStabilityManagerWasInvalidated(never())
+        }
+
+    @Test
+    fun testHeadsUp_allowedToChangeGroupAndSection() =
+        testScope.runTest {
+            // GIVEN group + section changes disallowed
+            setFullyDozed(false)
+            setSleepy(false)
+            setPanelExpanded(true)
+            setPulsing(true)
+            assertThat(notifStabilityManager.isGroupChangeAllowed(entry)).isFalse()
+            assertThat(notifStabilityManager.isGroupPruneAllowed(groupEntry)).isFalse()
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isFalse()
+
+            // GIVEN mEntry is a HUN
+            headsUpRepository.setHeadsUpKeys(entry.key)
+
+            // THEN group + section changes are allowed
+            assertThat(notifStabilityManager.isGroupChangeAllowed(entry)).isTrue()
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isTrue()
+
+            // BUT pruning the group for which this is the summary would still NOT be allowed.
+            assertThat(notifStabilityManager.isGroupPruneAllowed(groupEntry)).isFalse()
+        }
+
+    @Test
+    fun everyChangeAllowed_onReorderingEnabled_legacy() =
+        testScope.runTest {
+            assumeFalse(StabilizeHeadsUpGroup.isEnabled)
+            // GIVEN - reordering is allowed.
+            setPulsing(false)
+            setPanelExpanded(false)
+
+            // THEN
+            assertThat(notifStabilityManager.isEveryChangeAllowed()).isTrue()
+            assertThat(notifStabilityManager.isGroupChangeAllowed(entry)).isTrue()
+            assertThat(notifStabilityManager.isGroupPruneAllowed(groupEntry)).isTrue()
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isTrue()
+            assertThat(notifStabilityManager.isEntryReorderingAllowed(entry)).isTrue()
+        }
+
+    @Test
+    fun everyChangeAllowed_noActiveHeadsUpGroup_onReorderingEnabled() =
+        testScope.runTest {
+            assumeTrue(StabilizeHeadsUpGroup.isEnabled)
+            // GIVEN - reordering is allowed.
+            setPulsing(false)
+            setPanelExpanded(false)
+
+            // GIVEN - empty heads-up-group keys
+            underTest.setHeadsUpGroupKeys(setOf())
+
+            // THEN
+            assertThat(notifStabilityManager.isEveryChangeAllowed()).isTrue()
+            assertThat(notifStabilityManager.isGroupChangeAllowed(entry)).isTrue()
+            assertThat(notifStabilityManager.isGroupPruneAllowed(groupEntry)).isTrue()
+            assertThat(notifStabilityManager.isSectionChangeAllowed(entry)).isTrue()
+            assertThat(notifStabilityManager.isEntryReorderingAllowed(entry)).isTrue()
+        }
+
+    @Test
+    fun everyChangeDisallowed_activeHeadsUpGroup_onReorderingEnabled() =
+        testScope.runTest {
+            assumeTrue(StabilizeHeadsUpGroup.isEnabled)
+            // GIVEN - reordering is allowed.
+            setPulsing(false)
+            setPanelExpanded(false)
+
+            // GIVEN - there is a group heads-up.
+            underTest.setHeadsUpGroupKeys(setOf("heads_up_group_key"))
+
+            // THEN
+            assertThat(notifStabilityManager.isEveryChangeAllowed()).isFalse()
+        }
+
+    @Test
+    fun nonHeadsUpGroup_changesAllowed_onReorderingEnabled() =
+        testScope.runTest {
+            assumeTrue(StabilizeHeadsUpGroup.isEnabled)
+            // GIVEN - reordering is allowed.
+            setPulsing(false)
+            setPanelExpanded(false)
+
+            //  GIVEN - there is a group heads-up.
+            val headsUpGroupKey = "heads_up_group_key"
+            underTest.setHeadsUpGroupKeys(setOf(headsUpGroupKey))
+            headsUpRepository.setHeadsUpKeys(headsUpGroupKey)
+
+            // GIVEN - HUN Group Summary
+            val nonHeadsUpGroupSummary: NotificationEntry = mock()
+            whenever(nonHeadsUpGroupSummary.key).thenReturn("non_heads_up_group_key")
+            whenever(nonHeadsUpGroupSummary.isSummaryWithChildren).thenReturn(true)
+            val nonHeadsUpGroupEntry: GroupEntry = mock()
+            whenever(nonHeadsUpGroupEntry.summary).thenReturn(nonHeadsUpGroupSummary)
+            whenever(nonHeadsUpGroupEntry.representativeEntry).thenReturn(nonHeadsUpGroupSummary)
+
+            // THEN
+            assertThat(notifStabilityManager.isGroupPruneAllowed(nonHeadsUpGroupEntry)).isTrue()
+            assertThat(notifStabilityManager.isEntryReorderingAllowed(nonHeadsUpGroupEntry))
+                .isTrue()
+        }
+
+    @Test
+    fun headsUpGroup_changesDisallowed_onReorderingEnabled() =
+        testScope.runTest {
+            assumeTrue(StabilizeHeadsUpGroup.isEnabled)
+            // GIVEN - reordering is allowed.
+            setPulsing(false)
+            setPanelExpanded(false)
+
+            //  GIVEN - there is a group heads-up.
+            val headsUpGroupKey = "heads_up_group_key"
+            underTest.setHeadsUpGroupKeys(setOf(headsUpGroupKey))
+            headsUpRepository.setHeadsUpKeys(headsUpGroupKey)
+
+            // GIVEN - HUN Group
+            val headsUpGroupSummary: NotificationEntry = mock()
+            whenever(headsUpGroupSummary.rowIsChildInGroup()).thenReturn(false)
+            whenever(headsUpGroupSummary.key).thenReturn(headsUpGroupKey)
+            whenever(headsUpGroupSummary.isSummaryWithChildren).thenReturn(true)
+
+            val headsUpGroupEntry: GroupEntry = mock()
+            whenever(headsUpGroupEntry.summary).thenReturn(headsUpGroupSummary)
+            whenever(headsUpGroupEntry.representativeEntry).thenReturn(headsUpGroupSummary)
+
+            whenever(headsUpGroupSummary.parent).thenReturn(headsUpGroupEntry)
+
+            // GIVEN - HUN is in visible location
+            whenever(visibilityLocationProvider.isInVisibleLocation(headsUpGroupSummary))
+                .thenReturn(true)
+
+            // THEN
+            assertThat(notifStabilityManager.isGroupPruneAllowed(headsUpGroupEntry)).isFalse()
+            assertThat(notifStabilityManager.isEntryReorderingAllowed(headsUpGroupEntry)).isFalse()
+        }
+
+    @Test
+    fun headsUpGroupSummaries_changesDisallowed_onReorderingEnabled() =
+        testScope.runTest {
+            assumeTrue(StabilizeHeadsUpGroup.isEnabled)
+            // GIVEN - reordering is allowed.
+            setPulsing(false)
+            setPanelExpanded(false)
+
+            //  GIVEN - there is a group heads-up.
+            val headsUpGroupKey = "heads_up_group_key"
+            underTest.setHeadsUpGroupKeys(setOf(headsUpGroupKey))
+            headsUpRepository.setHeadsUpKeys(headsUpGroupKey)
+
+            // GIVEN - HUN Group
+            val headsUpGroupSummary: NotificationEntry = mock()
+            whenever(headsUpGroupSummary.rowIsChildInGroup()).thenReturn(false)
+            whenever(headsUpGroupSummary.key).thenReturn(headsUpGroupKey)
+            whenever(headsUpGroupSummary.isSummaryWithChildren).thenReturn(true)
+
+            val headsUpGroupEntry: GroupEntry = mock()
+            whenever(headsUpGroupEntry.summary).thenReturn(headsUpGroupSummary)
+            whenever(headsUpGroupEntry.representativeEntry).thenReturn(headsUpGroupSummary)
+
+            whenever(headsUpGroupSummary.parent).thenReturn(headsUpGroupEntry)
+
+            // GIVEN - HUN is in visible location
+            whenever(visibilityLocationProvider.isInVisibleLocation(headsUpGroupSummary))
+                .thenReturn(true)
+
+            // THEN
+            assertThat(notifStabilityManager.isGroupChangeAllowed(headsUpGroupSummary)).isFalse()
+            assertThat(notifStabilityManager.isEntryReorderingAllowed(headsUpGroupSummary))
+                .isFalse()
+            assertThat(notifStabilityManager.isSectionChangeAllowed(headsUpGroupSummary)).isFalse()
+        }
+
+    @Test
+    fun notificationInNonHUNGroup_changesAllowed_onReorderingEnabled() =
+        testScope.runTest {
+            assumeTrue(StabilizeHeadsUpGroup.isEnabled)
+            // GIVEN - reordering is allowed.
+            setPulsing(false)
+            setPanelExpanded(false)
+
+            //  GIVEN - there is a group heads-up.
+            val headsUpGroupKey = "heads_up_group_key"
+            underTest.setHeadsUpGroupKeys(setOf(headsUpGroupKey))
+            headsUpRepository.setHeadsUpKeys(headsUpGroupKey)
+
+            // GIVEN - non HUN parent Group Summary
+            val groupSummary: NotificationEntry = mock()
+            whenever(groupSummary.key).thenReturn("non_heads_up_group_key")
+            whenever(groupSummary.isSummaryWithChildren).thenReturn(true)
+
+            val nonHeadsUpGroupEntry: GroupEntry = mock()
+            whenever(nonHeadsUpGroupEntry.summary).thenReturn(groupSummary)
+            whenever(nonHeadsUpGroupEntry.representativeEntry).thenReturn(groupSummary)
+
+            // GIVEN - child entry in a non heads-up group.
+            val childEntry: NotificationEntry = mock()
+            whenever(childEntry.rowIsChildInGroup()).thenReturn(true)
+            whenever(childEntry.parent).thenReturn(nonHeadsUpGroupEntry)
+            whenever(childEntry.parent).thenReturn(nonHeadsUpGroupEntry)
+
+            // THEN
+            assertThat(notifStabilityManager.isGroupChangeAllowed(childEntry)).isTrue()
+            assertThat(notifStabilityManager.isSectionChangeAllowed(childEntry)).isTrue()
+            assertThat(notifStabilityManager.isEntryReorderingAllowed(nonHeadsUpGroupEntry))
+                .isTrue()
+        }
+
+    @Test
+    fun notificationInHUNGroup_changesDisallowed_reorderingEnabled() =
+        testScope.runTest {
+            assumeTrue(StabilizeHeadsUpGroup.isEnabled)
+            // GIVEN - reordering is allowed.
+            setPulsing(false)
+            setPanelExpanded(false)
+
+            // GIVEN - there is a group heads-up.
+            val headsUpGroupKey = "heads_up_group_key"
+            underTest.setHeadsUpGroupKeys(setOf(headsUpGroupKey))
+            headsUpRepository.setHeadsUpKeys(headsUpGroupKey)
+
+            // GIVEN - HUN Group Summary
+            val headsUpGroupSummary: NotificationEntry = mock()
+            whenever(headsUpGroupSummary.rowIsChildInGroup()).thenReturn(false)
+            whenever(headsUpGroupSummary.key).thenReturn(headsUpGroupKey)
+            whenever(headsUpGroupSummary.isSummaryWithChildren).thenReturn(true)
+
+            val nonHeadsUpGroupEntry: GroupEntry = mock()
+            whenever(nonHeadsUpGroupEntry.summary).thenReturn(headsUpGroupSummary)
+            whenever(nonHeadsUpGroupEntry.representativeEntry).thenReturn(headsUpGroupSummary)
+
+            // GIVEN - child entry in a non heads-up group.
+            val childEntry: NotificationEntry =
+                mock<NotificationEntry>().apply { whenever(key).thenReturn("child") }
+            whenever(childEntry.rowIsChildInGroup()).thenReturn(true)
+            whenever(childEntry.parent).thenReturn(nonHeadsUpGroupEntry)
+
+            // GIVEN - HUN is in visible location
+            whenever(visibilityLocationProvider.isInVisibleLocation(headsUpGroupSummary))
+                .thenReturn(true)
+
+            // THEN
+            assertThat(notifStabilityManager.isGroupChangeAllowed(childEntry)).isFalse()
+            assertThat(notifStabilityManager.isSectionChangeAllowed(childEntry)).isFalse()
+            assertThat(notifStabilityManager.isEntryReorderingAllowed(childEntry)).isFalse()
+        }
+
+    private fun verifyStabilityManagerWasInvalidated(mode: VerificationMode) {
+        verify(invalidateListener, mode).onPluggableInvalidated(eq(notifStabilityManager), any())
+    }
+
+    private fun setActivityLaunching(activityLaunching: Boolean) {
+        kosmos.shadeAnimationInteractor.setIsLaunchingActivity(activityLaunching)
+        testScope.testScheduler.runCurrent()
+    }
+
+    private fun setPanelCollapsing(collapsing: Boolean) {
+        shadeRepository.setLegacyIsClosing(collapsing)
+        testScope.testScheduler.runCurrent()
+    }
+
+    private fun setCommunalShowing(isShowing: Boolean) {
+        val showingFlow =
+            MutableStateFlow<ObservableTransitionState>(
+                ObservableTransitionState.Idle(
+                    if (isShowing) CommunalScenes.Communal else CommunalScenes.Blank
+                )
+            )
+        kosmos.communalSceneInteractor.setTransitionState(showingFlow)
+        testScope.testScheduler.runCurrent()
+    }
+
+    private fun setQsExpanded(isExpanded: Boolean) {
+        kosmos.shadeRepository.setQsExpansion(if (isExpanded) 1.0f else 0.0f)
+        testScope.testScheduler.runCurrent()
+    }
+
+    private fun setPulsing(pulsing: Boolean) = statusBarStateListener.onPulsingChanged(pulsing)
+
+    private fun setFullyDozed(fullyDozed: Boolean) {
+        val dozeAmount = if (fullyDozed) 1f else 0f
+        statusBarStateListener.onDozeAmountChanged(dozeAmount, dozeAmount)
+    }
+
+    private fun setSleepy(sleepy: Boolean) {
+        if (sleepy) {
+            wakefulnessObserver.onFinishedGoingToSleep()
+        } else {
+            wakefulnessObserver.onStartedWakingUp()
+        }
+    }
+
+    private suspend fun setPanelExpanded(expanded: Boolean) =
+        setPanelExpandedAndLockscreenShowing(expanded, /* lockscreenShowing= */ 0.0f)
+
+    private suspend fun setLockscreenShowing(lockscreenShowing: Float) =
+        setPanelExpandedAndLockscreenShowing(/* panelExpanded= */ false, lockscreenShowing)
+
+    private suspend fun setPanelExpandedAndLockscreenShowing(
+        panelExpanded: Boolean,
+        lockscreenShowing: Float,
+    ) {
+        if (SceneContainerFlag.isEnabled) {
+            statusBarStateListener.onExpandedChanged(panelExpanded)
+            kosmos.fakeKeyguardTransitionRepository.sendTransitionStep(
+                makeLockscreenTransitionStep(lockscreenShowing),
+                /* validateStep = */ false,
+            )
+        } else {
+            statusBarStateListener.onExpandedChanged(panelExpanded || lockscreenShowing > 0.0f)
+        }
+    }
+
+    private fun makeLockscreenTransitionStep(value: Float): TransitionStep {
+        return when (value) {
+            0.0f -> TransitionStep(KeyguardState.GONE)
+            1.0f -> TransitionStep(KeyguardState.LOCKSCREEN)
+            else ->
+                TransitionStep(
+                    KeyguardState.GONE,
+                    KeyguardState.LOCKSCREEN,
+                    value,
+                    TransitionState.RUNNING,
+                )
+        }
+    }
+}
+
+private fun FakeHeadsUpNotificationRepository.setHeadsUpKeys(vararg keys: String) {
+    setNotifications(keys.map { FakeHeadsUpRowRepository(key = it) })
+}
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/render/GroupExpansionManagerTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/render/GroupExpansionManagerTest.kt
index 3dd0982..8e6aedca 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/render/GroupExpansionManagerTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/render/GroupExpansionManagerTest.kt
@@ -17,6 +17,7 @@
 package com.android.systemui.statusbar.notification.collection.render
 
 import android.os.Build
+import android.os.UserHandle
 import android.platform.test.annotations.DisableFlags
 import android.platform.test.annotations.EnableFlags
 import android.platform.test.flag.junit.SetFlagsRule
@@ -29,9 +30,12 @@
 import com.android.systemui.statusbar.notification.collection.GroupEntryBuilder
 import com.android.systemui.statusbar.notification.collection.ListEntry
 import com.android.systemui.statusbar.notification.collection.NotifPipeline
+import com.android.systemui.statusbar.notification.collection.NotificationEntry
 import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder
 import com.android.systemui.statusbar.notification.collection.listbuilder.OnBeforeRenderListListener
 import com.android.systemui.statusbar.notification.collection.render.GroupExpansionManager.OnGroupExpansionChangeListener
+import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow
+import com.android.systemui.statusbar.notification.row.NotificationTestHelper
 import com.android.systemui.statusbar.notification.shared.NotificationBundleUi
 import com.android.systemui.util.mockito.any
 import com.android.systemui.util.mockito.mock
@@ -55,56 +59,58 @@
 
     private lateinit var underTest: GroupExpansionManagerImpl
 
+    private lateinit var testHelper: NotificationTestHelper
     private val dumpManager: DumpManager = mock()
     private val groupMembershipManager: GroupMembershipManager = mock()
 
     private val pipeline: NotifPipeline = mock()
     private lateinit var beforeRenderListListener: OnBeforeRenderListListener
 
-    private val summary1 = notificationSummaryEntry("foo", 1)
-    private val summary2 = notificationSummaryEntry("bar", 1)
-    private val entries =
-        listOf<ListEntry>(
-            GroupEntryBuilder()
-                .setSummary(summary1)
-                .setChildren(
-                    listOf(
-                        notificationEntry("foo", 2),
-                        notificationEntry("foo", 3),
-                        notificationEntry("foo", 4)
-                    )
-                )
-                .build(),
-            GroupEntryBuilder()
-                .setSummary(summary2)
-                .setChildren(
-                    listOf(
-                        notificationEntry("bar", 2),
-                        notificationEntry("bar", 3),
-                        notificationEntry("bar", 4)
-                    )
-                )
-                .build(),
-            notificationEntry("baz", 1)
-        )
+    private lateinit var summary1: NotificationEntry
+    private lateinit var summary2: NotificationEntry
+    private lateinit var entries: List<ListEntry>
 
-    private fun notificationEntry(pkg: String, id: Int) =
-        NotificationEntryBuilder().setPkg(pkg).setId(id).build().apply { row = mock() }
-
-    private fun notificationSummaryEntry(pkg: String, id: Int) =
-        NotificationEntryBuilder().setPkg(pkg).setId(id).setParent(GroupEntry.ROOT_ENTRY).build()
-            .apply { row = mock() }
+    private fun notificationEntry(pkg: String, id: Int, parent: ExpandableNotificationRow?) =
+        NotificationEntryBuilder().setPkg(pkg).setId(id).build().apply {
+            row = testHelper.createRow().apply {
+                setIsChildInGroup(true, parent)
+            }
+        }
 
     @Before
     fun setUp() {
+        testHelper = NotificationTestHelper(mContext, mDependency)
+
+        summary1 = testHelper.createRow().entry
+        summary2 = testHelper.createRow().entry
+        entries =
+            listOf<ListEntry>(
+                GroupEntryBuilder()
+                    .setSummary(summary1)
+                    .setChildren(
+                        listOf(
+                            notificationEntry("foo", 2, summary1.row),
+                            notificationEntry("foo", 3, summary1.row),
+                            notificationEntry("foo", 4, summary1.row)
+                        )
+                    )
+                    .build(),
+                GroupEntryBuilder()
+                    .setSummary(summary2)
+                    .setChildren(
+                        listOf(
+                            notificationEntry("bar", 2, summary2.row),
+                            notificationEntry("bar", 3, summary2.row),
+                            notificationEntry("bar", 4, summary2.row)
+                        )
+                    )
+                    .build(),
+                notificationEntry("baz", 1, null)
+            )
+
         whenever(groupMembershipManager.getGroupSummary(summary1)).thenReturn(summary1)
         whenever(groupMembershipManager.getGroupSummary(summary2)).thenReturn(summary2)
 
-        whenever(groupMembershipManager.getGroupRoot(summary1.entryAdapter))
-            .thenReturn(summary1.entryAdapter)
-        whenever(groupMembershipManager.getGroupRoot(summary2.entryAdapter))
-            .thenReturn(summary2.entryAdapter)
-
         underTest = GroupExpansionManagerImpl(dumpManager, groupMembershipManager)
     }
 
@@ -221,4 +227,15 @@
         verify(listener).onGroupExpansionChange(summary1.row, false)
         verifyNoMoreInteractions(listener)
     }
+
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    fun isGroupExpanded() {
+        underTest.setGroupExpanded(summary1.entryAdapter, true)
+
+        assertThat(underTest.isGroupExpanded(summary1.entryAdapter)).isTrue();
+        assertThat(underTest.isGroupExpanded(
+            (entries[0] as? GroupEntry)?.getChildren()?.get(0)?.entryAdapter))
+            .isTrue();
+    }
 }
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/render/GroupMembershipManagerTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/render/GroupMembershipManagerTest.kt
index dcbf44e..2bbf094 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/render/GroupMembershipManagerTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/collection/render/GroupMembershipManagerTest.kt
@@ -170,6 +170,21 @@
 
     @Test
     @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    fun isChildEntryAdapterInGroup_child() {
+        val groupKey = "group"
+        val summary =
+            NotificationEntryBuilder()
+                .setGroup(mContext, groupKey)
+                .setGroupSummary(mContext, true)
+                .build()
+        val entry = NotificationEntryBuilder().setGroup(mContext, groupKey).build()
+        GroupEntryBuilder().setKey(groupKey).setSummary(summary).addChild(entry).build()
+
+        assertThat(underTest.isChildInGroup(entry.entryAdapter)).isTrue()
+    }
+
+    @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
     fun isGroupRoot_topLevelEntry() {
         val entry = NotificationEntryBuilder().setParent(GroupEntry.ROOT_ENTRY).build()
         assertThat(underTest.isGroupRoot(entry.entryAdapter)).isFalse()
@@ -203,40 +218,4 @@
 
         assertThat(underTest.isGroupRoot(entry.entryAdapter)).isFalse()
     }
-
-    @Test
-    @EnableFlags(NotificationBundleUi.FLAG_NAME)
-    fun getGroupRoot_topLevelEntry() {
-        val entry = NotificationEntryBuilder().setParent(GroupEntry.ROOT_ENTRY).build()
-        assertThat(underTest.getGroupRoot(entry.entryAdapter)).isNull()
-    }
-
-    @Test
-    @EnableFlags(NotificationBundleUi.FLAG_NAME)
-    fun getGroupRoot_summary() {
-        val groupKey = "group"
-        val summary =
-            NotificationEntryBuilder()
-                .setGroup(mContext, groupKey)
-                .setGroupSummary(mContext, true)
-                .build()
-        GroupEntryBuilder().setKey(groupKey).setSummary(summary).build()
-
-        assertThat(underTest.getGroupRoot(summary.entryAdapter)).isEqualTo(summary.entryAdapter)
-    }
-
-    @Test
-    @EnableFlags(NotificationBundleUi.FLAG_NAME)
-    fun getGroupRoot_child() {
-        val groupKey = "group"
-        val summary =
-            NotificationEntryBuilder()
-                .setGroup(mContext, groupKey)
-                .setGroupSummary(mContext, true)
-                .build()
-        val entry = NotificationEntryBuilder().setGroup(mContext, groupKey).build()
-        GroupEntryBuilder().setKey(groupKey).setSummary(summary).addChild(entry).build()
-
-        assertThat(underTest.getGroupRoot(entry.entryAdapter)).isEqualTo(summary.entryAdapter)
-    }
 }
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/headsup/HeadsUpAnimatorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/headsup/HeadsUpAnimatorTest.kt
new file mode 100644
index 0000000..206eb89
--- /dev/null
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/headsup/HeadsUpAnimatorTest.kt
@@ -0,0 +1,87 @@
+/*
+ * Copyright (C) 2025 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.systemui.statusbar.notification.headsup
+
+import android.platform.test.annotations.EnableFlags
+import androidx.test.ext.junit.runners.AndroidJUnit4
+import androidx.test.filters.SmallTest
+import com.android.systemui.SysuiTestCase
+import com.android.systemui.res.R
+import com.google.common.truth.Truth.assertThat
+import kotlin.test.Test
+import org.junit.Before
+import org.junit.runner.RunWith
+
+@SmallTest
+@RunWith(AndroidJUnit4::class)
+@EnableFlags(NotificationsHunSharedAnimationValues.FLAG_NAME)
+class HeadsUpAnimatorTest : SysuiTestCase() {
+    @Before
+    fun setUp() {
+        context.getOrCreateTestableResources().apply {
+            this.addOverride(R.dimen.heads_up_appear_y_above_screen, TEST_Y_ABOVE_SCREEN)
+        }
+    }
+
+    @Test
+    fun getHeadsUpYTranslation_fromBottomTrue_usesBottomAndYAbove() {
+        val underTest = HeadsUpAnimator(context)
+        underTest.stackTopMargin = 30
+        underTest.headsUpAppearHeightBottom = 300
+
+        val yTranslation = underTest.getHeadsUpYTranslation(isHeadsUpFromBottom = true)
+
+        assertThat(yTranslation).isEqualTo(TEST_Y_ABOVE_SCREEN + 300)
+    }
+
+    @Test
+    fun getHeadsUpYTranslation_fromBottomFalse_usesTopMarginAndYAbove() {
+        val underTest = HeadsUpAnimator(context)
+        underTest.stackTopMargin = 30
+        underTest.headsUpAppearHeightBottom = 300
+
+        val yTranslation = underTest.getHeadsUpYTranslation(isHeadsUpFromBottom = false)
+
+        assertThat(yTranslation).isEqualTo(-30 - TEST_Y_ABOVE_SCREEN)
+    }
+
+    @Test
+    fun getHeadsUpYTranslation_resourcesUpdated() {
+        val underTest = HeadsUpAnimator(context)
+        underTest.stackTopMargin = 30
+        underTest.headsUpAppearHeightBottom = 300
+
+        val yTranslation = underTest.getHeadsUpYTranslation(isHeadsUpFromBottom = true)
+
+        assertThat(yTranslation).isEqualTo(TEST_Y_ABOVE_SCREEN + 300)
+
+        // WHEN the resource is updated
+        val newYAbove = 600
+        context.getOrCreateTestableResources().apply {
+            this.addOverride(R.dimen.heads_up_appear_y_above_screen, newYAbove)
+        }
+        underTest.updateResources(context)
+
+        // THEN HeadsUpAnimator knows about it
+        assertThat(underTest.getHeadsUpYTranslation(isHeadsUpFromBottom = true))
+            .isEqualTo(newYAbove + 300)
+    }
+
+    companion object {
+        private const val TEST_Y_ABOVE_SCREEN = 50
+    }
+}
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowControllerTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowControllerTest.kt
index 25ae13f..f060cae 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowControllerTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowControllerTest.kt
@@ -21,6 +21,7 @@
 import android.net.Uri
 import android.os.UserHandle
 import android.os.UserHandle.USER_ALL
+import android.service.notification.StatusBarNotification
 import android.testing.TestableLooper
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.SmallTest
@@ -36,6 +37,7 @@
 import com.android.systemui.statusbar.SbnBuilder
 import com.android.systemui.statusbar.SmartReplyController
 import com.android.systemui.statusbar.notification.ColorUpdateLogger
+import com.android.systemui.statusbar.notification.collection.EntryAdapter
 import com.android.systemui.statusbar.notification.collection.NotificationEntry
 import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder
 import com.android.systemui.statusbar.notification.collection.provider.NotificationDismissibilityProvider
@@ -229,6 +231,10 @@
     @Test
     fun registerSettingsListener_forBubbles() {
         controller.init(mock(NotificationEntry::class.java))
+        val entryAdapter = mock(EntryAdapter::class.java)
+        whenever(entryAdapter.sbn).thenReturn(mock(StatusBarNotification::class.java))
+        whenever(view.entryAdapter).thenReturn(entryAdapter)
+
         val viewStateObserver = withArgCaptor {
             verify(view).addOnAttachStateChangeListener(capture())
         }
@@ -239,6 +245,9 @@
     @Test
     fun unregisterSettingsListener_forBubbles() {
         controller.init(mock(NotificationEntry::class.java))
+        val entryAdapter = mock(EntryAdapter::class.java)
+        whenever(entryAdapter.sbn).thenReturn(mock(StatusBarNotification::class.java))
+        whenever(view.entryAdapter).thenReturn(entryAdapter)
         val viewStateObserver = withArgCaptor {
             verify(view).addOnAttachStateChangeListener(capture())
         }
@@ -255,6 +264,7 @@
 
     @Test
     fun settingsListener_invalidUserId() {
+        whenever(view.entryAdapter).thenReturn(mock(EntryAdapter::class.java))
         controller.mSettingsListener.onSettingChanged(BUBBLES_SETTING_URI, -1000, "1")
         controller.mSettingsListener.onSettingChanged(BUBBLES_SETTING_URI, -1000, null)
 
@@ -265,6 +275,12 @@
     fun settingsListener_validUserId() {
         val childView: NotificationContentView = mock()
         whenever(view.privateLayout).thenReturn(childView)
+        val entryAdapter = mock(EntryAdapter::class.java)
+        val sbn =
+            SbnBuilder().setNotification(Notification.Builder(mContext).build())
+                .setUser(UserHandle.of(view.entry.sbn.userId)).build()
+        whenever(entryAdapter.sbn).thenReturn(sbn)
+        whenever(view.entryAdapter).thenReturn(entryAdapter)
 
         controller.mSettingsListener.onSettingChanged(
             BUBBLES_SETTING_URI,
@@ -293,6 +309,9 @@
             .thenReturn(
                 NotificationEntryBuilder().setSbn(sbn).setUser(UserHandle.of(USER_ALL)).build()
             )
+        val entryAdapter = mock(EntryAdapter::class.java)
+        whenever(entryAdapter.sbn).thenReturn(sbn)
+        whenever(view.entryAdapter).thenReturn(entryAdapter)
 
         controller.mSettingsListener.onSettingChanged(BUBBLES_SETTING_URI, 9, "1")
         verify(childView).setBubblesEnabledForUser(true)
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowDragControllerTest.java b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowDragControllerTest.java
index 979a1d0..fd49f60 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowDragControllerTest.java
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowDragControllerTest.java
@@ -79,6 +79,7 @@
         mRow = spy(mNotificationTestHelper.createRow());
         Notification notification = mRow.getEntry().getSbn().getNotification();
         notification.contentIntent = mock(PendingIntent.class);
+        when(notification.contentIntent.isActivity()).thenReturn(true);
         doReturn(true).when(mRow).startDragAndDrop(any(), any(), any(), anyInt());
         mGroupRow = mNotificationTestHelper.createGroup(4);
         when(mMenuRow.getLongpressMenuItem(any(Context.class))).thenReturn(mMenuItem);
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/row/NotificationTestHelper.java b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/row/NotificationTestHelper.java
index f2131da..c376fad 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/row/NotificationTestHelper.java
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/row/NotificationTestHelper.java
@@ -70,6 +70,8 @@
 import com.android.systemui.statusbar.SmartReplyController;
 import com.android.systemui.statusbar.notification.ColorUpdateLogger;
 import com.android.systemui.statusbar.notification.ConversationNotificationProcessor;
+import com.android.systemui.statusbar.notification.collection.GroupEntry;
+import com.android.systemui.statusbar.notification.collection.GroupEntryBuilder;
 import com.android.systemui.statusbar.notification.collection.NotificationEntry;
 import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
 import com.android.systemui.statusbar.notification.collection.notifcollection.CommonNotifCollection;
@@ -101,10 +103,12 @@
 
 import kotlin.coroutines.CoroutineContext;
 
+import kotlinx.coroutines.flow.StateFlowKt;
 import kotlinx.coroutines.test.TestScope;
 
 import org.mockito.ArgumentCaptor;
 
+import java.util.List;
 import java.util.Objects;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.Executor;
@@ -166,11 +170,21 @@
         this(context, dependency, testLooper, new FakeFeatureFlagsClassic());
     }
 
+
     public NotificationTestHelper(
             Context context,
             TestableDependency dependency,
             @Nullable TestableLooper testLooper,
             @NonNull FakeFeatureFlagsClassic featureFlags) {
+        this(context, dependency, testLooper, featureFlags, mockHeadsUpManager());
+    }
+
+    public NotificationTestHelper(
+            Context context,
+            TestableDependency dependency,
+            @Nullable TestableLooper testLooper,
+            @NonNull FakeFeatureFlagsClassic featureFlags,
+            @NonNull HeadsUpManager headsUpManager) {
         mContext = context;
         mFeatureFlags = Objects.requireNonNull(featureFlags);
         dependency.injectTestDependency(FeatureFlagsClassic.class, mFeatureFlags);
@@ -182,7 +196,7 @@
         mKeyguardBypassController = mock(KeyguardBypassController.class);
         mGroupMembershipManager = mock(GroupMembershipManager.class);
         mGroupExpansionManager = mock(GroupExpansionManager.class);
-        mHeadsUpManager = mock(HeadsUpManager.class);
+        mHeadsUpManager = headsUpManager;
         mIconManager = new IconManager(
                 mock(CommonNotifCollection.class),
                 mock(LauncherApps.class),
@@ -327,6 +341,46 @@
     }
 
     /**
+     * Returns an {@link GroupEntry} group with the given number of child
+     * notifications.
+     */
+    public GroupEntry createGroupEntry(int numChildren,
+            @Nullable List<NotificationEntry> additionalChildren) {
+        Notification summary = new Notification.Builder(mContext, "")
+                .setSmallIcon(R.drawable.ic_person)
+                .setGroupSummary(true)
+                .setGroup(GROUP_KEY)
+                .build();
+
+        NotificationEntry summaryEntry = new NotificationEntryBuilder()
+                .setPkg(PKG)
+                .setOpPkg(PKG)
+                .setId(mId++)
+                .setUid(UID)
+                .setInitialPid(2000)
+                .setNotification(summary)
+                .setParent(GroupEntry.ROOT_ENTRY)
+                .build();
+        GroupEntryBuilder groupEntry = new GroupEntryBuilder()
+                .setSummary(summaryEntry);
+
+        for (int i = 0; i < numChildren; i++) {
+            NotificationEntry child = new NotificationEntryBuilder()
+                    .setParent(GroupEntry.ROOT_ENTRY)
+                    .setNotification(new Notification.Builder(mContext, "")
+                            .setSmallIcon(R.drawable.ic_person)
+                            .setGroup(GROUP_KEY)
+                            .build())
+                    .build();
+            groupEntry.addChild(child);
+        }
+        for (NotificationEntry entry : additionalChildren) {
+            groupEntry.addChild(entry);
+        }
+        return groupEntry.build();
+    }
+
+    /**
      * Returns an {@link ExpandableNotificationRow} group with the given number of child
      * notifications.
      */
@@ -400,6 +454,23 @@
     }
 
     /**
+     * Returns an {@link NotificationEntry} that should be shown as a bubble and is part
+     * of a group of notifications.
+     */
+    public NotificationEntry createBubbleEntryInGroup() throws Exception {
+        Notification n = createNotification(false /* isGroupSummary */,
+                GROUP_KEY /* groupKey */,
+                makeBubbleMetadata(null /* deleteIntent */, false /* autoExpand */));
+        n.flags |= FLAG_BUBBLE;
+        NotificationEntry entry = generateEntry(n, PKG, UID, USER_HANDLE,
+                mDefaultInflationFlags, IMPORTANCE_HIGH);
+        modifyRanking(entry)
+                .setCanBubble(true)
+                .build();
+        return entry;
+    }
+
+    /**
      * Returns an {@link ExpandableNotificationRow} that should be shown as a bubble and is part
      * of a group of notifications.
      */
@@ -562,6 +633,41 @@
         return mKeyguardBypassController;
     }
 
+    private NotificationEntry generateEntry(
+            Notification notification,
+            String pkg,
+            int uid,
+            UserHandle userHandle,
+            @InflationFlag int extraInflationFlags,
+            int importance)
+            throws Exception {
+        final NotificationChannel channel =
+                new NotificationChannel(
+                        notification.getChannelId(),
+                        notification.getChannelId(),
+                        importance);
+        channel.setBlockable(true);
+
+        NotificationEntry entry = new NotificationEntryBuilder()
+                .setPkg(pkg)
+                .setOpPkg(pkg)
+                .setId(mId++)
+                .setUid(uid)
+                .setInitialPid(2000)
+                .setNotification(notification)
+                .setUser(userHandle)
+                .setPostTime(System.currentTimeMillis())
+                .setChannel(channel)
+                .updateRanking(rankingBuilder -> rankingBuilder.setIsConversation(
+                        notification.isStyle(Notification.MessagingStyle.class)
+                ))
+                .build();
+
+
+        return entry;
+    }
+
+
     private ExpandableNotificationRow generateRow(
             Notification notification,
             String pkg,
@@ -689,6 +795,12 @@
                 .build();
     }
 
+    private static HeadsUpManager mockHeadsUpManager() {
+        HeadsUpManager mock = mock(HeadsUpManager.class);
+        when(mock.isTrackingHeadsUp()).thenReturn(StateFlowKt.MutableStateFlow(false));
+        return mock;
+    }
+
     private static class MockSmartReplyInflater implements SmartReplyStateInflater {
         @Override
         public InflatedSmartReplyState inflateSmartReplyState(NotificationEntry entry) {
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/AmbientStateTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/AmbientStateTest.kt
index 92b8c3a..13da04e 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/AmbientStateTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/AmbientStateTest.kt
@@ -24,6 +24,7 @@
 import com.android.systemui.flags.andSceneContainer
 import com.android.systemui.shade.transition.LargeScreenShadeInterpolator
 import com.android.systemui.statusbar.StatusBarState
+import com.android.systemui.statusbar.notification.data.repository.HeadsUpRepository
 import com.android.systemui.statusbar.notification.headsup.AvalancheController
 import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager
 import com.android.systemui.util.mockito.mock
@@ -47,6 +48,7 @@
     private val statusBarKeyguardViewManager = mock<StatusBarKeyguardViewManager>()
     private val largeScreenShadeInterpolator = mock<LargeScreenShadeInterpolator>()
     private val avalancheController = mock<AvalancheController>()
+    private val headsupRepository = mock<HeadsUpRepository>()
 
     private lateinit var sut: AmbientState
 
@@ -72,6 +74,7 @@
                 bypassController,
                 statusBarKeyguardViewManager,
                 largeScreenShadeInterpolator,
+                headsupRepository,
                 avalancheController,
             )
     }
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/MagneticNotificationRowManagerImplTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/MagneticNotificationRowManagerImplTest.kt
index 885e71e..ccc8be7 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/MagneticNotificationRowManagerImplTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/MagneticNotificationRowManagerImplTest.kt
@@ -80,7 +80,7 @@
             // THEN the magnetic and roundable targets are defined and the state is TARGETS_SET
             assertThat(underTest.currentState).isEqualTo(State.TARGETS_SET)
             assertThat(underTest.currentMagneticListeners.isNotEmpty()).isTrue()
-            assertThat(underTest.currentRoundableTargets).isNotNull()
+            assertThat(underTest.isSwipedViewRoundableSet).isTrue()
         }
 
     @Test
@@ -281,6 +281,19 @@
             assertThat(magneticAnimationsCancelled[neighborIndex]).isTrue()
         }
 
+    @Test
+    fun onResetRoundness_swipedRoundableGetsCleared() =
+        kosmos.testScope.runTest {
+            // GIVEN targets are set
+            setTargets()
+
+            // WHEN we reset the roundness
+            underTest.resetRoundness()
+
+            // THEN the swiped roundable gets cleared
+            assertThat(underTest.isSwipedViewRoundableSet).isFalse()
+        }
+
     @After
     fun tearDown() {
         // We reset the manager so that all MagneticRowListener can cancel all animations
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/NotificationStackSizeCalculatorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/NotificationStackSizeCalculatorTest.kt
index 4b8a0c2..f7bbf98 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/NotificationStackSizeCalculatorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/NotificationStackSizeCalculatorTest.kt
@@ -29,6 +29,7 @@
 import com.android.systemui.statusbar.LockscreenShadeTransitionController
 import com.android.systemui.statusbar.StatusBarState
 import com.android.systemui.statusbar.SysuiStatusBarStateController
+import com.android.systemui.statusbar.notification.collection.EntryAdapter
 import com.android.systemui.statusbar.notification.collection.NotificationEntry
 import com.android.systemui.statusbar.notification.domain.interactor.SeenNotificationsInteractor
 import com.android.systemui.statusbar.notification.promoted.PromotedNotificationUiForceExpanded
@@ -436,6 +437,9 @@
         val row = mock(ExpandableNotificationRow::class.java)
         val entry = mock(NotificationEntry::class.java)
         whenever(entry.isStickyAndNotDemoted).thenReturn(isSticky)
+        val entryAdapter = mock(EntryAdapter::class.java)
+        whenever(entryAdapter.canPeek()).thenReturn(isSticky)
+        whenever(row.entryAdapter).thenReturn(entryAdapter)
         val sbn = mock(StatusBarNotification::class.java)
         whenever(entry.sbn).thenReturn(sbn)
         whenever(row.entry).thenReturn(entry)
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithmTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithmTest.kt
index 7603eec..9545150 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithmTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithmTest.kt
@@ -20,11 +20,15 @@
 import com.android.systemui.statusbar.NotificationShelf
 import com.android.systemui.statusbar.StatusBarState
 import com.android.systemui.statusbar.notification.RoundableState
+import com.android.systemui.statusbar.notification.collection.EntryAdapter
 import com.android.systemui.statusbar.notification.collection.NotificationEntry
+import com.android.systemui.statusbar.notification.data.repository.HeadsUpRepository
 import com.android.systemui.statusbar.notification.emptyshade.ui.view.EmptyShadeView
 import com.android.systemui.statusbar.notification.footer.ui.view.FooterView
 import com.android.systemui.statusbar.notification.footer.ui.view.FooterView.FooterViewState
 import com.android.systemui.statusbar.notification.headsup.AvalancheController
+import com.android.systemui.statusbar.notification.headsup.HeadsUpAnimator
+import com.android.systemui.statusbar.notification.headsup.NotificationsHunSharedAnimationValues
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow
 import com.android.systemui.statusbar.notification.row.ExpandableView
 import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager
@@ -53,12 +57,15 @@
     private val avalancheController = mock<AvalancheController>()
 
     private val hostView = FrameLayout(context)
-    private val stackScrollAlgorithm = StackScrollAlgorithm(context, hostView)
+    private lateinit var headsUpAnimator: HeadsUpAnimator
+    private lateinit var stackScrollAlgorithm: StackScrollAlgorithm
     private val notificationRow = mock<ExpandableNotificationRow>()
     private val notificationEntry = mock<NotificationEntry>()
+    private val notificationEntryAdapter = mock<EntryAdapter>()
     private val dumpManager = mock<DumpManager>()
     private val mStatusBarKeyguardViewManager = mock<StatusBarKeyguardViewManager>()
     private val notificationShelf = mock<NotificationShelf>()
+    private val headsUpRepository = mock<HeadsUpRepository>()
     private val emptyShadeView =
         EmptyShadeView(context, /* attrs= */ null).apply {
             layout(/* l= */ 0, /* t= */ 0, /* r= */ 100, /* b= */ 100)
@@ -72,6 +79,7 @@
             /* bypassController */ { false },
             mStatusBarKeyguardViewManager,
             largeScreenShadeInterpolator,
+            headsUpRepository,
             avalancheController,
         )
 
@@ -96,7 +104,10 @@
         @JvmStatic
         @Parameters(name = "{0}")
         fun getParams(): List<FlagsParameterization> {
-            return FlagsParameterization.allCombinationsOf().andSceneContainer()
+            return FlagsParameterization.allCombinationsOf(
+                    NotificationsHunSharedAnimationValues.FLAG_NAME
+                )
+                .andSceneContainer()
         }
     }
 
@@ -109,13 +120,24 @@
         Assume.assumeFalse(isTv())
         mDependency.injectTestDependency(FeatureFlags::class.java, featureFlags)
         whenever(notificationShelf.viewState).thenReturn(ExpandableViewState())
+        whenever(notificationRow.key).thenReturn("key")
         whenever(notificationRow.viewState).thenReturn(ExpandableViewState())
         whenever(notificationRow.entry).thenReturn(notificationEntry)
+        whenever(notificationRow.entryAdapter).thenReturn(notificationEntryAdapter)
         whenever(notificationRow.roundableState)
             .thenReturn(RoundableState(notificationRow, notificationRow, 0f))
         ambientState.isSmallScreen = true
 
         hostView.addView(notificationRow)
+
+        if (NotificationsHunSharedAnimationValues.isEnabled) {
+             headsUpAnimator = HeadsUpAnimator(context)
+        }
+        stackScrollAlgorithm = StackScrollAlgorithm(
+            context,
+            hostView,
+            if (::headsUpAnimator.isInitialized) headsUpAnimator else null,
+        )
     }
 
     private fun isTv(): Boolean {
@@ -396,7 +418,11 @@
         ambientState.setLayoutMinHeight(2500) // Mock the height of shade
         ambientState.stackY = 2500f // Scroll over the max translation
         stackScrollAlgorithm.setIsExpanded(true) // Mark the shade open
-        stackScrollAlgorithm.setHeadsUpAppearHeightBottom(bottomOfScreen.toInt())
+        if (NotificationsHunSharedAnimationValues.isEnabled) {
+            headsUpAnimator.headsUpAppearHeightBottom = bottomOfScreen.toInt()
+        } else {
+            stackScrollAlgorithm.setHeadsUpAppearHeightBottom(bottomOfScreen.toInt())
+        }
         whenever(notificationRow.mustStayOnScreen()).thenReturn(true)
         whenever(notificationRow.isHeadsUp).thenReturn(true)
         whenever(notificationRow.isAboveShelf).thenReturn(true)
@@ -412,6 +438,9 @@
         val topMargin = 100f
         ambientState.maxHeadsUpTranslation = 2000f
         ambientState.stackTopMargin = topMargin.toInt()
+        if (NotificationsHunSharedAnimationValues.isEnabled) {
+            headsUpAnimator.stackTopMargin = topMargin.toInt()
+        }
         whenever(notificationRow.intrinsicHeight).thenReturn(100)
         whenever(notificationRow.isHeadsUpAnimatingAway).thenReturn(true)
 
@@ -452,7 +481,11 @@
     @Test
     fun resetViewStates_hunsOverlapping_bottomHunClipped() {
         val topHun = mockExpandableNotificationRow()
+        whenever(topHun.key).thenReturn("key")
+        whenever(topHun.entryAdapter).thenReturn(notificationEntryAdapter)
         val bottomHun = mockExpandableNotificationRow()
+        whenever(bottomHun.key).thenReturn("key")
+        whenever(bottomHun.entryAdapter).thenReturn(notificationEntryAdapter)
         whenever(topHun.isHeadsUp).thenReturn(true)
         whenever(topHun.isPinned).thenReturn(true)
         whenever(bottomHun.isHeadsUp).thenReturn(true)
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/StackStateAnimatorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/StackStateAnimatorTest.kt
index e7be20e..4a761917 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/StackStateAnimatorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/stack/StackStateAnimatorTest.kt
@@ -16,12 +16,16 @@
 
 package com.android.systemui.statusbar.notification.stack
 
+import android.platform.test.annotations.DisableFlags
+import android.platform.test.annotations.EnableFlags
 import android.testing.TestableLooper.RunWithLooper
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.SmallTest
 import com.android.systemui.SysuiTestCase
 import com.android.systemui.animation.AnimatorTestRule
 import com.android.systemui.res.R
+import com.android.systemui.statusbar.notification.headsup.HeadsUpAnimator
+import com.android.systemui.statusbar.notification.headsup.NotificationsHunSharedAnimationValues
 import com.android.systemui.statusbar.notification.row.ExpandableView
 import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayout.AnimationEvent
 import com.android.systemui.statusbar.notification.stack.StackStateAnimator.ANIMATION_DURATION_HEADS_UP_APPEAR
@@ -49,10 +53,10 @@
 @RunWith(AndroidJUnit4::class)
 @RunWithLooper
 class StackStateAnimatorTest : SysuiTestCase() {
-
     @get:Rule val animatorTestRule = AnimatorTestRule(this)
 
     private lateinit var stackStateAnimator: StackStateAnimator
+    private lateinit var headsUpAnimator: HeadsUpAnimator
     private val stackScroller: NotificationStackScrollLayout = mock()
     private val view: ExpandableView = mock()
     private val viewState: ExpandableViewState =
@@ -69,11 +73,20 @@
 
         whenever(stackScroller.context).thenReturn(context)
         whenever(view.viewState).thenReturn(viewState)
-        stackStateAnimator = StackStateAnimator(mContext, stackScroller)
+
+        if (NotificationsHunSharedAnimationValues.isEnabled) {
+            headsUpAnimator = HeadsUpAnimator(context)
+        }
+        stackStateAnimator = StackStateAnimator(
+            mContext,
+            stackScroller,
+            if (::headsUpAnimator.isInitialized) headsUpAnimator else null,
+        )
     }
 
     @Test
-    fun startAnimationForEvents_headsUpFromTop_startsHeadsUpAppearAnim() {
+    @DisableFlags(NotificationsHunSharedAnimationValues.FLAG_NAME)
+    fun startAnimationForEvents_headsUpFromTop_startsHeadsUpAppearAnim_flagOff() {
         val topMargin = 50f
         val expectedStartY = -topMargin - stackStateAnimator.mHeadsUpAppearStartAboveScreen
         val event = AnimationEvent(view, AnimationEvent.ANIMATION_TYPE_HEADS_UP_APPEAR)
@@ -94,7 +107,30 @@
     }
 
     @Test
-    fun startAnimationForEvents_headsUpFromBottom_startsHeadsUpAppearAnim() {
+    @EnableFlags(NotificationsHunSharedAnimationValues.FLAG_NAME)
+    fun startAnimationForEvents_headsUpFromTop_startsHeadsUpAppearAnim_flagOn() {
+        val topMargin = 50f
+        val expectedStartY = -topMargin - HEADS_UP_ABOVE_SCREEN
+        val event = AnimationEvent(view, AnimationEvent.ANIMATION_TYPE_HEADS_UP_APPEAR)
+        headsUpAnimator.stackTopMargin = topMargin.toInt()
+
+        stackStateAnimator.startAnimationForEvents(arrayListOf(event), 0)
+
+        verify(view).setFinalActualHeight(VIEW_HEIGHT)
+        verify(view, description("should animate from the top")).translationY = expectedStartY
+        verify(view)
+            .performAddAnimation(
+                /* delay= */ 0L,
+                /* duration= */ ANIMATION_DURATION_HEADS_UP_APPEAR.toLong(),
+                /* isHeadsUpAppear= */ true,
+                /* isHeadsUpCycling= */ false,
+                /* onEndRunnable= */ null,
+            )
+    }
+
+    @Test
+    @DisableFlags(NotificationsHunSharedAnimationValues.FLAG_NAME)
+    fun startAnimationForEvents_headsUpFromBottom_startsHeadsUpAppearAnim_flagOff() {
         val screenHeight = 2000f
         val expectedStartY = screenHeight + stackStateAnimator.mHeadsUpAppearStartAboveScreen
         val event =
@@ -118,7 +154,63 @@
     }
 
     @Test
-    fun startAnimationForEvents_startsHeadsUpDisappearAnim() {
+    @EnableFlags(NotificationsHunSharedAnimationValues.FLAG_NAME)
+    fun startAnimationForEvents_headsUpFromBottom_startsHeadsUpAppearAnim_flagOn() {
+        val screenHeight = 2000f
+        val expectedStartY = screenHeight + HEADS_UP_ABOVE_SCREEN
+        val event =
+            AnimationEvent(view, AnimationEvent.ANIMATION_TYPE_HEADS_UP_APPEAR).apply {
+                headsUpFromBottom = true
+            }
+        headsUpAnimator.headsUpAppearHeightBottom = screenHeight.toInt()
+
+        stackStateAnimator.startAnimationForEvents(arrayListOf(event), 0)
+
+        verify(view).setFinalActualHeight(VIEW_HEIGHT)
+        verify(view, description("should animate from the bottom")).translationY = expectedStartY
+        verify(view)
+            .performAddAnimation(
+                /* delay= */ 0L,
+                /* duration= */ ANIMATION_DURATION_HEADS_UP_APPEAR.toLong(),
+                /* isHeadsUpAppear= */ true,
+                /* isHeadsUpCycling= */ false,
+                /* onEndRunnable= */ null,
+            )
+    }
+
+    @Test
+    @DisableFlags(NotificationsHunSharedAnimationValues.FLAG_NAME)
+    fun startAnimationForEvents_startsHeadsUpDisappearAnim_flagOff() {
+        val disappearDuration = ANIMATION_DURATION_HEADS_UP_DISAPPEAR.toLong()
+        val event = AnimationEvent(view, AnimationEvent.ANIMATION_TYPE_HEADS_UP_DISAPPEAR)
+        clearInvocations(view)
+        stackStateAnimator.startAnimationForEvents(arrayListOf(event), 0)
+
+        verify(view)
+            .performRemoveAnimation(
+                /* duration= */ eq(disappearDuration),
+                /* delay= */ eq(0L),
+                /* translationDirection= */ eq(0f),
+                /* isHeadsUpAnimation= */ eq(true),
+                /* isHeadsUpCycling= */ eq(false),
+                /* onStartedRunnable= */ any(),
+                /* onFinishedRunnable= */ runnableCaptor.capture(),
+                /* animationListener= */ any(),
+                /* clipSide= */ eq(ExpandableView.ClipSide.BOTTOM),
+            )
+
+        animatorTestRule.advanceTimeBy(disappearDuration) // move to the end of SSA animations
+        runnableCaptor.value.run() // execute the end runnable
+
+        verify(view, description("should be translated to the heads up appear start"))
+            .translationY = -stackStateAnimator.mHeadsUpAppearStartAboveScreen
+        verify(view, description("should be called at the end of the disappear animation"))
+            .removeFromTransientContainer()
+    }
+
+    @Test
+    @EnableFlags(NotificationsHunSharedAnimationValues.FLAG_NAME)
+    fun startAnimationForEvents_startsHeadsUpDisappearAnim_flagOn() {
         val disappearDuration = ANIMATION_DURATION_HEADS_UP_DISAPPEAR.toLong()
         val event = AnimationEvent(view, AnimationEvent.ANIMATION_TYPE_HEADS_UP_DISAPPEAR)
         clearInvocations(view)
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/phone/HeadsUpAppearanceControllerTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/phone/HeadsUpAppearanceControllerTest.kt
index bd76268..6a56716 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/phone/HeadsUpAppearanceControllerTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/phone/HeadsUpAppearanceControllerTest.kt
@@ -388,7 +388,7 @@
 
         // Pulsing: Enabled
         row.isHeadsUp = true
-        underTest.updateHeadsUpAndPulsingRoundness(entry)
+        underTest.updateHeadsUpAndPulsingRoundness(row)
 
         val debugString: String = row.roundableState.debugString()
         // If Pulsing is enabled, roundness should be set to 1
@@ -397,7 +397,7 @@
 
         // Pulsing: Disabled
         row.isHeadsUp = false
-        underTest.updateHeadsUpAndPulsingRoundness(entry)
+        underTest.updateHeadsUpAndPulsingRoundness(row)
 
         // If Pulsing is disabled, roundness should be set to 0
         assertThat(row.topRoundness.toDouble()).isWithin(0.001).of(0.0)
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/phone/StatusBarNotificationPresenterTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/phone/StatusBarNotificationPresenterTest.kt
index baea1a1..47967b3 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/phone/StatusBarNotificationPresenterTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/phone/StatusBarNotificationPresenterTest.kt
@@ -54,6 +54,7 @@
 import com.android.systemui.statusbar.notification.interruption.VisualInterruptionRefactor
 import com.android.systemui.statusbar.notification.interruption.VisualInterruptionType
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi
 import com.android.systemui.statusbar.notification.stack.notificationStackScrollLayoutController
 import com.android.systemui.statusbar.notification.visualInterruptionDecisionProvider
 import com.android.systemui.statusbar.notificationLockscreenUserManager
@@ -293,6 +294,7 @@
 
     @Test
     @EnableSceneContainer
+    @DisableFlags(NotificationBundleUi.FLAG_NAME)
     fun testExpandSensitiveNotification_onLockScreen_opensShade() =
         kosmos.runTest {
             // Given we are on the keyguard
@@ -303,11 +305,10 @@
             )
 
             // When the user expands a sensitive Notification
-            val row = createRow()
-            val entry =
-                row.entry.apply { setSensitive(/* sensitive= */ true, /* deviceSensitive= */ true) }
+            val row = createRow(createNotificationEntry())
+            row.entry.apply { setSensitive(/* sensitive= */ true, /* deviceSensitive= */ true) }
 
-            underTest.onExpandClicked(entry, mock(), /* nowExpanded= */ true)
+            underTest.onExpandClicked(row.entry, mock(), /* nowExpanded= */ true)
 
             // Then we open the locked shade
             verify(kosmos.lockscreenShadeTransitionController)
@@ -317,6 +318,32 @@
 
     @Test
     @EnableSceneContainer
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    fun testExpandSensitiveNotification_onLockScreen_opensShade_entryAdapter() =
+        kosmos.runTest {
+            // Given we are on the keyguard
+            kosmos.sysuiStatusBarStateController.state = StatusBarState.KEYGUARD
+            // And the device is locked
+            kosmos.fakeAuthenticationRepository.setAuthenticationMethod(
+                AuthenticationMethodModel.Pin
+            )
+
+            // When the user expands a sensitive Notification
+            val entry = createNotificationEntry()
+            val row = createRow(entry)
+            entry.setSensitive(/* sensitive= */ true, /* deviceSensitive= */ true)
+
+            underTest.onExpandClicked(row, row.entryAdapter, /* nowExpanded= */ true)
+
+            // Then we open the locked shade
+            verify(kosmos.lockscreenShadeTransitionController)
+                // Explicit parameters to avoid issues with Kotlin default arguments in Mockito
+                .goToLockedShade(row, true)
+        }
+
+    @Test
+    @EnableSceneContainer
+    @DisableFlags(NotificationBundleUi.FLAG_NAME)
     fun testExpandSensitiveNotification_onLockedShade_showsBouncer() =
         kosmos.runTest {
             // Given we are on the locked shade
@@ -328,7 +355,7 @@
 
             // When the user expands a sensitive Notification
             val entry =
-                createRow().entry.apply {
+                createRow(createNotificationEntry()).entry.apply {
                     setSensitive(/* sensitive= */ true, /* deviceSensitive= */ true)
                 }
             underTest.onExpandClicked(entry, mock(), /* nowExpanded= */ true)
@@ -337,6 +364,29 @@
             verify(kosmos.activityStarter).dismissKeyguardThenExecute(any(), eq(null), eq(false))
         }
 
+    @Test
+    @EnableSceneContainer
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
+    fun testExpandSensitiveNotification_onLockedShade_showsBouncer_entryAdapter() =
+        kosmos.runTest {
+            // Given we are on the locked shade
+            kosmos.sysuiStatusBarStateController.state = StatusBarState.SHADE_LOCKED
+            // And the device is locked
+            kosmos.fakeAuthenticationRepository.setAuthenticationMethod(
+                AuthenticationMethodModel.Pin
+            )
+
+            // When the user expands a sensitive Notification
+            val entry = createNotificationEntry()
+            val row = createRow(entry)
+            entry.setSensitive(/* sensitive= */ true, /* deviceSensitive= */ true)
+
+            underTest.onExpandClicked(row, row.entryAdapter, /* nowExpanded= */ true)
+
+            // Then we show the bouncer
+            verify(kosmos.activityStarter).dismissKeyguardThenExecute(any(), eq(null), eq(false))
+        }
+
     private fun createPresenter(): StatusBarNotificationPresenter {
         val initController: InitController = InitController()
         return StatusBarNotificationPresenter(
@@ -398,10 +448,13 @@
         interruptSuppressor = suppressorCaptor.lastValue
     }
 
-    private fun createRow(): ExpandableNotificationRow {
+    private fun createRow(entry: NotificationEntry): ExpandableNotificationRow {
         val row: ExpandableNotificationRow = mock()
-        val entry: NotificationEntry = createNotificationEntry()
-        whenever(row.entry).thenReturn(entry)
+        if (NotificationBundleUi.isEnabled) {
+            whenever(row.entryAdapter).thenReturn(entry.entryAdapter)
+        } else {
+            whenever(row.entry).thenReturn(entry)
+        }
         entry.row = row
         return row
     }
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/LocationBasedMobileIconViewModelTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/LocationBasedMobileIconViewModelTest.kt
index cef0824e..1797c4c 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/LocationBasedMobileIconViewModelTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/LocationBasedMobileIconViewModelTest.kt
@@ -71,7 +71,6 @@
     private val connectivityRepository = FakeConnectivityRepository()
     private val flags =
         FakeFeatureFlagsClassic().also {
-            it.set(Flags.NEW_NETWORK_SLICE_UI, false)
             it.set(Flags.FILTER_PROVISIONING_NETWORK_SUBSCRIPTIONS, true)
         }
 
@@ -133,7 +132,7 @@
                 iconsInteractor.isForceHidden,
                 repository,
                 context,
-                MobileIconCarrierIdOverridesFake()
+                MobileIconCarrierIdOverridesFake(),
             )
 
         commonImpl =
@@ -142,7 +141,6 @@
                 interactor,
                 airplaneModeInteractor,
                 constants,
-                flags,
                 testScope.backgroundScope,
             )
 
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconsViewModelTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconsViewModelTest.kt
index 46777fa..3d37914 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconsViewModelTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconsViewModelTest.kt
@@ -21,8 +21,6 @@
 import androidx.test.filters.SmallTest
 import com.android.settingslib.mobile.TelephonyIcons
 import com.android.systemui.SysuiTestCase
-import com.android.systemui.flags.FakeFeatureFlagsClassic
-import com.android.systemui.flags.Flags
 import com.android.systemui.statusbar.phone.StatusBarLocation
 import com.android.systemui.statusbar.pipeline.airplane.data.repository.FakeAirplaneModeRepository
 import com.android.systemui.statusbar.pipeline.airplane.domain.interactor.AirplaneModeInteractor
@@ -60,7 +58,6 @@
 
     private lateinit var underTest: MobileIconsViewModel
     private val interactor = FakeMobileIconsInteractor(FakeMobileMappingsProxy(), mock())
-    private val flags = FakeFeatureFlagsClassic().also { it.set(Flags.NEW_NETWORK_SLICE_UI, false) }
 
     private lateinit var airplaneModeInteractor: AirplaneModeInteractor
     @Mock private lateinit var constants: ConnectivityConstants
@@ -88,7 +85,6 @@
                 interactor,
                 airplaneModeInteractor,
                 constants,
-                flags,
                 testScope.backgroundScope,
             )
 
@@ -108,7 +104,7 @@
                         isOpportunistic = false,
                         carrierName = "Carrier 1",
                         profileClass = PROFILE_CLASS_UNSET,
-                    ),
+                    )
                 )
             assertThat(latest).isEqualTo(listOf(1))
 
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/StackedMobileIconViewModelTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/StackedMobileIconViewModelTest.kt
index 20bdebd..d7bcf88 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/StackedMobileIconViewModelTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/StackedMobileIconViewModelTest.kt
@@ -22,8 +22,6 @@
 import androidx.test.filters.SmallTest
 import com.android.systemui.SysuiTestCase
 import com.android.systemui.common.shared.model.Icon
-import com.android.systemui.flags.Flags
-import com.android.systemui.flags.fakeFeatureFlagsClassic
 import com.android.systemui.kosmos.Kosmos
 import com.android.systemui.kosmos.Kosmos.Fixture
 import com.android.systemui.kosmos.runTest
@@ -53,7 +51,6 @@
 
     @Before
     fun setUp() {
-        kosmos.fakeFeatureFlagsClassic.set(Flags.NEW_NETWORK_SLICE_UI, false)
         kosmos.underTest.activateIn(testScope)
     }
 
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/satellite/domain/interactor/DeviceBasedSatelliteInteractorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/satellite/domain/interactor/DeviceBasedSatelliteInteractorTest.kt
index 9ad2315..29c6260 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/satellite/domain/interactor/DeviceBasedSatelliteInteractorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/satellite/domain/interactor/DeviceBasedSatelliteInteractorTest.kt
@@ -16,11 +16,8 @@
 
 package com.android.systemui.statusbar.pipeline.satellite.domain.interactor
 
-import android.platform.test.annotations.DisableFlags
-import android.platform.test.annotations.EnableFlags
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.SmallTest
-import com.android.internal.telephony.flags.Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG
 import com.android.systemui.SysuiTestCase
 import com.android.systemui.coroutines.collectLastValue
 import com.android.systemui.log.core.FakeLogBuffer
@@ -71,7 +68,6 @@
     }
 
     @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun isSatelliteAllowed_falseWhenNotAllowed() =
         testScope.runTest {
             val latest by collectLastValue(underTest.isSatelliteAllowed)
@@ -84,7 +80,6 @@
         }
 
     @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun isSatelliteAllowed_trueWhenAllowed() =
         testScope.runTest {
             val latest by collectLastValue(underTest.isSatelliteAllowed)
@@ -97,33 +92,6 @@
         }
 
     @Test
-    @DisableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
-    fun isSatelliteAllowed_offWhenFlagIsOff() =
-        testScope.runTest {
-            // GIVEN feature is disabled
-
-            // Remake the interactor so the flag is read
-            underTest =
-                DeviceBasedSatelliteInteractor(
-                    repo,
-                    iconsInteractor,
-                    wifiInteractor,
-                    testScope.backgroundScope,
-                    FakeLogBuffer.Factory.create(),
-                    mock(),
-                )
-
-            val latest by collectLastValue(underTest.isSatelliteAllowed)
-
-            // WHEN satellite is allowed
-            repo.isSatelliteAllowedForCurrentLocation.value = true
-
-            // THEN the interactor returns false due to the flag value
-            assertThat(latest).isFalse()
-        }
-
-    @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun connectionState_matchesRepositoryValue() =
         testScope.runTest {
             val latest by collectLastValue(underTest.connectionState)
@@ -146,45 +114,6 @@
         }
 
     @Test
-    @DisableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
-    fun connectionState_offWhenFeatureIsDisabled() =
-        testScope.runTest {
-            // GIVEN the flag is disabled
-
-            // Remake the interactor so the flag is read
-            underTest =
-                DeviceBasedSatelliteInteractor(
-                    repo,
-                    iconsInteractor,
-                    wifiInteractor,
-                    testScope.backgroundScope,
-                    FakeLogBuffer.Factory.create(),
-                    mock(),
-                )
-
-            val latest by collectLastValue(underTest.connectionState)
-
-            // THEN the state is always Off, regardless of status in system_server
-
-            // Off
-            repo.connectionState.value = SatelliteConnectionState.Off
-            assertThat(latest).isEqualTo(SatelliteConnectionState.Off)
-
-            // On
-            repo.connectionState.value = SatelliteConnectionState.On
-            assertThat(latest).isEqualTo(SatelliteConnectionState.Off)
-
-            // Connected
-            repo.connectionState.value = SatelliteConnectionState.Connected
-            assertThat(latest).isEqualTo(SatelliteConnectionState.Off)
-
-            // Unknown
-            repo.connectionState.value = SatelliteConnectionState.Unknown
-            assertThat(latest).isEqualTo(SatelliteConnectionState.Off)
-        }
-
-    @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun signalStrength_matchesRepo() =
         testScope.runTest {
             val latest by collectLastValue(underTest.signalStrength)
@@ -203,40 +132,6 @@
         }
 
     @Test
-    @DisableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
-    fun signalStrength_zeroWhenDisabled() =
-        testScope.runTest {
-            // GIVEN the flag is enabled
-
-            // Remake the interactor so the flag is read
-            underTest =
-                DeviceBasedSatelliteInteractor(
-                    repo,
-                    iconsInteractor,
-                    wifiInteractor,
-                    testScope.backgroundScope,
-                    FakeLogBuffer.Factory.create(),
-                    mock(),
-                )
-
-            val latest by collectLastValue(underTest.signalStrength)
-
-            // THEN the value is always 0, regardless of what the system says
-            repo.signalStrength.value = 1
-            assertThat(latest).isEqualTo(0)
-
-            repo.signalStrength.value = 2
-            assertThat(latest).isEqualTo(0)
-
-            repo.signalStrength.value = 3
-            assertThat(latest).isEqualTo(0)
-
-            repo.signalStrength.value = 4
-            assertThat(latest).isEqualTo(0)
-        }
-
-    @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun areAllConnectionsOutOfService_noConnections_noDeviceEmergencyCalls_yes() =
         testScope.runTest {
             val latest by collectLastValue(underTest.areAllConnectionsOutOfService)
@@ -251,7 +146,6 @@
         }
 
     @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun areAllConnectionsOutOfService_noConnections_deviceEmergencyCalls_yes() =
         testScope.runTest {
             val latest by collectLastValue(underTest.areAllConnectionsOutOfService)
@@ -266,7 +160,6 @@
         }
 
     @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun areAllConnectionsOutOfService_oneConnectionInService_thenLost_noDeviceEmergencyCalls_yes() =
         testScope.runTest {
             val latest by collectLastValue(underTest.areAllConnectionsOutOfService)
@@ -292,7 +185,6 @@
         }
 
     @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun areAllConnectionsOutOfService_oneConnectionInService_thenLost_deviceEmergencyCalls_no() =
         testScope.runTest {
             val latest by collectLastValue(underTest.areAllConnectionsOutOfService)
@@ -318,7 +210,6 @@
         }
 
     @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun areAllConnectionsOutOfService_twoConnectionsOos_nonNtn_noDeviceEmergencyCalls_yes() =
         testScope.runTest {
             val latest by collectLastValue(underTest.areAllConnectionsOutOfService)
@@ -342,7 +233,6 @@
         }
 
     @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun areAllConnectionsOutOfService_twoConnectionsOos_nonNtn_deviceEmergencyCalls_no() =
         testScope.runTest {
             val latest by collectLastValue(underTest.areAllConnectionsOutOfService)
@@ -366,7 +256,6 @@
         }
 
     @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun areAllConnectionsOutOfService_twoConnectionsOos_noDeviceEmergencyCalls_oneNtn_no() =
         testScope.runTest {
             val latest by collectLastValue(underTest.areAllConnectionsOutOfService)
@@ -392,7 +281,6 @@
         }
 
     @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun areAllConnectionsOutOfService_oneConnectionOos_noDeviceEmergencyCalls_nonNtn_yes() =
         testScope.runTest {
             val latest by collectLastValue(underTest.areAllConnectionsOutOfService)
@@ -412,7 +300,6 @@
         }
 
     @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun areAllConnectionsOutOfService_oneConnectionOos_nonNtn_no() =
         testScope.runTest {
             val latest by collectLastValue(underTest.areAllConnectionsOutOfService)
@@ -432,7 +319,6 @@
         }
 
     @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun areAllConnectionsOutOfService_oneConnectionOos_ntn_no() =
         testScope.runTest {
             val latest by collectLastValue(underTest.areAllConnectionsOutOfService)
@@ -450,7 +336,6 @@
         }
 
     @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun areAllConnectionsOutOfService_oneConnectionInService_nonNtn_no() =
         testScope.runTest {
             val latest by collectLastValue(underTest.areAllConnectionsOutOfService)
@@ -467,7 +352,6 @@
         }
 
     @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun areAllConnectionsOutOfService_oneConnectionInService_ntn_no() =
         testScope.runTest {
             val latest by collectLastValue(underTest.areAllConnectionsOutOfService)
@@ -484,7 +368,6 @@
         }
 
     @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun areAllConnectionsOutOfService_twoConnectionsOneInService_nonNtn_no() =
         testScope.runTest {
             val latest by collectLastValue(underTest.areAllConnectionsOutOfService)
@@ -504,7 +387,6 @@
         }
 
     @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun areAllConnectionsOutOfService_twoConnectionsInService_nonNtn_no() =
         testScope.runTest {
             val latest by collectLastValue(underTest.areAllConnectionsOutOfService)
@@ -522,37 +404,6 @@
         }
 
     @Test
-    @DisableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
-    fun areAllConnectionsOutOfService_falseWhenFlagIsOff() =
-        testScope.runTest {
-            // GIVEN the flag is disabled
-
-            // Remake the interactor so the flag is read
-            underTest =
-                DeviceBasedSatelliteInteractor(
-                    repo,
-                    iconsInteractor,
-                    wifiInteractor,
-                    testScope.backgroundScope,
-                    FakeLogBuffer.Factory.create(),
-                    mock(),
-                )
-
-            val latest by collectLastValue(underTest.areAllConnectionsOutOfService)
-
-            // GIVEN a condition that should return true (all conections OOS)
-
-            val i1 = iconsInteractor.getMobileConnectionInteractorForSubId(1)
-            val i2 = iconsInteractor.getMobileConnectionInteractorForSubId(2)
-
-            i1.isInService.value = true
-            i2.isInService.value = true
-
-            // THEN the value is still false, because the flag is off
-            assertThat(latest).isFalse()
-        }
-
-    @Test
     fun isWifiActive_falseWhenWifiNotActive() =
         testScope.runTest {
             val latest by collectLastValue(underTest.isWifiActive)
@@ -577,7 +428,6 @@
         }
 
     @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun isAnyConnectionNtn_trueWhenAnyNtn() =
         testScope.runTest {
             val latest by collectLastValue(underTest.isAnyConnectionNtn)
@@ -595,7 +445,6 @@
         }
 
     @Test
-    @EnableFlags(FLAG_OEM_ENABLED_SATELLITE_FLAG)
     fun isAnyConnectionNtn_falseWhenNoNtn() =
         testScope.runTest {
             val latest by collectLastValue(underTest.isAnyConnectionNtn)
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/policy/ClockTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/policy/ClockTest.kt
deleted file mode 100644
index 7549a7f..0000000
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/policy/ClockTest.kt
+++ /dev/null
@@ -1,130 +0,0 @@
-/*
- * 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.systemui.statusbar.policy
-
-import android.testing.TestableLooper
-import android.view.View.MeasureSpec.UNSPECIFIED
-import android.view.View.MeasureSpec.makeMeasureSpec
-import android.view.ViewGroup.LayoutParams.WRAP_CONTENT
-import android.widget.LinearLayout
-import androidx.test.ext.junit.runners.AndroidJUnit4
-import androidx.test.filters.SmallTest
-import com.android.systemui.SysuiTestCase
-import org.junit.Before
-import org.junit.runner.RunWith
-
-import com.google.common.truth.Truth.assertThat
-import org.junit.Test
-
-@SmallTest
-@RunWith(AndroidJUnit4::class)
-@TestableLooper.RunWithLooper
-class ClockTest : SysuiTestCase() {
-    private lateinit var clockView: Clock
-
-    @Before
-    fun setUp() {
-        allowTestableLooperAsMainThread()
-        TestableLooper.get(this).runWithLooper {
-            val container = LinearLayout(context)
-            val lp = LinearLayout.LayoutParams(1000, WRAP_CONTENT)
-            container.layoutParams = lp
-            clockView = Clock(context, null)
-            container.addView(clockView)
-            measureClock()
-        }
-    }
-
-    @Test
-    fun testWidthDoesNotDecrease_sameCharLength() {
-        // GIVEN time is narrow
-        clockView.text = ONE_3
-        measureClock()
-        val width1 = clockView.measuredWidth
-
-        // WHEN the text changes to be wider characters
-        clockView.text = ZERO_3
-        measureClock()
-        val width2 = clockView.measuredWidth
-
-        // THEN the width should be wider (or equals when using monospace font)
-        assertThat(width2).isAtLeast(width1)
-    }
-
-    @Test
-    fun testWidthDoesNotDecrease_narrowerFont_sameNumberOfChars() {
-        // GIVEN time is wide
-        clockView.text = ZERO_3
-        measureClock()
-        val width1 = clockView.measuredWidth
-
-        // WHEN the text changes to a narrower font
-        clockView.text = ONE_3
-        measureClock()
-        val width2 = clockView.measuredWidth
-
-        // THEN the width should not have decreased, and they should in fact be the same
-        assertThat(width2).isEqualTo(width1)
-    }
-
-    @Test
-    fun testWidthIncreases_whenCharsChanges() {
-        // GIVEN wide 3-char text
-        clockView.text = ZERO_3
-        measureClock()
-        val width1 = clockView.measuredWidth
-
-        // WHEN text changes to 4-char wide text
-        clockView.text = ZERO_4
-        measureClock()
-        val width2 = clockView.measuredWidth
-
-        // THEN the text field is wider
-        assertThat(width2).isGreaterThan(width1)
-    }
-
-    @Test
-    fun testWidthDecreases_whenCharsChange_longToShort() {
-        // GIVEN wide 4-char text
-        clockView.text = ZERO_4
-        measureClock()
-        val width1 = clockView.measuredWidth
-
-        // WHEN number of characters changes to a narrow 3-char text
-        clockView.text = ONE_3
-        measureClock()
-        val width2 = clockView.measuredWidth
-
-        // THEN the width can shrink, because number of chars changed
-        assertThat(width2).isLessThan(width1)
-    }
-
-    private fun measureClock() {
-        clockView.measure(
-                makeMeasureSpec(0, UNSPECIFIED),
-                makeMeasureSpec(0, UNSPECIFIED)
-        )
-    }
-}
-
-/**
- * In a non-monospace font, it is expected that "0:00" is wider than "1:11"
- */
-private const val ZERO_3 = "0:00"
-private const val ZERO_4 = "00:00"
-private const val ONE_3 = "1:11"
-private const val ONE_4 = "11:11"
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/dialog/domain/interactor/VolumeDialogVisibilityInteractorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/dialog/domain/interactor/VolumeDialogVisibilityInteractorTest.kt
index d0cabec..a303da0 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/dialog/domain/interactor/VolumeDialogVisibilityInteractorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/dialog/domain/interactor/VolumeDialogVisibilityInteractorTest.kt
@@ -17,16 +17,17 @@
 package com.android.systemui.volume.dialog.domain.interactor
 
 import android.app.ActivityManager
-import android.testing.TestableLooper
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.SmallTest
 import com.android.systemui.SysuiTestCase
+import com.android.systemui.accessibility.data.repository.accessibilityRepository
 import com.android.systemui.coroutines.collectLastValue
 import com.android.systemui.kosmos.Kosmos
 import com.android.systemui.kosmos.testScope
 import com.android.systemui.plugins.fakeVolumeDialogController
 import com.android.systemui.testKosmos
 import com.android.systemui.volume.Events
+import com.android.systemui.volume.dialog.shared.model.VolumeDialogSafetyWarningModel
 import com.android.systemui.volume.dialog.shared.model.VolumeDialogVisibilityModel
 import com.google.common.truth.Truth.assertThat
 import kotlin.time.Duration.Companion.days
@@ -34,7 +35,6 @@
 import kotlinx.coroutines.test.advanceTimeBy
 import kotlinx.coroutines.test.runCurrent
 import kotlinx.coroutines.test.runTest
-import org.junit.Before
 import org.junit.Test
 import org.junit.runner.RunWith
 
@@ -42,17 +42,18 @@
 
 @SmallTest
 @RunWith(AndroidJUnit4::class)
-@TestableLooper.RunWithLooper
+@OptIn(kotlinx.coroutines.ExperimentalCoroutinesApi::class)
 class VolumeDialogVisibilityInteractorTest : SysuiTestCase() {
 
-    private val kosmos: Kosmos = testKosmos()
+    private val kosmos: Kosmos =
+        testKosmos().apply {
+            accessibilityRepository.setRecommendedTimeout(dialogTimeoutDuration)
+            volumeDialogStateInteractor.setHovering(false)
+            volumeDialogStateInteractor.setSafetyWarning(VolumeDialogSafetyWarningModel.Invisible)
+        }
 
-    private lateinit var underTest: VolumeDialogVisibilityInteractor
-
-    @Before
-    fun setUp() {
-        underTest = kosmos.volumeDialogVisibilityInteractor
-    }
+    private val underTest: VolumeDialogVisibilityInteractor =
+        kosmos.volumeDialogVisibilityInteractor
 
     @Test
     fun testShowRequest_visible() =
@@ -92,6 +93,7 @@
                 runCurrent()
 
                 fakeVolumeDialogController.onDismissRequested(Events.DISMISS_REASON_SCREEN_OFF)
+                runCurrent()
 
                 assertThat(visibilityModel!!)
                     .isEqualTo(
@@ -105,7 +107,6 @@
         with(kosmos) {
             testScope.runTest {
                 runCurrent()
-                underTest.resetDismissTimeout()
                 val visibilityModel by collectLastValue(underTest.dialogVisibility)
                 fakeVolumeDialogController.onShowRequested(
                     Events.SHOW_REASON_VOLUME_CHANGED,
@@ -126,7 +127,6 @@
         with(kosmos) {
             testScope.runTest {
                 runCurrent()
-                underTest.resetDismissTimeout()
                 val visibilityModel by collectLastValue(underTest.dialogVisibility)
                 fakeVolumeDialogController.onShowRequested(
                     Events.SHOW_REASON_VOLUME_CHANGED,
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/dialog/sliders/domain/interactor/VolumeDialogSliderInputEventsInteractorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/dialog/sliders/domain/interactor/VolumeDialogSliderInputEventsInteractorTest.kt
index 4ed0d6e..14b61e1 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/dialog/sliders/domain/interactor/VolumeDialogSliderInputEventsInteractorTest.kt
+++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/volume/dialog/sliders/domain/interactor/VolumeDialogSliderInputEventsInteractorTest.kt
@@ -17,10 +17,10 @@
 package com.android.systemui.volume.dialog.sliders.domain.interactor
 
 import android.app.ActivityManager
-import android.testing.TestableLooper
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.SmallTest
 import com.android.systemui.SysuiTestCase
+import com.android.systemui.accessibility.data.repository.accessibilityRepository
 import com.android.systemui.kosmos.collectLastValue
 import com.android.systemui.kosmos.testScope
 import com.android.systemui.plugins.fakeVolumeDialogController
@@ -35,24 +35,19 @@
 import kotlinx.coroutines.test.advanceTimeBy
 import kotlinx.coroutines.test.runCurrent
 import kotlinx.coroutines.test.runTest
-import org.junit.Before
 import org.junit.runner.RunWith
 
 private val volumeDialogTimeout = 3.seconds
 
 @SmallTest
 @RunWith(AndroidJUnit4::class)
-@TestableLooper.RunWithLooper
 class VolumeDialogSliderInputEventsInteractorTest : SysuiTestCase() {
 
-    private val kosmos = testKosmos()
+    private val kosmos =
+        testKosmos().apply { accessibilityRepository.setRecommendedTimeout(volumeDialogTimeout) }
 
-    private lateinit var underTest: VolumeDialogSliderInputEventsInteractor
-
-    @Before
-    fun setup() {
-        underTest = kosmos.volumeDialogSliderInputEventsInteractor
-    }
+    private val underTest: VolumeDialogSliderInputEventsInteractor =
+        kosmos.volumeDialogSliderInputEventsInteractor
 
     @Test
     fun inputEvents_resetDialogVisibilityTimeout() =
diff --git a/packages/SystemUI/plugin/bcsmartspace/src/com/android/systemui/plugins/BcSmartspaceDataPlugin.java b/packages/SystemUI/plugin/bcsmartspace/src/com/android/systemui/plugins/BcSmartspaceDataPlugin.java
index b2083c2..d7b4cba 100644
--- a/packages/SystemUI/plugin/bcsmartspace/src/com/android/systemui/plugins/BcSmartspaceDataPlugin.java
+++ b/packages/SystemUI/plugin/bcsmartspace/src/com/android/systemui/plugins/BcSmartspaceDataPlugin.java
@@ -85,6 +85,10 @@
         throw new UnsupportedOperationException("Not implemented by " + getClass());
     }
 
+    default SmartspaceView getLargeClockView(ViewGroup parent) {
+        throw new UnsupportedOperationException("Not implemented by " + getClass());
+    }
+
     /**
      * As the smartspace view becomes available, allow listeners to receive an event.
      */
diff --git a/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockLogger.kt b/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockLogger.kt
index 3ed321e..02a3902 100644
--- a/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockLogger.kt
+++ b/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockLogger.kt
@@ -16,7 +16,9 @@
 
 package com.android.systemui.plugins.clocks
 
+import android.graphics.Rect
 import android.view.View
+import android.view.View.MeasureSpec
 import com.android.systemui.log.core.LogLevel
 import com.android.systemui.log.core.LogcatOnlyMessageBuffer
 import com.android.systemui.log.core.Logger
@@ -46,12 +48,21 @@
         }
     }
 
-    fun onMeasure() {
-        d("onMeasure()")
+    fun onMeasure(widthSpec: Int, heightSpec: Int) {
+        d({ "onMeasure(${getSpecText(int1)}, ${getSpecText(int2)})" }) {
+            int1 = widthSpec
+            int2 = heightSpec
+        }
     }
 
-    fun onLayout() {
-        d("onLayout()")
+    fun onLayout(changed: Boolean, left: Int, top: Int, right: Int, bottom: Int) {
+        d({ "onLayout($bool1, ${Rect(int1, int2, long1.toInt(), long2.toInt())})" }) {
+            bool1 = changed
+            int1 = left
+            int2 = top
+            long1 = right.toLong()
+            long2 = bottom.toLong()
+        }
     }
 
     fun onDraw() {
@@ -90,8 +101,8 @@
         }
     }
 
-    fun addView(child: View) {
-        d({ "addView($str1 @$int1)" }) {
+    fun onViewAdded(child: View) {
+        d({ "onViewAdded($str1 @$int1)" }) {
             str1 = child::class.simpleName!!
             int1 = child.id
         }
@@ -133,6 +144,20 @@
         }
 
         @JvmStatic
+        fun getSpecText(spec: Int): String {
+            val size = MeasureSpec.getSize(spec)
+            val mode = MeasureSpec.getMode(spec)
+            val modeText =
+                when (mode) {
+                    MeasureSpec.EXACTLY -> "EXACTLY"
+                    MeasureSpec.AT_MOST -> "AT MOST"
+                    MeasureSpec.UNSPECIFIED -> "UNSPECIFIED"
+                    else -> "$mode"
+                }
+            return "($size, $modeText)"
+        }
+
+        @JvmStatic
         fun escapeTime(timeStr: String?): String? {
             return timeStr?.replace("\n", "\\n")
         }
diff --git a/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockPickerConfig.kt b/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockPickerConfig.kt
index 6e4dc14..0cbc30d 100644
--- a/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockPickerConfig.kt
+++ b/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockPickerConfig.kt
@@ -34,6 +34,9 @@
 
     /** Font axes that can be modified on this clock */
     val axes: List<ClockFontAxis> = listOf(),
+
+    /** List of font presets for this clock. Can be assigned directly. */
+    val axisPresets: List<List<ClockFontAxisSetting>> = listOf(),
 )
 
 /** Represents an Axis that can be modified */
diff --git a/packages/SystemUI/plugin/src/com/android/systemui/plugins/qs/QSTile.java b/packages/SystemUI/plugin/src/com/android/systemui/plugins/qs/QSTile.java
index 56176cf..d197cdb7 100644
--- a/packages/SystemUI/plugin/src/com/android/systemui/plugins/qs/QSTile.java
+++ b/packages/SystemUI/plugin/src/com/android/systemui/plugins/qs/QSTile.java
@@ -42,7 +42,7 @@
 @DependsOn(target = Icon.class)
 @DependsOn(target = State.class)
 public interface QSTile {
-    int VERSION = 4;
+    int VERSION = 5;
 
     String getTileSpec();
 
@@ -78,6 +78,7 @@
     void longClick(@Nullable Expandable expandable);
 
     void userSwitch(int currentUser);
+    int getCurrentTileUser();
 
     /**
      * @deprecated not needed as {@link com.android.internal.logging.UiEvent} will use
@@ -150,6 +151,8 @@
         return null;
     }
 
+    boolean isDestroyed();
+
     @ProvidesInterface(version = Callback.VERSION)
     interface Callback {
         static final int VERSION = 2;
diff --git a/packages/SystemUI/pods/Android.bp b/packages/SystemUI/pods/Android.bp
index 588a074..fba8962 100644
--- a/packages/SystemUI/pods/Android.bp
+++ b/packages/SystemUI/pods/Android.bp
@@ -26,7 +26,12 @@
     libs: [
         "jsr330",
     ],
+    lint: {
+        extra_check_modules: ["SystemUILintChecker"],
+        warning_checks: ["MissingApacheLicenseDetector"],
+    },
     kotlincflags: [
+        "-Xexplicit-api=strict",
         "-Xjvm-default=all",
     ],
     defaults_visibility: [":__subpackages__"],
diff --git a/packages/SystemUI/pods/com/android/systemui/retail/RetailModeModule.kt b/packages/SystemUI/pods/com/android/systemui/retail/RetailModeModule.kt
index c20e368..fe78bb3 100644
--- a/packages/SystemUI/pods/com/android/systemui/retail/RetailModeModule.kt
+++ b/packages/SystemUI/pods/com/android/systemui/retail/RetailModeModule.kt
@@ -24,11 +24,15 @@
 import dagger.Module
 
 @Module
-abstract class RetailModeModule {
+public abstract class RetailModeModule {
 
     @Binds
-    abstract fun bindsRetailModeRepository(impl: RetailModeSettingsRepository): RetailModeRepository
+    public abstract fun bindsRetailModeRepository(
+        impl: RetailModeSettingsRepository
+    ): RetailModeRepository
 
     @Binds
-    abstract fun bindsRetailModeInteractor(impl: RetailModeInteractorImpl): RetailModeInteractor
+    public abstract fun bindsRetailModeInteractor(
+        impl: RetailModeInteractorImpl
+    ): RetailModeInteractor
 }
diff --git a/packages/SystemUI/pods/com/android/systemui/retail/data/repository/RetailModeRepository.kt b/packages/SystemUI/pods/com/android/systemui/retail/data/repository/RetailModeRepository.kt
index c9eac25..4fd6985 100644
--- a/packages/SystemUI/pods/com/android/systemui/retail/data/repository/RetailModeRepository.kt
+++ b/packages/SystemUI/pods/com/android/systemui/retail/data/repository/RetailModeRepository.kt
@@ -19,11 +19,11 @@
 import kotlinx.coroutines.flow.StateFlow
 
 /** Repository to track if the device is in Retail mode */
-interface RetailModeRepository {
+public interface RetailModeRepository {
     /** Flow of whether the device is currently in retail mode. */
-    val retailMode: StateFlow<Boolean>
+    public val retailMode: StateFlow<Boolean>
 
     /** Last value of whether the device is in retail mode. */
-    val inRetailMode: Boolean
+    public val inRetailMode: Boolean
         get() = retailMode.value
 }
diff --git a/packages/SystemUI/pods/com/android/systemui/retail/data/repository/impl/RetailModeSettingsRepository.kt b/packages/SystemUI/pods/com/android/systemui/retail/data/repository/impl/RetailModeSettingsRepository.kt
index 8955263..7296835 100644
--- a/packages/SystemUI/pods/com/android/systemui/retail/data/repository/impl/RetailModeSettingsRepository.kt
+++ b/packages/SystemUI/pods/com/android/systemui/retail/data/repository/impl/RetailModeSettingsRepository.kt
@@ -38,17 +38,17 @@
 /**
  * Tracks [Settings.Global.DEVICE_DEMO_MODE].
  *
- * @see UserManager.isDeviceInDemoMode
+ * @see android.os.UserManager.isDeviceInDemoMode
  */
 @SysUISingleton
-class RetailModeSettingsRepository
+public class RetailModeSettingsRepository
 @Inject
 constructor(
     globalSettings: GlobalSettings,
     @Background backgroundDispatcher: CoroutineDispatcher,
     @Application scope: CoroutineScope,
 ) : RetailModeRepository {
-    override val retailMode =
+    override val retailMode: StateFlow<Boolean> =
         conflatedCallbackFlow {
                 val observer =
                     object : ContentObserver(null) {
@@ -66,7 +66,7 @@
             .flowOn(backgroundDispatcher)
             .stateIn(scope, SharingStarted.Eagerly, false)
 
-    companion object {
+    public companion object {
         private const val RETAIL_MODE_SETTING = Settings.Global.DEVICE_DEMO_MODE
     }
 }
diff --git a/packages/SystemUI/pods/com/android/systemui/retail/domain/interactor/RetailModeInteractor.kt b/packages/SystemUI/pods/com/android/systemui/retail/domain/interactor/RetailModeInteractor.kt
index 748e34d..3e44f8d 100644
--- a/packages/SystemUI/pods/com/android/systemui/retail/domain/interactor/RetailModeInteractor.kt
+++ b/packages/SystemUI/pods/com/android/systemui/retail/domain/interactor/RetailModeInteractor.kt
@@ -17,7 +17,7 @@
 package com.android.systemui.retail.domain.interactor
 
 /** Interactor to determine if the device is currently in retail mode */
-interface RetailModeInteractor {
+public interface RetailModeInteractor {
     /** Whether the device is currently in retail mode */
-    val isInRetailMode: Boolean
+    public val isInRetailMode: Boolean
 }
diff --git a/packages/SystemUI/pods/com/android/systemui/retail/domain/interactor/impl/RetailModeInteractorImpl.kt b/packages/SystemUI/pods/com/android/systemui/retail/domain/interactor/impl/RetailModeInteractorImpl.kt
index 8dbe562..52b4bcc 100644
--- a/packages/SystemUI/pods/com/android/systemui/retail/domain/interactor/impl/RetailModeInteractorImpl.kt
+++ b/packages/SystemUI/pods/com/android/systemui/retail/domain/interactor/impl/RetailModeInteractorImpl.kt
@@ -22,11 +22,9 @@
 import javax.inject.Inject
 
 @SysUISingleton
-class RetailModeInteractorImpl
+public class RetailModeInteractorImpl
 @Inject
-constructor(
-    private val repository: RetailModeRepository,
-) : RetailModeInteractor {
+constructor(private val repository: RetailModeRepository) : RetailModeInteractor {
     override val isInRetailMode: Boolean
         get() = repository.inRetailMode
 }
diff --git a/packages/SystemUI/pods/com/android/systemui/util/settings/SettingsProxy.kt b/packages/SystemUI/pods/com/android/systemui/util/settings/SettingsProxy.kt
index 597276a..a8d4f79 100644
--- a/packages/SystemUI/pods/com/android/systemui/util/settings/SettingsProxy.kt
+++ b/packages/SystemUI/pods/com/android/systemui/util/settings/SettingsProxy.kt
@@ -19,6 +19,7 @@
 import android.content.ContentResolver
 import android.database.ContentObserver
 import android.net.Uri
+import android.provider.Settings
 import android.provider.Settings.SettingNotFoundException
 import androidx.annotation.AnyThread
 import androidx.annotation.WorkerThread
@@ -28,6 +29,7 @@
 import kotlin.coroutines.coroutineContext
 import kotlinx.coroutines.CoroutineDispatcher
 import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Job
 
 /**
  * Used to interact with mainly with Settings.Global, but can also be used for Settings.System and
@@ -43,15 +45,15 @@
  * This class also provides [.registerContentObserver] methods, normally found on [ContentResolver]
  * instances, unifying setting related actions in one place.
  */
-interface SettingsProxy {
+public interface SettingsProxy {
     /** Returns the [ContentResolver] this instance was constructed with. */
-    fun getContentResolver(): ContentResolver
+    public fun getContentResolver(): ContentResolver
 
     /** Returns the [CoroutineScope] that the async APIs will use. */
-    val settingsScope: CoroutineScope
+    public val settingsScope: CoroutineScope
 
     @OptIn(ExperimentalStdlibApi::class)
-    suspend fun executeOnSettingsScopeDispatcher(name: String, block: () -> Unit) {
+    public suspend fun executeOnSettingsScopeDispatcher(name: String, block: () -> Unit) {
         val settingsDispatcher = settingsScope.coroutineContext[CoroutineDispatcher]
         if (
             settingsDispatcher != null &&
@@ -70,7 +72,7 @@
      * @param name to look up in the table
      * @return the corresponding content URI, or null if not present
      */
-    @AnyThread fun getUriFor(name: String): Uri
+    @AnyThread public fun getUriFor(name: String): Uri
 
     /**
      * Registers listener for a given content observer <b>while blocking the current thread</b>.
@@ -80,7 +82,7 @@
      * [registerContentObserverAsync] instead.
      */
     @WorkerThread
-    fun registerContentObserverSync(name: String, settingsObserver: ContentObserver) {
+    public fun registerContentObserverSync(name: String, settingsObserver: ContentObserver) {
         registerContentObserverSync(getUriFor(name), settingsObserver)
     }
 
@@ -91,7 +93,7 @@
      * registration happens on a worker thread. Caller may wrap the API in an async block if they
      * wish to synchronize execution.
      */
-    suspend fun registerContentObserver(name: String, settingsObserver: ContentObserver) {
+    public suspend fun registerContentObserver(name: String, settingsObserver: ContentObserver) {
         executeOnSettingsScopeDispatcher("registerContentObserver-A") {
             registerContentObserverSync(getUriFor(name), settingsObserver)
         }
@@ -103,7 +105,7 @@
      * API corresponding to [registerContentObserver] for Java usage.
      */
     @AnyThread
-    fun registerContentObserverAsync(name: String, settingsObserver: ContentObserver) =
+    public fun registerContentObserverAsync(name: String, settingsObserver: ContentObserver): Job =
         settingsScope.launch("registerContentObserverAsync-A") {
             registerContentObserverSync(getUriFor(name), settingsObserver)
         }
@@ -116,11 +118,11 @@
      * value.
      */
     @AnyThread
-    fun registerContentObserverAsync(
+    public fun registerContentObserverAsync(
         name: String,
         settingsObserver: ContentObserver,
         @WorkerThread registered: Runnable,
-    ) =
+    ): Job =
         settingsScope.launch("registerContentObserverAsync-B") {
             registerContentObserverSync(getUriFor(name), settingsObserver)
             registered.run()
@@ -133,8 +135,9 @@
      * [registerContentObserverAsync] instead.
      */
     @WorkerThread
-    fun registerContentObserverSync(uri: Uri, settingsObserver: ContentObserver) =
+    public fun registerContentObserverSync(uri: Uri, settingsObserver: ContentObserver) {
         registerContentObserverSync(uri, false, settingsObserver)
+    }
 
     /**
      * Convenience wrapper around [ContentResolver.registerContentObserver].'
@@ -143,7 +146,7 @@
      * registration happens on a worker thread. Caller may wrap the API in an async block if they
      * wish to synchronize execution.
      */
-    suspend fun registerContentObserver(uri: Uri, settingsObserver: ContentObserver) {
+    public suspend fun registerContentObserver(uri: Uri, settingsObserver: ContentObserver) {
         executeOnSettingsScopeDispatcher("registerContentObserver-B") {
             registerContentObserverSync(uri, settingsObserver)
         }
@@ -155,7 +158,7 @@
      * API corresponding to [registerContentObserver] for Java usage.
      */
     @AnyThread
-    fun registerContentObserverAsync(uri: Uri, settingsObserver: ContentObserver) =
+    public fun registerContentObserverAsync(uri: Uri, settingsObserver: ContentObserver): Job =
         settingsScope.launch("registerContentObserverAsync-C") {
             registerContentObserverSync(uri, settingsObserver)
         }
@@ -168,11 +171,11 @@
      * value.
      */
     @AnyThread
-    fun registerContentObserverAsync(
+    public fun registerContentObserverAsync(
         uri: Uri,
         settingsObserver: ContentObserver,
         @WorkerThread registered: Runnable,
-    ) =
+    ): Job =
         settingsScope.launch("registerContentObserverAsync-D") {
             registerContentObserverSync(uri, settingsObserver)
             registered.run()
@@ -184,11 +187,13 @@
      * Implicitly calls [getUriFor] on the passed in name.
      */
     @WorkerThread
-    fun registerContentObserverSync(
+    public fun registerContentObserverSync(
         name: String,
         notifyForDescendants: Boolean,
         settingsObserver: ContentObserver,
-    ) = registerContentObserverSync(getUriFor(name), notifyForDescendants, settingsObserver)
+    ) {
+        registerContentObserverSync(getUriFor(name), notifyForDescendants, settingsObserver)
+    }
 
     /**
      * Convenience wrapper around [ContentResolver.registerContentObserver].'
@@ -197,7 +202,7 @@
      * registration happens on a worker thread. Caller may wrap the API in an async block if they
      * wish to synchronize execution.
      */
-    suspend fun registerContentObserver(
+    public suspend fun registerContentObserver(
         name: String,
         notifyForDescendants: Boolean,
         settingsObserver: ContentObserver,
@@ -213,11 +218,11 @@
      * API corresponding to [registerContentObserver] for Java usage.
      */
     @AnyThread
-    fun registerContentObserverAsync(
+    public fun registerContentObserverAsync(
         name: String,
         notifyForDescendants: Boolean,
         settingsObserver: ContentObserver,
-    ) =
+    ): Job =
         settingsScope.launch("registerContentObserverAsync-E") {
             registerContentObserverSync(getUriFor(name), notifyForDescendants, settingsObserver)
         }
@@ -230,12 +235,12 @@
      * value.
      */
     @AnyThread
-    fun registerContentObserverAsync(
+    public fun registerContentObserverAsync(
         name: String,
         notifyForDescendants: Boolean,
         settingsObserver: ContentObserver,
         @WorkerThread registered: Runnable,
-    ) =
+    ): Job =
         settingsScope.launch("registerContentObserverAsync-F") {
             registerContentObserverSync(getUriFor(name), notifyForDescendants, settingsObserver)
             registered.run()
@@ -248,7 +253,7 @@
      * [registerContentObserverAsync] instead.
      */
     @WorkerThread
-    fun registerContentObserverSync(
+    public fun registerContentObserverSync(
         uri: Uri,
         notifyForDescendants: Boolean,
         settingsObserver: ContentObserver,
@@ -266,7 +271,7 @@
      * registration happens on a worker thread. Caller may wrap the API in an async block if they
      * wish to synchronize execution.
      */
-    suspend fun registerContentObserver(
+    public suspend fun registerContentObserver(
         uri: Uri,
         notifyForDescendants: Boolean,
         settingsObserver: ContentObserver,
@@ -282,11 +287,11 @@
      * API corresponding to [registerContentObserver] for Java usage.
      */
     @AnyThread
-    fun registerContentObserverAsync(
+    public fun registerContentObserverAsync(
         uri: Uri,
         notifyForDescendants: Boolean,
         settingsObserver: ContentObserver,
-    ) =
+    ): Job =
         settingsScope.launch("registerContentObserverAsync-G") {
             registerContentObserverSync(uri, notifyForDescendants, settingsObserver)
         }
@@ -299,12 +304,12 @@
      * value.
      */
     @AnyThread
-    fun registerContentObserverAsync(
+    public fun registerContentObserverAsync(
         uri: Uri,
         notifyForDescendants: Boolean,
         settingsObserver: ContentObserver,
         @WorkerThread registered: Runnable,
-    ) =
+    ): Job =
         settingsScope.launch("registerContentObserverAsync-H") {
             registerContentObserverSync(uri, notifyForDescendants, settingsObserver)
             registered.run()
@@ -317,7 +322,7 @@
      * [unregisterContentObserverAsync] instead.
      */
     @WorkerThread
-    fun unregisterContentObserverSync(settingsObserver: ContentObserver) {
+    public fun unregisterContentObserverSync(settingsObserver: ContentObserver) {
         trace({ "SP#unregisterObserver" }) {
             getContentResolver().unregisterContentObserver(settingsObserver)
         }
@@ -330,7 +335,7 @@
      * [ContentObserver] un-registration happens on a worker thread. Caller may wrap the API in an
      * async block if they wish to synchronize execution.
      */
-    suspend fun unregisterContentObserver(settingsObserver: ContentObserver) {
+    public suspend fun unregisterContentObserver(settingsObserver: ContentObserver) {
         executeOnSettingsScopeDispatcher("unregisterContentObserver") {
             unregisterContentObserverSync(settingsObserver)
         }
@@ -343,7 +348,7 @@
      * [ContentObserver] registration happens on a worker thread.
      */
     @AnyThread
-    fun unregisterContentObserverAsync(settingsObserver: ContentObserver) =
+    public fun unregisterContentObserverAsync(settingsObserver: ContentObserver): Job =
         settingsScope.launch("unregisterContentObserverAsync") {
             unregisterContentObserver(settingsObserver)
         }
@@ -354,7 +359,7 @@
      * @param name to look up in the table
      * @return the corresponding value, or null if not present
      */
-    fun getString(name: String): String?
+    public fun getString(name: String): String?
 
     /**
      * Store a name/value pair into the database.
@@ -363,7 +368,7 @@
      * @param value to associate with the name
      * @return true if the value was set, false on database errors
      */
-    fun putString(name: String, value: String?): Boolean
+    public fun putString(name: String, value: String?): Boolean
 
     /**
      * Store a name/value pair into the database.
@@ -394,7 +399,7 @@
      * @return true if the value was set, false on database errors.
      * @see .resetToDefaults
      */
-    fun putString(name: String, value: String?, tag: String?, makeDefault: Boolean): Boolean
+    public fun putString(name: String, value: String?, tag: String?, makeDefault: Boolean): Boolean
 
     /**
      * Convenience function for retrieving a single secure settings value as an integer. Note that
@@ -406,7 +411,7 @@
      * @param default Value to return if the setting is not defined.
      * @return The setting's current value, or default if it is not defined or not a valid integer.
      */
-    fun getInt(name: String, default: Int): Int {
+    public fun getInt(name: String, default: Int): Int {
         val v = getString(name)
         return try {
             v?.toInt() ?: default
@@ -429,7 +434,7 @@
      *   found or the setting value is not an integer.
      */
     @Throws(SettingNotFoundException::class)
-    fun getInt(name: String): Int {
+    public fun getInt(name: String): Int {
         val v = getString(name) ?: throw SettingNotFoundException(name)
         return try {
             v.toInt()
@@ -448,7 +453,7 @@
      * @param value The new value for the setting.
      * @return true if the value was set, false on database errors
      */
-    fun putInt(name: String, value: Int): Boolean {
+    public fun putInt(name: String, value: Int): Boolean {
         return putString(name, value.toString())
     }
 
@@ -462,7 +467,7 @@
      * @param default Value to return if the setting is not defined.
      * @return The setting's current value, or default if it is not defined or not a valid boolean.
      */
-    fun getBool(name: String, default: Boolean): Boolean {
+    public fun getBool(name: String, default: Boolean): Boolean {
         return getInt(name, if (default) 1 else 0) != 0
     }
 
@@ -480,7 +485,7 @@
      *   found or the setting value is not a boolean.
      */
     @Throws(SettingNotFoundException::class)
-    fun getBool(name: String): Boolean {
+    public fun getBool(name: String): Boolean {
         return getInt(name) != 0
     }
 
@@ -494,7 +499,7 @@
      * @param value The new value for the setting.
      * @return true if the value was set, false on database errors
      */
-    fun putBool(name: String, value: Boolean): Boolean {
+    public fun putBool(name: String, value: Boolean): Boolean {
         return putInt(name, if (value) 1 else 0)
     }
 
@@ -508,7 +513,7 @@
      * @param def Value to return if the setting is not defined.
      * @return The setting's current value, or 'def' if it is not defined or not a valid `long`.
      */
-    fun getLong(name: String, def: Long): Long {
+    public fun getLong(name: String, def: Long): Long {
         val valString = getString(name)
         return parseLongOrUseDefault(valString, def)
     }
@@ -527,7 +532,7 @@
      *   found or the setting value is not an integer.
      */
     @Throws(SettingNotFoundException::class)
-    fun getLong(name: String): Long {
+    public fun getLong(name: String): Long {
         val valString = getString(name)
         return parseLongOrThrow(name, valString)
     }
@@ -542,7 +547,7 @@
      * @param value The new value for the setting.
      * @return true if the value was set, false on database errors
      */
-    fun putLong(name: String, value: Long): Boolean {
+    public fun putLong(name: String, value: Long): Boolean {
         return putString(name, value.toString())
     }
 
@@ -556,7 +561,7 @@
      * @param def Value to return if the setting is not defined.
      * @return The setting's current value, or 'def' if it is not defined or not a valid float.
      */
-    fun getFloat(name: String, def: Float): Float {
+    public fun getFloat(name: String, def: Float): Float {
         val v = getString(name)
         return parseFloat(v, def)
     }
@@ -575,7 +580,7 @@
      *   found or the setting value is not a float.
      */
     @Throws(SettingNotFoundException::class)
-    fun getFloat(name: String): Float {
+    public fun getFloat(name: String): Float {
         val v = getString(name)
         return parseFloatOrThrow(name, v)
     }
@@ -590,14 +595,14 @@
      * @param value The new value for the setting.
      * @return true if the value was set, false on database errors
      */
-    fun putFloat(name: String, value: Float): Boolean {
+    public fun putFloat(name: String, value: Float): Boolean {
         return putString(name, value.toString())
     }
 
-    companion object {
+    public companion object {
         /** Convert a string to a long, or uses a default if the string is malformed or null */
         @JvmStatic
-        fun parseLongOrUseDefault(valString: String?, default: Long): Long {
+        public fun parseLongOrUseDefault(valString: String?, default: Long): Long {
             val value: Long =
                 try {
                     valString?.toLong() ?: default
@@ -610,7 +615,7 @@
         /** Convert a string to a long, or throws an exception if the string is malformed or null */
         @JvmStatic
         @Throws(SettingNotFoundException::class)
-        fun parseLongOrThrow(name: String, valString: String?): Long {
+        public fun parseLongOrThrow(name: String, valString: String?): Long {
             if (valString == null) {
                 throw SettingNotFoundException(name)
             }
@@ -623,7 +628,7 @@
 
         /** Convert a string to a float, or uses a default if the string is malformed or null */
         @JvmStatic
-        fun parseFloat(v: String?, def: Float): Float {
+        public fun parseFloat(v: String?, def: Float): Float {
             return try {
                 v?.toFloat() ?: def
             } catch (e: NumberFormatException) {
@@ -636,7 +641,7 @@
          */
         @JvmStatic
         @Throws(SettingNotFoundException::class)
-        fun parseFloatOrThrow(name: String, v: String?): Float {
+        public fun parseFloatOrThrow(name: String, v: String?): Float {
             if (v == null) {
                 throw SettingNotFoundException(name)
             }
@@ -648,7 +653,7 @@
         }
     }
 
-    fun interface CurrentUserIdProvider {
-        @UserIdInt fun getUserId(): Int
+    public fun interface CurrentUserIdProvider {
+        @UserIdInt public fun getUserId(): Int
     }
 }
diff --git a/packages/SystemUI/pods/com/android/systemui/util/settings/SettingsProxyExt.kt b/packages/SystemUI/pods/com/android/systemui/util/settings/SettingsProxyExt.kt
index 36468144..60feaf1 100644
--- a/packages/SystemUI/pods/com/android/systemui/util/settings/SettingsProxyExt.kt
+++ b/packages/SystemUI/pods/com/android/systemui/util/settings/SettingsProxyExt.kt
@@ -17,6 +17,7 @@
 
 package com.android.systemui.util.settings
 
+import android.annotation.SuppressLint
 import android.annotation.UserIdInt
 import android.database.ContentObserver
 import com.android.systemui.Flags
@@ -25,10 +26,11 @@
 import kotlinx.coroutines.flow.Flow
 
 /** Kotlin extension functions for [SettingsProxy]. */
-object SettingsProxyExt {
+@SuppressLint("RegisterContentObserverSyncWarning")
+public object SettingsProxyExt {
 
     /** Returns a flow of [Unit] that is invoked each time that content is updated. */
-    fun UserSettingsProxy.observerFlow(
+    public fun UserSettingsProxy.observerFlow(
         @UserIdInt userId: Int,
         vararg names: String,
     ): Flow<Unit> {
@@ -59,9 +61,7 @@
     }
 
     /** Returns a flow of [Unit] that is invoked each time that content is updated. */
-    fun SettingsProxy.observerFlow(
-        vararg names: String,
-    ): Flow<Unit> {
+    public fun SettingsProxy.observerFlow(vararg names: String): Flow<Unit> {
         return conflatedCallbackFlow {
             val observer =
                 object : ContentObserver(null) {
diff --git a/packages/SystemUI/pods/com/android/systemui/util/settings/UserSettingsProxy.kt b/packages/SystemUI/pods/com/android/systemui/util/settings/UserSettingsProxy.kt
index 3ccac9e3..61c7f73 100644
--- a/packages/SystemUI/pods/com/android/systemui/util/settings/UserSettingsProxy.kt
+++ b/packages/SystemUI/pods/com/android/systemui/util/settings/UserSettingsProxy.kt
@@ -15,6 +15,7 @@
  */
 package com.android.systemui.util.settings
 
+import android.annotation.SuppressLint
 import android.annotation.UserIdInt
 import android.annotation.WorkerThread
 import android.content.ContentResolver
@@ -28,6 +29,7 @@
 import com.android.systemui.util.settings.SettingsProxy.Companion.parseFloatOrThrow
 import com.android.systemui.util.settings.SettingsProxy.Companion.parseLongOrThrow
 import com.android.systemui.util.settings.SettingsProxy.Companion.parseLongOrUseDefault
+import kotlinx.coroutines.Job
 
 /**
  * Used to interact with per-user Settings.Secure and Settings.System settings (but not
@@ -42,11 +44,12 @@
  * This class also provides [.registerContentObserver] methods, normally found on [ContentResolver]
  * instances, unifying setting related actions in one place.
  */
-interface UserSettingsProxy : SettingsProxy {
-    val currentUserProvider: SettingsProxy.CurrentUserIdProvider
+@SuppressLint("RegisterContentObserverSyncWarning")
+public interface UserSettingsProxy : SettingsProxy {
+    public val currentUserProvider: SettingsProxy.CurrentUserIdProvider
 
     /** Returns the user id for the associated [ContentResolver]. */
-    var userId: Int
+    public var userId: Int
         get() = getContentResolver().userId
         set(_) {
             throw UnsupportedOperationException(
@@ -58,7 +61,7 @@
      * Returns the actual current user handle when querying with the current user. Otherwise,
      * returns the passed in user id.
      */
-    fun getRealUserHandle(userHandle: Int): Int {
+    public fun getRealUserHandle(userHandle: Int): Int {
         return if (userHandle != UserHandle.USER_CURRENT) {
             userHandle
         } else currentUserProvider.getUserId()
@@ -75,7 +78,7 @@
         }
     }
 
-    override fun registerContentObserverAsync(uri: Uri, settingsObserver: ContentObserver) =
+    override fun registerContentObserverAsync(uri: Uri, settingsObserver: ContentObserver): Job =
         settingsScope.launch("registerContentObserverAsync-A") {
             registerContentObserverForUserSync(uri, settingsObserver, userId)
         }
@@ -109,7 +112,7 @@
         uri: Uri,
         notifyForDescendants: Boolean,
         settingsObserver: ContentObserver,
-    ) =
+    ): Job =
         settingsScope.launch("registerContentObserverAsync-B") {
             registerContentObserverForUserSync(uri, notifyForDescendants, settingsObserver, userId)
         }
@@ -120,7 +123,7 @@
      * Implicitly calls [getUriFor] on the passed in name.
      */
     @WorkerThread
-    fun registerContentObserverForUserSync(
+    public fun registerContentObserverForUserSync(
         name: String,
         settingsObserver: ContentObserver,
         userHandle: Int,
@@ -135,7 +138,7 @@
      * [ContentObserver] registration happens on a worker thread. Caller may wrap the API in an
      * async block if they wish to synchronize execution.
      */
-    suspend fun registerContentObserverForUser(
+    public suspend fun registerContentObserverForUser(
         name: String,
         settingsObserver: ContentObserver,
         userHandle: Int,
@@ -150,11 +153,11 @@
      *
      * API corresponding to [registerContentObserverForUser] for Java usage.
      */
-    fun registerContentObserverForUserAsync(
+    public fun registerContentObserverForUserAsync(
         name: String,
         settingsObserver: ContentObserver,
         userHandle: Int,
-    ) =
+    ): Job =
         settingsScope.launch("registerContentObserverForUserAsync-A") {
             try {
                 registerContentObserverForUserSync(getUriFor(name), settingsObserver, userHandle)
@@ -165,7 +168,7 @@
 
     /** Convenience wrapper around [ContentResolver.registerContentObserver] */
     @WorkerThread
-    fun registerContentObserverForUserSync(
+    public fun registerContentObserverForUserSync(
         uri: Uri,
         settingsObserver: ContentObserver,
         userHandle: Int,
@@ -180,7 +183,7 @@
      * [ContentObserver] registration happens on a worker thread. Caller may wrap the API in an
      * async block if they wish to synchronize execution.
      */
-    suspend fun registerContentObserverForUser(
+    public suspend fun registerContentObserverForUser(
         uri: Uri,
         settingsObserver: ContentObserver,
         userHandle: Int,
@@ -195,11 +198,11 @@
      *
      * API corresponding to [registerContentObserverForUser] for Java usage.
      */
-    fun registerContentObserverForUserAsync(
+    public fun registerContentObserverForUserAsync(
         uri: Uri,
         settingsObserver: ContentObserver,
         userHandle: Int,
-    ) =
+    ): Job =
         settingsScope.launch("registerContentObserverForUserAsync-B") {
             try {
                 registerContentObserverForUserSync(uri, settingsObserver, userHandle)
@@ -215,12 +218,12 @@
      * complete, the callback block is called on the <b>background thread</b> to allow for update of
      * value.
      */
-    fun registerContentObserverForUserAsync(
+    public fun registerContentObserverForUserAsync(
         uri: Uri,
         settingsObserver: ContentObserver,
         userHandle: Int,
         @WorkerThread registered: Runnable,
-    ) =
+    ): Job =
         settingsScope.launch("registerContentObserverForUserAsync-C") {
             try {
                 registerContentObserverForUserSync(uri, settingsObserver, userHandle)
@@ -236,7 +239,7 @@
      * Implicitly calls [getUriFor] on the passed in name.
      */
     @WorkerThread
-    fun registerContentObserverForUserSync(
+    public fun registerContentObserverForUserSync(
         name: String,
         notifyForDescendants: Boolean,
         settingsObserver: ContentObserver,
@@ -257,7 +260,7 @@
      * [ContentObserver] registration happens on a worker thread. Caller may wrap the API in an
      * async block if they wish to synchronize execution.
      */
-    suspend fun registerContentObserverForUser(
+    public suspend fun registerContentObserverForUser(
         name: String,
         notifyForDescendants: Boolean,
         settingsObserver: ContentObserver,
@@ -278,7 +281,7 @@
      *
      * API corresponding to [registerContentObserverForUser] for Java usage.
      */
-    fun registerContentObserverForUserAsync(
+    public fun registerContentObserverForUserAsync(
         name: String,
         notifyForDescendants: Boolean,
         settingsObserver: ContentObserver,
@@ -300,7 +303,7 @@
 
     /** Convenience wrapper around [ContentResolver.registerContentObserver] */
     @WorkerThread
-    fun registerContentObserverForUserSync(
+    public fun registerContentObserverForUserSync(
         uri: Uri,
         notifyForDescendants: Boolean,
         settingsObserver: ContentObserver,
@@ -314,7 +317,6 @@
                     settingsObserver,
                     getRealUserHandle(userHandle),
                 )
-            Unit
         }
     }
 
@@ -325,7 +327,7 @@
      * [ContentObserver] registration happens on a worker thread. Caller may wrap the API in an
      * async block if they wish to synchronize execution.
      */
-    suspend fun registerContentObserverForUser(
+    public suspend fun registerContentObserverForUser(
         uri: Uri,
         notifyForDescendants: Boolean,
         settingsObserver: ContentObserver,
@@ -346,12 +348,12 @@
      *
      * API corresponding to [registerContentObserverForUser] for Java usage.
      */
-    fun registerContentObserverForUserAsync(
+    public fun registerContentObserverForUserAsync(
         uri: Uri,
         notifyForDescendants: Boolean,
         settingsObserver: ContentObserver,
         userHandle: Int,
-    ) =
+    ): Job =
         settingsScope.launch("registerContentObserverForUserAsync-E") {
             try {
                 registerContentObserverForUserSync(
@@ -376,7 +378,7 @@
     }
 
     /** See [getString]. */
-    fun getStringForUser(name: String, userHandle: Int): String?
+    public fun getStringForUser(name: String, userHandle: Int): String?
 
     /**
      * Store a name/value pair into the database. Values written by this method will be overridden
@@ -386,17 +388,17 @@
      * @param value to associate with the name
      * @return true if the value was set, false on database errors
      */
-    fun putString(name: String, value: String?, overrideableByRestore: Boolean): Boolean
+    public fun putString(name: String, value: String?, overrideableByRestore: Boolean): Boolean
 
     override fun putString(name: String, value: String?): Boolean {
         return putStringForUser(name, value, userId)
     }
 
     /** Similar implementation to [putString] for the specified [userHandle]. */
-    fun putStringForUser(name: String, value: String?, userHandle: Int): Boolean
+    public fun putStringForUser(name: String, value: String?, userHandle: Int): Boolean
 
     /** Similar implementation to [putString] for the specified [userHandle]. */
-    fun putStringForUser(
+    public fun putStringForUser(
         name: String,
         value: String?,
         tag: String?,
@@ -410,7 +412,7 @@
     }
 
     /** Similar implementation to [getInt] for the specified [userHandle]. */
-    fun getIntForUser(name: String, default: Int, userHandle: Int): Int {
+    public fun getIntForUser(name: String, default: Int, userHandle: Int): Int {
         val v = getStringForUser(name, userHandle)
         return try {
             v?.toInt() ?: default
@@ -420,11 +422,11 @@
     }
 
     @Throws(SettingNotFoundException::class)
-    override fun getInt(name: String) = getIntForUser(name, userId)
+    override fun getInt(name: String): Int = getIntForUser(name, userId)
 
     /** Similar implementation to [getInt] for the specified [userHandle]. */
     @Throws(SettingNotFoundException::class)
-    fun getIntForUser(name: String, userHandle: Int): Int {
+    public fun getIntForUser(name: String, userHandle: Int): Int {
         val v = getStringForUser(name, userHandle) ?: throw SettingNotFoundException(name)
         return try {
             v.toInt()
@@ -433,24 +435,24 @@
         }
     }
 
-    override fun putInt(name: String, value: Int) = putIntForUser(name, value, userId)
+    override fun putInt(name: String, value: Int): Boolean = putIntForUser(name, value, userId)
 
     /** Similar implementation to [getInt] for the specified [userHandle]. */
-    fun putIntForUser(name: String, value: Int, userHandle: Int) =
+    public fun putIntForUser(name: String, value: Int, userHandle: Int): Boolean =
         putStringForUser(name, value.toString(), userHandle)
 
-    override fun getBool(name: String, def: Boolean) = getBoolForUser(name, def, userId)
+    override fun getBool(name: String, def: Boolean): Boolean = getBoolForUser(name, def, userId)
 
     /** Similar implementation to [getBool] for the specified [userHandle]. */
-    fun getBoolForUser(name: String, def: Boolean, userHandle: Int) =
+    public fun getBoolForUser(name: String, def: Boolean, userHandle: Int): Boolean =
         getIntForUser(name, if (def) 1 else 0, userHandle) != 0
 
     @Throws(SettingNotFoundException::class)
-    override fun getBool(name: String) = getBoolForUser(name, userId)
+    override fun getBool(name: String): Boolean = getBoolForUser(name, userId)
 
     /** Similar implementation to [getBool] for the specified [userHandle]. */
     @Throws(SettingNotFoundException::class)
-    fun getBoolForUser(name: String, userHandle: Int): Boolean {
+    public fun getBoolForUser(name: String, userHandle: Int): Boolean {
         return getIntForUser(name, userHandle) != 0
     }
 
@@ -459,40 +461,40 @@
     }
 
     /** Similar implementation to [putBool] for the specified [userHandle]. */
-    fun putBoolForUser(name: String, value: Boolean, userHandle: Int) =
+    public fun putBoolForUser(name: String, value: Boolean, userHandle: Int): Boolean =
         putIntForUser(name, if (value) 1 else 0, userHandle)
 
     /** Similar implementation to [getLong] for the specified [userHandle]. */
-    fun getLongForUser(name: String, def: Long, userHandle: Int): Long {
+    public fun getLongForUser(name: String, def: Long, userHandle: Int): Long {
         val valString = getStringForUser(name, userHandle)
         return parseLongOrUseDefault(valString, def)
     }
 
     /** Similar implementation to [getLong] for the specified [userHandle]. */
     @Throws(SettingNotFoundException::class)
-    fun getLongForUser(name: String, userHandle: Int): Long {
+    public fun getLongForUser(name: String, userHandle: Int): Long {
         val valString = getStringForUser(name, userHandle)
         return parseLongOrThrow(name, valString)
     }
 
     /** Similar implementation to [putLong] for the specified [userHandle]. */
-    fun putLongForUser(name: String, value: Long, userHandle: Int) =
+    public fun putLongForUser(name: String, value: Long, userHandle: Int): Boolean =
         putStringForUser(name, value.toString(), userHandle)
 
     /** Similar implementation to [getFloat] for the specified [userHandle]. */
-    fun getFloatForUser(name: String, def: Float, userHandle: Int): Float {
+    public fun getFloatForUser(name: String, def: Float, userHandle: Int): Float {
         val v = getStringForUser(name, userHandle)
         return parseFloat(v, def)
     }
 
     /** Similar implementation to [getFloat] for the specified [userHandle]. */
     @Throws(SettingNotFoundException::class)
-    fun getFloatForUser(name: String, userHandle: Int): Float {
+    public fun getFloatForUser(name: String, userHandle: Int): Float {
         val v = getStringForUser(name, userHandle)
         return parseFloatOrThrow(name, v)
     }
 
     /** Similar implementation to [putFloat] for the specified [userHandle]. */
-    fun putFloatForUser(name: String, value: Float, userHandle: Int) =
+    public fun putFloatForUser(name: String, value: Float, userHandle: Int): Boolean =
         putStringForUser(name, value.toString(), userHandle)
 }
diff --git a/packages/SystemUI/res-keyguard/layout/default_clock_preview.xml b/packages/SystemUI/res-keyguard/layout/default_clock_preview.xml
deleted file mode 100644
index 3e6dd13..0000000
--- a/packages/SystemUI/res-keyguard/layout/default_clock_preview.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<RelativeLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    >
-    <TextClock
-        android:id="@+id/time"
-        style="@style/widget_big"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_above="@id/date"
-        android:letterSpacing="0.03"
-        android:gravity="center_horizontal"
-        android:format12Hour="@string/keyguard_widget_12_hours_format"
-        android:format24Hour="@string/keyguard_widget_24_hours_format"
-        />
-
-    <TextClock
-        android:id="@+id/date"
-        style="@stype/widget_big"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_centerInParent="true"
-        android:letterSpacing="0.03"
-        android:gravity="center_horizontal"
-        android:format12Hour="EEE, MMM d"
-        android:format24Hour="EEE, MMM d"
-        />
-</RelativeLayout>
diff --git a/packages/SystemUI/res-keyguard/layout/digital_clock.xml b/packages/SystemUI/res-keyguard/layout/digital_clock.xml
deleted file mode 100644
index 38ee081..0000000
--- a/packages/SystemUI/res-keyguard/layout/digital_clock.xml
+++ /dev/null
@@ -1,39 +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.
-  -->
-<FrameLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:layout_gravity="center_horizontal"
-    android:layout_alignParentTop="true">
-  <TextClock
-      android:id="@+id/lock_screen_clock"
-      android:layout_width="match_parent"
-      android:layout_height="wrap_content"
-      android:layout_gravity="center_horizontal"
-      android:gravity="center_horizontal"
-      android:paddingBottom="@dimen/widget_vertical_padding_clock"
-      android:letterSpacing="0.03"
-      android:textColor="?attr/wallpaperTextColor"
-      android:singleLine="true"
-      style="@style/widget_small_bold"
-      android:format12Hour="@string/keyguard_widget_12_hours_format"
-      android:format24Hour="@string/keyguard_widget_24_hours_format"
-      android:elegantTextHeight="false"
-  />
-</FrameLayout>
-
diff --git a/packages/CompanionDeviceManager/res/drawable/btn_positive_bottom.xml b/packages/SystemUI/res/drawable/notification_2025_guts_priority_button_bg.xml
similarity index 63%
copy from packages/CompanionDeviceManager/res/drawable/btn_positive_bottom.xml
copy to packages/SystemUI/res/drawable/notification_2025_guts_priority_button_bg.xml
index 2cff473..1de8c2b 100644
--- a/packages/CompanionDeviceManager/res/drawable/btn_positive_bottom.xml
+++ b/packages/SystemUI/res/drawable/notification_2025_guts_priority_button_bg.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-  ~ Copyright (C) 2022 The Android Open Source Project
+  ~ Copyright (C) 2025 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.
@@ -12,12 +12,16 @@
   ~ 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.
+  ~ limitations under the License
   -->
-
 <shape xmlns:android="http://schemas.android.com/apk/res/android"
-       android:shape="rectangle">
-    <solid android:color="@android:color/system_accent1_100"/>
-    <corners android:topLeftRadius="12dp" android:topRightRadius="12dp"
-             android:bottomLeftRadius="4dp" android:bottomRightRadius="4dp"/>
+       android:shape="rectangle" >
+    <solid
+        android:color="@color/notification_guts_priority_button_bg_fill" />
+
+    <stroke
+        android:width="1.5dp"
+        android:color="@color/notification_guts_priority_button_bg_stroke" />
+
+    <corners android:radius="16dp" />
 </shape>
diff --git a/packages/SystemUI/res/layout/combined_qs_header.xml b/packages/SystemUI/res/layout/combined_qs_header.xml
index 32407c6..5c06585 100644
--- a/packages/SystemUI/res/layout/combined_qs_header.xml
+++ b/packages/SystemUI/res/layout/combined_qs_header.xml
@@ -86,6 +86,7 @@
         android:singleLine="true"
         android:textDirection="locale"
         android:textAppearance="@style/TextAppearance.QS.Status"
+        android:fontFeatureSettings="tnum"
         android:transformPivotX="0dp"
         android:transformPivotY="24dp"
         android:scaleX="1"
diff --git a/packages/SystemUI/res/layout/keyguard_status_bar.xml b/packages/SystemUI/res/layout/keyguard_status_bar.xml
index 4cb7591..d5f9d4c 100644
--- a/packages/SystemUI/res/layout/keyguard_status_bar.xml
+++ b/packages/SystemUI/res/layout/keyguard_status_bar.xml
@@ -76,7 +76,7 @@
         android:gravity="center_vertical"
         android:ellipsize="marquee"
         android:textDirection="locale"
-        android:textAppearance="@style/TextAppearance.StatusBar.Clock"
+        android:textAppearance="@style/TextAppearance.StatusBar.Carrier"
         android:textColor="?attr/wallpaperTextColorSecondary"
         android:singleLine="true"
         systemui:showMissingSim="true"
diff --git a/packages/SystemUI/res/layout/notification_2025_info.xml b/packages/SystemUI/res/layout/notification_2025_info.xml
new file mode 100644
index 0000000..7b69166
--- /dev/null
+++ b/packages/SystemUI/res/layout/notification_2025_info.xml
@@ -0,0 +1,365 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+    Copyright 2025, 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.
+-->
+
+<!-- extends LinearLayout -->
+<com.android.systemui.statusbar.notification.row.NotificationInfo
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
+    android:id="@+id/notification_guts"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:focusable="true"
+    android:clipChildren="false"
+    android:clipToPadding="true"
+    android:orientation="vertical"
+    android:paddingStart="@*android:dimen/notification_2025_margin">
+
+    <!-- Package Info -->
+    <LinearLayout
+        android:id="@+id/header"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:clipChildren="false"
+        android:clipToPadding="true">
+        <ImageView
+            android:id="@+id/pkg_icon"
+            android:layout_width="@*android:dimen/notification_2025_icon_circle_size"
+            android:layout_height="@*android:dimen/notification_2025_icon_circle_size"
+            android:layout_marginTop="@*android:dimen/notification_2025_margin"
+            android:layout_marginEnd="@*android:dimen/notification_2025_margin" />
+        <LinearLayout
+            android:id="@+id/names"
+            android:layout_weight="1"
+            android:layout_width="0dp"
+            android:orientation="vertical"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="@*android:dimen/notification_2025_margin"
+            android:minHeight="@*android:dimen/notification_2025_icon_circle_size">
+            <TextView
+                android:id="@+id/channel_name"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:textDirection="locale"
+                style="@style/TextAppearance.NotificationImportanceChannel"/>
+            <TextView
+                android:id="@+id/group_name"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:textDirection="locale"
+                android:ellipsize="end"
+                style="@style/TextAppearance.NotificationImportanceChannelGroup"/>
+            <TextView
+                android:id="@+id/pkg_name"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                style="@style/TextAppearance.NotificationImportanceApp"
+                android:ellipsize="end"
+                android:textDirection="locale"
+                android:maxLines="1"/>
+            <TextView
+                android:id="@+id/delegate_name"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                style="@style/TextAppearance.NotificationImportanceHeader"
+                android:ellipsize="end"
+                android:textDirection="locale"
+                android:text="@string/notification_delegate_header"
+                android:maxLines="1" />
+
+        </LinearLayout>
+
+        <!-- feedback for notificationassistantservice -->
+        <ImageButton
+            android:id="@+id/feedback"
+            android:layout_width="@dimen/notification_2025_guts_button_size"
+            android:layout_height="@dimen/notification_2025_guts_button_size"
+            android:visibility="gone"
+            android:background="@drawable/ripple_drawable"
+            android:contentDescription="@string/notification_guts_bundle_feedback"
+            android:src="@*android:drawable/ic_feedback"
+            android:paddingTop="@*android:dimen/notification_2025_margin"
+            android:tint="@androidprv:color/materialColorPrimary"/>
+
+        <!-- Optional link to app. Only appears if the channel is not disabled and the app
+        asked for it -->
+        <ImageButton
+            android:id="@+id/app_settings"
+            android:layout_width="@dimen/notification_2025_guts_button_size"
+            android:layout_height="@dimen/notification_2025_guts_button_size"
+            android:visibility="gone"
+            android:background="@drawable/ripple_drawable"
+            android:contentDescription="@string/notification_app_settings"
+            android:src="@drawable/ic_info"
+            android:paddingTop="@*android:dimen/notification_2025_margin"
+            android:tint="@androidprv:color/materialColorPrimary"/>
+
+        <!-- System notification settings -->
+        <ImageButton
+            android:id="@+id/info"
+            android:layout_width="@dimen/notification_2025_guts_button_size"
+            android:layout_height="@dimen/notification_2025_guts_button_size"
+            android:contentDescription="@string/notification_more_settings"
+            android:background="@drawable/ripple_drawable"
+            android:src="@drawable/ic_settings"
+            android:padding="@*android:dimen/notification_2025_margin"
+            android:tint="@androidprv:color/materialColorPrimary" />
+
+    </LinearLayout>
+
+    <LinearLayout
+        android:id="@+id/inline_controls"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginEnd="@*android:dimen/notification_2025_margin"
+        android:layout_marginTop="@*android:dimen/notification_2025_margin"
+        android:clipChildren="false"
+        android:clipToPadding="false"
+        android:orientation="vertical">
+
+        <!-- Non configurable app/channel text. appears instead of @+id/interruptiveness_settings-->
+        <TextView
+            android:id="@+id/non_configurable_text"
+            android:text="@string/notification_unblockable_desc"
+            android:visibility="gone"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            style="@*android:style/TextAppearance.DeviceDefault.Notification" />
+
+        <!-- Non configurable app/channel text. appears instead of @+id/interruptiveness_settings-->
+        <TextView
+            android:id="@+id/non_configurable_call_text"
+            android:text="@string/notification_unblockable_call_desc"
+            android:visibility="gone"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            style="@*android:style/TextAppearance.DeviceDefault.Notification" />
+
+        <!-- Non configurable multichannel text. appears instead of @+id/interruptiveness_settings-->
+        <TextView
+            android:id="@+id/non_configurable_multichannel_text"
+            android:text="@string/notification_multichannel_desc"
+            android:visibility="gone"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            style="@*android:style/TextAppearance.DeviceDefault.Notification" />
+
+        <LinearLayout
+            android:id="@+id/interruptiveness_settings"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:gravity="center"
+            android:orientation="vertical">
+            <com.android.systemui.statusbar.notification.row.ButtonLinearLayout
+                android:id="@+id/automatic"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:paddingVertical="@dimen/notification_2025_importance_button_padding_vertical"
+                android:paddingHorizontal="@dimen/notification_2025_importance_button_padding_horizontal"
+                android:gravity="center_vertical"
+                android:clickable="true"
+                android:focusable="true"
+                android:background="@drawable/notification_2025_guts_priority_button_bg"
+                android:orientation="horizontal"
+                android:visibility="gone">
+                <ImageView
+                    android:id="@+id/automatic_icon"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:paddingEnd="@*android:dimen/notification_2025_margin"
+                    android:src="@drawable/ic_notifications_automatic"
+                    android:background="@android:color/transparent"
+                    android:tint="@color/notification_guts_priority_contents"
+                    android:clickable="false"
+                    android:focusable="false"/>
+                <LinearLayout
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    android:orientation="vertical"
+                    android:gravity="center"
+                >
+                    <TextView
+                        android:id="@+id/automatic_label"
+                        android:layout_width="match_parent"
+                        android:layout_height="wrap_content"
+                        android:layout_weight="1"
+                        android:ellipsize="end"
+                        android:maxLines="1"
+                        android:clickable="false"
+                        android:focusable="false"
+                        android:textAppearance="@style/TextAppearance.NotificationImportanceButton"
+                        android:text="@string/notification_automatic_title"/>
+                    <TextView
+                        android:id="@+id/automatic_summary"
+                        android:layout_width="match_parent"
+                        android:layout_height="wrap_content"
+                        android:layout_marginTop="@dimen/notification_importance_button_description_top_margin"
+                        android:visibility="gone"
+                        android:text="@string/notification_channel_summary_automatic"
+                        android:clickable="false"
+                        android:focusable="false"
+                        android:ellipsize="end"
+                        android:maxLines="2"
+                        android:textAppearance="@style/TextAppearance.NotificationImportanceDetail"/>
+                </LinearLayout>
+            </com.android.systemui.statusbar.notification.row.ButtonLinearLayout>
+
+            <com.android.systemui.statusbar.notification.row.ButtonLinearLayout
+                android:id="@+id/alert"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:paddingVertical="@dimen/notification_2025_importance_button_padding_vertical"
+                android:paddingHorizontal="@dimen/notification_2025_importance_button_padding_horizontal"
+                android:gravity="center_vertical"
+                android:clickable="true"
+                android:focusable="true"
+                android:background="@drawable/notification_2025_guts_priority_button_bg"
+                android:orientation="horizontal">
+                <ImageView
+                    android:id="@+id/alert_icon"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:paddingEnd="@*android:dimen/notification_2025_margin"
+                    android:src="@drawable/ic_notifications_alert"
+                    android:background="@android:color/transparent"
+                    android:tint="@color/notification_guts_priority_contents"
+                    android:clickable="false"
+                    android:focusable="false"/>
+                <LinearLayout
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    android:orientation="vertical"
+                    android:gravity="center"
+                    >
+                    <TextView
+                        android:id="@+id/alert_label"
+                        android:layout_width="match_parent"
+                        android:layout_height="wrap_content"
+                        android:layout_weight="1"
+                        android:ellipsize="end"
+                        android:maxLines="1"
+                        android:clickable="false"
+                        android:focusable="false"
+                        android:textAppearance="@style/TextAppearance.NotificationImportanceButton"
+                        android:text="@string/notification_alert_title"/>
+                    <TextView
+                        android:id="@+id/alert_summary"
+                        android:layout_width="match_parent"
+                        android:layout_height="wrap_content"
+                        android:visibility="gone"
+                        android:text="@string/notification_channel_summary_default"
+                        android:clickable="false"
+                        android:focusable="false"
+                        android:ellipsize="end"
+                        android:maxLines="2"
+                        android:textAppearance="@style/TextAppearance.NotificationImportanceDetail"/>
+                </LinearLayout>
+            </com.android.systemui.statusbar.notification.row.ButtonLinearLayout>
+
+            <com.android.systemui.statusbar.notification.row.ButtonLinearLayout
+                android:id="@+id/silence"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="@dimen/notification_importance_button_separation"
+                android:paddingVertical="@dimen/notification_2025_importance_button_padding_vertical"
+                android:paddingHorizontal="@dimen/notification_2025_importance_button_padding_horizontal"
+                android:gravity="center_vertical"
+                android:clickable="true"
+                android:focusable="true"
+                android:background="@drawable/notification_2025_guts_priority_button_bg"
+                android:orientation="horizontal">
+                <ImageView
+                    android:id="@+id/silence_icon"
+                    android:src="@drawable/ic_notifications_silence"
+                    android:background="@android:color/transparent"
+                    android:tint="@color/notification_guts_priority_contents"
+                    android:layout_gravity="center"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:paddingEnd="@*android:dimen/notification_2025_margin"
+                    android:clickable="false"
+                    android:focusable="false"/>
+                <LinearLayout
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    android:orientation="vertical"
+                    android:gravity="center"
+                    >
+                    <TextView
+                        android:id="@+id/silence_label"
+                        android:layout_width="match_parent"
+                        android:layout_height="wrap_content"
+                        android:ellipsize="end"
+                        android:maxLines="1"
+                        android:clickable="false"
+                        android:focusable="false"
+                        android:layout_toEndOf="@id/silence_icon"
+                        android:textAppearance="@style/TextAppearance.NotificationImportanceButton"
+                        android:text="@string/notification_silence_title"/>
+                    <TextView
+                        android:id="@+id/silence_summary"
+                        android:layout_width="match_parent"
+                        android:layout_height="wrap_content"
+                        android:visibility="gone"
+                        android:text="@string/notification_channel_summary_low"
+                        android:clickable="false"
+                        android:focusable="false"
+                        android:ellipsize="end"
+                        android:maxLines="2"
+                        android:textAppearance="@style/TextAppearance.NotificationImportanceDetail"/>
+                </LinearLayout>
+            </com.android.systemui.statusbar.notification.row.ButtonLinearLayout>
+
+        </LinearLayout>
+
+        <LinearLayout
+            android:id="@+id/bottom_buttons"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="@*android:dimen/notification_2025_margin"
+            android:minHeight="@dimen/notification_2025_guts_button_size"
+            android:gravity="center_vertical"
+            >
+            <TextView
+                android:id="@+id/turn_off_notifications"
+                android:text="@string/inline_turn_off_notifications"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginEnd="32dp"
+                android:paddingTop="8dp"
+                android:paddingBottom="@*android:dimen/notification_2025_margin"
+                android:gravity="center"
+                android:minWidth="@dimen/notification_2025_min_tap_target_size"
+                android:minHeight="@dimen/notification_2025_min_tap_target_size"
+                android:maxWidth="200dp"
+                style="@style/TextAppearance.NotificationInfo.Button"
+                android:textSize="@*android:dimen/notification_2025_action_text_size"/>
+            <TextView
+                android:id="@+id/done"
+                android:text="@string/inline_ok_button"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:paddingTop="8dp"
+                android:paddingBottom="@*android:dimen/notification_2025_margin"
+                android:gravity="center"
+                android:minWidth="@dimen/notification_2025_min_tap_target_size"
+                android:minHeight="@dimen/notification_2025_min_tap_target_size"
+                android:maxWidth="125dp"
+                style="@style/TextAppearance.NotificationInfo.Button"
+                android:textSize="@*android:dimen/notification_2025_action_text_size"/>
+        </LinearLayout>
+    </LinearLayout>
+</com.android.systemui.statusbar.notification.row.NotificationInfo>
diff --git a/packages/SystemUI/res/layout/volume_dialog_top_section.xml b/packages/SystemUI/res/layout/volume_dialog_top_section.xml
index 4fc20e2..29f5248 100644
--- a/packages/SystemUI/res/layout/volume_dialog_top_section.xml
+++ b/packages/SystemUI/res/layout/volume_dialog_top_section.xml
@@ -22,7 +22,6 @@
     android:clipChildren="false"
     android:clipToPadding="false"
     android:gravity="center"
-    android:layoutDirection="ltr"
     android:paddingEnd="@dimen/volume_dialog_ringer_drawer_diff_end_margin"
     app:layoutDescription="@xml/volume_dialog_ringer_drawer_motion_scene">
 
diff --git a/packages/SystemUI/res/values-af/strings.xml b/packages/SystemUI/res/values-af/strings.xml
index d9a28a6..d8e08fc 100644
--- a/packages/SystemUI/res/values-af/strings.xml
+++ b/packages/SystemUI/res/values-af/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth gekoppel."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Bluetooth-toestelikoon"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Klik om toestelbesonderhede op te stel."</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Stel toestelbesonderhede op"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Sien alle toestelle"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Bind nuwe toestel saam"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Batterypersentasie is onbekend."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Gekoppel aan <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Gekoppel aan <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Vou groep uit."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Maak app oop."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Nie gekoppel nie."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Swerwing"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Invoer"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Gehoortoestelle"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Skakel tans aan …"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Kan nie helderheid verstel nie omdat dit deur die topapp beheer word"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Outodraai"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Outodraai skerm"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Ligging"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Verrigting van veelvuldige take"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Gebruik verdeelde skerm met app aan die regterkant"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Gebruik verdeelde skerm met app aan die linkerkant"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Gebruik volskerm"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Gebruik rekenaaraansig"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Skakel oor na app regs of onder terwyl jy verdeelde skerm gebruik"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Skakel oor na app links of bo terwyl jy verdeelde skerm gebruik"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Tydens verdeelde skerm: verplaas ’n app van een skerm na ’n ander"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Bekyk onlangse apps"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Wissel apps"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Klaar"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Volgende"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Probeer weer!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Gaan terug"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Swiep links of regs met drie vingers op jou raakpaneel"</string>
diff --git a/packages/SystemUI/res/values-am/strings.xml b/packages/SystemUI/res/values-am/strings.xml
index ba1c3ed..ea51f00 100644
--- a/packages/SystemUI/res/values-am/strings.xml
+++ b/packages/SystemUI/res/values-am/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"ብሉቱዝ ተያይዟል።"</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"የብሉቱዝ መሣሪያ አዶ"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"የመሣሪያ ዝርዝርን ለማዋቀር ጠቅ ያድርጉ"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>። የመሣሪያ ዝርዝር ያዋቅሩ"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"ሁሉንም መሣሪያዎች ይመልከቱ"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"አዲስ መሣሪያ ያጣምሩ"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"የባትሪ መቶኛ አይታወቅም።"</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"ከ<xliff:g id="BLUETOOTH">%s</xliff:g> ጋር ተገናኝቷል።"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"ከ<xliff:g id="CAST">%s</xliff:g> ጋር ተገናኝቷል።"</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"ቡድንን ዘርጋ።"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"መተግበሪያ ክፈት።"</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"አልተገናኘም።"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"በማዛወር ላይ"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"ግቤት"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"መስሚያ አጋዥ መሣሪያዎች"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"በማብራት ላይ..."</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"ከላይ ባለው መተግበሪያ ቁጥጥር ላይ ስለሆነ ብሩህነትን ማስተካከል አልተቻለም"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"በራስ ሰር አሽከርክር"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"ማያ ገጽን በራስ-አሽከርክር"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"አካባቢ"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"ብዙ ተግባራትን በተመሳሳይ ጊዜ ማከናወን"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"መተግበሪያ በስተቀኝ ላይ ሆኖ የተከፈለ ማያ ገፅን ይጠቀሙ"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"መተግበሪያ በስተግራ ላይ ሆኖ የተከፈለ ማያ ገፅን ይጠቀሙ"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"ሙሉ ገፅ ዕይታን ይጠቀሙ"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"የዴስክቶፕ ዕይታ ይጠቀሙ"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"የተከፈለ ማያ ገጽን ሲጠቀሙ በቀኝ ወይም ከታች ወዳለ መተግበሪያ ይቀይሩ"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"የተከፈለ ማያ ገጽን ሲጠቀሙ በቀኝ ወይም ከላይ ወዳለ መተግበሪያ ይቀይሩ"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"በተከፈለ ማያ ገጽ ወቅት፡- መተግበሪያን ከአንዱ ወደ ሌላው ተካ"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"የቅርብ ጊዜ መተግበሪያዎችን አሳይ"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"መተግበሪያዎችን ይቀያይሩ"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"ተከናውኗል"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"ቀጣይ"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"እንደገና ይሞክሩ!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"ወደኋላ ተመለስ"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"የመዳሰሻ ሰሌዳዎ ላይ ሦስት ጣቶችን በመጠቀም ወደ ግራ ወይም ወደ ቀኝ ያንሸራትቱ"</string>
diff --git a/packages/SystemUI/res/values-ar/strings.xml b/packages/SystemUI/res/values-ar/strings.xml
index 905183c..99c156b 100644
--- a/packages/SystemUI/res/values-ar/strings.xml
+++ b/packages/SystemUI/res/values-ar/strings.xml
@@ -255,6 +255,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"متصل بـ <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"تم الاتصال بـ <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"سيتم توسيع المجموعة."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"سيتم فتح التطبيق."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"غير متصل."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"التجوال"</string>
@@ -332,7 +336,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"الإدخال"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"سماعات الأذن الطبية"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"جارٍ التفعيل…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"لا يمكن ضبط مستوى السطوع لأنّ التطبيق الأول يتحكّم فيه"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"التدوير التلقائي"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"التدوير التلقائي للشاشة"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"الموقع الجغرافي"</string>
@@ -586,7 +591,7 @@
     <string name="media_projection_entry_cast_permission_dialog_warning_entire_screen" msgid="4040447861037324017">"سيتم بث كل المحتوى المعروض على شاشتك، لذا يُرجى توخي الحذر بشأن المعلومات الظاهرة، مثل كلمات المرور وتفاصيل الدفع والرسائل والصور والمقاطع الصوتية والفيديوهات."</string>
     <string name="media_projection_entry_cast_permission_dialog_warning_single_app" msgid="7487834861348460736">"سيتم بث كل المحتوى المعروض أو الذي يتم تشغيله في ذلك التطبيق، لذا يُرجى توخي الحذر بشأن المعلومات الظاهرة، مثل كلمات المرور وتفاصيل الدفع والرسائل والصور والمقاطع الصوتية والفيديوهات."</string>
     <string name="media_projection_entry_cast_permission_dialog_continue_entire_screen" msgid="3261124185304676483">"بث محتوى الشاشة"</string>
-    <string name="media_projection_entry_cast_app_selector_title" msgid="6323062146661922387">"اختيار تطبيق لبث محتواه"</string>
+    <string name="media_projection_entry_cast_app_selector_title" msgid="6323062146661922387">"يُرجى اختيار تطبيق لبث محتواه"</string>
     <string name="media_projection_entry_generic_permission_dialog_title" msgid="4519802931547483628">"هل تريد بدء المشاركة؟"</string>
     <string name="media_projection_entry_generic_permission_dialog_warning_entire_screen" msgid="5407906851409410209">"‏أثناء المشاركة أو التسجيل أو البثّ، يمكن لنظام Android الوصول إلى كل المحتوى المعروض على شاشتك أو الذي يتم تشغيله على جهازك، لذا يُرجى توخي الحذر بشأن المعلومات، مثل كلمات المرور وتفاصيل الدفع والرسائل والصور وملفات الصوت والفيديو."</string>
     <string name="media_projection_entry_generic_permission_dialog_warning_single_app" msgid="3454859977888159495">"‏أثناء مشاركة محتوى تطبيق أو تسجيله أو بثّه، يمكن لنظام Android الوصول إلى كل المحتوى المعروض أو الذي يتم تشغيله في ذلك التطبيق، لذا يُرجى توخي الحذر بشأن المعلومات مثل كلمات المرور وتفاصيل الدفع والرسائل والصور وملفات الصوت والفيديو."</string>
@@ -991,8 +996,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"إظهار رموز الإشعارات ذات الأولوية المنخفضة"</string>
     <string name="other" msgid="429768510980739978">"غير ذلك"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"تبديل حجم المربّع"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"إزالة بطاقة"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"إضافة مربّع إلى الموضع الأخير"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"نقل بطاقة"</string>
@@ -1546,10 +1550,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"لعرض التطبيقات المستخدَمة مؤخرًا، مرِّر سريعًا للأعلى مع استمرار الضغط على لوحة اللمس باستخدام 3 أصابع"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"لعرض جميع التطبيقات، اضغط على مفتاح الإجراء في لوحة المفاتيح"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"إشعار مخفي"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"يُرجى فتح القفل لعرض المعلومات"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"يُرجى فتح القفل لعرض الرمز"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"التعليم السياقي"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"استخدِم لوحة اللمس للرجوع"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"مرِّر سريعًا لليمين أو لليسار باستخدام 3 أصابع. انقر للتعرّف على المزيد من الإيماءات."</string>
diff --git a/packages/SystemUI/res/values-ar/tiles_states_strings.xml b/packages/SystemUI/res/values-ar/tiles_states_strings.xml
index abb0d85..aac5a35 100644
--- a/packages/SystemUI/res/values-ar/tiles_states_strings.xml
+++ b/packages/SystemUI/res/values-ar/tiles_states_strings.xml
@@ -196,7 +196,9 @@
     <item msgid="6419996398343291862">"متوقّفة"</item>
     <item msgid="5908720590832378783">"مفعّلة"</item>
   </string-array>
-    <!-- no translation found for tile_states_desktopeffects:0 (6253480000354287321) -->
-    <!-- no translation found for tile_states_desktopeffects:1 (6641673879029894995) -->
-    <!-- no translation found for tile_states_desktopeffects:2 (5806682401126108403) -->
+  <string-array name="tile_states_desktopeffects">
+    <item msgid="6253480000354287321">"غير متوفّر"</item>
+    <item msgid="6641673879029894995">"غير مفعَّل"</item>
+    <item msgid="5806682401126108403">"مفعَّل"</item>
+  </string-array>
 </resources>
diff --git a/packages/SystemUI/res/values-as/strings.xml b/packages/SystemUI/res/values-as/strings.xml
index 784dfee..17d24da 100644
--- a/packages/SystemUI/res/values-as/strings.xml
+++ b/packages/SystemUI/res/values-as/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"ব্লুটুথ সংযোগ হ’ল।"</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"ব্লুটুথ ডিভাইচৰ চিহ্ন"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"ডিভাইচৰ সবিশেষ কনফিগাৰ কৰিবলৈ ক্লিক কৰক"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>। ডিভাইচৰ সবিশেষ কনফিগাৰ কৰক"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"আটাইবোৰ ডিভাইচ চাওক"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"নতুন ডিভাইচ পেয়াৰ কৰক"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"বেটাৰীৰ চাৰ্জৰ শতাংশ অজ্ঞাত।"</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g>ৰ লগত সংযোগ কৰা হ’ল।"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g>ত সংযোগ হ’ল।"</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"গোট বিস্তাৰ কৰক।"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"এপ্লিকেশ্বনটো খোলক।"</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"সংযোগ হৈ থকা নাই।"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"ৰ\'মিং"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"ইনপুট"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"শ্ৰৱণ যন্ত্ৰ"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"অন কৰি থকা হৈছে…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"উজ্জ্বলতা মিলাব নোৱাৰি কাৰণ সেয়া\n শীৰ্ষৰ এপটোৱে নিয়ন্ত্ৰণ কৰি আছে"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"স্বয়ং-ঘূৰ্ণন"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"স্বয়ং-ঘূৰ্ণন স্ক্ৰীন"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"অৱস্থান"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"মাল্টিটাস্কিং"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"সোঁফালে থকা এপ্‌টোৰ সৈতে বিভাজিত স্ক্ৰীন ব্যৱহাৰ কৰক"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"বাওঁফালে থকা এপ্‌টোৰ সৈতে বিভাজিত স্ক্ৰীন ব্যৱহাৰ কৰক"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"পূৰ্ণ স্ক্ৰীন ব্যৱহাৰ কৰক"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"ডেস্কটপ ভিউ ব্যৱহাৰ কৰক"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"বিভাজিত স্ক্ৰীন ব্যৱহাৰ কৰাৰ সময়ত সোঁফালে অথবা তলত থকা এপলৈ সলনি কৰক"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"বিভাজিত স্ক্ৰীন ব্যৱহাৰ কৰাৰ সময়ত বাওঁফালে অথবা ওপৰত থকা এপলৈ সলনি কৰক"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"বিভাজিত স্ক্ৰীনৰ ব্যৱহাৰ কৰাৰ সময়ত: কোনো এপ্ এখন স্ক্ৰীনৰ পৰা আনখনলৈ নিয়ক"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"শেহতীয়া এপ্‌সমূহ চাওক"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"এপ্‌সমূহ সলনি কৰক"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"হ’ল"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"পৰৱৰ্তী"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"পুনৰ চেষ্টা কৰক!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"উভতি যাওক"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"আপোনাৰ টাচ্চপেডত তিনিটা আঙুলি ব্যৱহাৰ কৰি বাওঁফাললৈ বা সোঁফাললৈ ছোৱাইপ কৰক"</string>
diff --git a/packages/SystemUI/res/values-az/strings.xml b/packages/SystemUI/res/values-az/strings.xml
index 20f3e37..a0eecd1 100644
--- a/packages/SystemUI/res/values-az/strings.xml
+++ b/packages/SystemUI/res/values-az/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth qoşulub."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Bluetooth cihazı ikonası"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Cihaz təfərrüatlarını konfiqurasiya etmək üçün klikləyin"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Cihaz detallarını konfiqurasiya edin"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Bütün cihazlara baxın"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Yeni cihaz birləşdirin"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Batareyanın faizi naməlumdur."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g> üzərindən qoşuldu."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g> cihazına qoşulub."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Qrupu genişləndirin."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Tətbiqi açın."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Qoşulu deyil."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Rouminq"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Giriş"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Eşitmə aparatları"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Aktiv edilir..."</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Yuxarıdakı tətbiq tərəfindən idarə olunduğu üçün parlaqlığı tənzimləmək mümkün deyil"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Avtodönüş"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Ekranın avtomatik dönməsi"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Məkan"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Çoxsaylı tapşırıq icrası"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Tətbiq sağda olmaqla bölünmüş ekranı istifadə edin"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Tətbiq solda olmaqla bölünmüş ekranı istifadə edin"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Tam ekrandan istifadə edin"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Masaüstü görünüşdən istifadə edin"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Bölünmüş ekran istifadə edərkən sağda və ya aşağıda tətbiqə keçin"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Bölünmüş ekran istifadə edərkən solda və ya yuxarıda tətbiqə keçin"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Bölünmüş ekran rejimində: tətbiqi birindən digərinə dəyişin"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Son tətbiqlərə baxın"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Başqa tətbiqə keçin"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Hazırdır"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Növbəti"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Yenidən cəhd edin!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Geri qayıdın"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Taçpeddə üç barmaqla sola və ya sağa sürüşdürün"</string>
diff --git a/packages/SystemUI/res/values-b+sr+Latn/strings.xml b/packages/SystemUI/res/values-b+sr+Latn/strings.xml
index 69ebc70..8921eff 100644
--- a/packages/SystemUI/res/values-b+sr+Latn/strings.xml
+++ b/packages/SystemUI/res/values-b+sr+Latn/strings.xml
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Povezani ste sa <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Povezani smo sa uređajem <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Proširite grupu."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Otvorite aplikaciju."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Nije povezano."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roming"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Unos"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Slušni aparati"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Uključuje se..."</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Ne možete da prilagodite osvetljenost jer je kontroliše aplikacija u vrhu"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Automatska rotacija"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Automatsko rotiranje ekrana"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Lokacija"</string>
@@ -986,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Prikaži ikone obaveštenja niskog prioriteta"</string>
     <string name="other" msgid="429768510980739978">"Drugo"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"uključivanje ili isključivanje veličine pločice"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"uklonili pločicu"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"dodali pločicu na poslednju poziciju"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Premestite pločicu"</string>
@@ -1540,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Da biste pregledali nedavne aplikacije, prevucite nagore i zadržite sa tri prsta na tačpedu"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Da biste pogledali sve aplikacije, pritisnite taster radnji na tastaturi"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Redigovano"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Otključajte za prikaz"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Otključajte da biste videli kôd"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Kontekstualno obrazovanje"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Koristite tačped za vraćanje nazad"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Prevucite ulevo ili udesno sa tri prsta. Dodirnite da biste videli više pokreta."</string>
diff --git a/packages/SystemUI/res/values-be/strings.xml b/packages/SystemUI/res/values-be/strings.xml
index 7c7c364..3568586 100644
--- a/packages/SystemUI/res/values-be/strings.xml
+++ b/packages/SystemUI/res/values-be/strings.xml
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Падлучаны да <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Ёсць падключэнне да <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Разгарнуць групу."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Адкрыць праграму."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Няма падключэння."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Роўмінг"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Увод"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Слыхавыя апараты"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Уключэнне…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Не ўдаецца адрэгуляваць яркасць, бо янакантралюецца асноўнай праграмай"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Аўтапаварот"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Аўтаматычны паварот экрана"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Месцазнаходжанне"</string>
diff --git a/packages/SystemUI/res/values-bg/strings.xml b/packages/SystemUI/res/values-bg/strings.xml
index 0f2ab17..9d6be13 100644
--- a/packages/SystemUI/res/values-bg/strings.xml
+++ b/packages/SystemUI/res/values-bg/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth е включен."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Икона за устройство с Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Кликнете, за да конфигурирате подробностите за устройството"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Конфигуриране на подробностите за устройството"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Вижте всички устройства"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Сдвояване на ново устройство"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Процентът на батерията е неизвестен."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Има връзка с <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Установена е връзка с/ъс <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Разгъване на групата."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Отваряне на приложението."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Няма връзка."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Роуминг"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Вход"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Слухови апарати"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Включва се..."</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Яркостта не може да се коригира, защото се контролира от приложението на екрана"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Авт. ориентация"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Автоматично завъртане на екрана"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Местоположение"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Няколко задачи едновременно"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Използване на разделен екран с приложението вдясно"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Използване на разделен екран с приложението вляво"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Използване режима на цял екран"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Използване на изгледа за настолни компютри"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Превключване към приложението вдясно/отдолу в режима на разделен екран"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Превключване към приложението вляво/отгоре в режима на разделен екран"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"При разделен екран: замяна на дадено приложение с друго"</string>
@@ -991,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Показване на иконите за известията с нисък приоритет"</string>
     <string name="other" msgid="429768510980739978">"Друго"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"превключване на размера на панела"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"премахване на панел"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"добавяне на панела на последната позиция"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Преместване на панел"</string>
@@ -1507,8 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Преглед на скорошните приложения"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Превключване на приложенията"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Готово"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Напред"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Опитайте отново!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Назад"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Плъзнете три пръста наляво или надясно по сензорния панел"</string>
@@ -1546,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"За да прегледате скорошните приложения, плъзнете нагоре по сензорния панел с три пръста и задръжте"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"За да прегледате всичките си приложения, натиснете клавиша за действия на клавиатурата си"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Скрито"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Отключете за преглед"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Отключете, за да прегледате кода"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Контекстуално обучение"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Използвайте сензорния панел, за да се върнете назад"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Плъзнете три пръста наляво или надясно. Докоснете, за да научите повече жестове."</string>
diff --git a/packages/SystemUI/res/values-bn/strings.xml b/packages/SystemUI/res/values-bn/strings.xml
index 10a1fd6..636d4f2 100644
--- a/packages/SystemUI/res/values-bn/strings.xml
+++ b/packages/SystemUI/res/values-bn/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"ব্লুটুথ সংযুক্ত হয়েছে৷"</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"ব্লুটুথ ডিভাইসের আইকন"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"ডিভাইসের বিবরণ কনফিগার করতে ক্লিক করুন"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>। ডিভাইসের বিবরণ কনফিগার করুন"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"সব ডিভাইস দেখুন"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"নতুন ডিভাইস পেয়ার করুন"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"ব্যাটারি কত শতাংশ আছে তা জানা যায়নি।"</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g>এ সংযুক্ত হয়ে আছে।"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g> এর সাথে সংযুক্ত৷"</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"গ্রুপ বড় করুন।"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"অ্যাপ্লিকেশন খুলুন।"</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"সংযুক্ত নয়৷"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"রোমিং"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"ইনপুট"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"হিয়ারিং এড"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"চালু করা হচ্ছে…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"উজ্জ্বলতা টপ অ্যাপ নিয়ন্ত্রণ করায় এটিকে অ্যাডজাস্ট করা যাচ্ছে না"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"নিজে থেকে ঘুরবে"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"অটো-রোটেট স্ক্রিন"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"লোকেশন"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"মাল্টিটাস্কিং"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"ডানদিকে বর্তমান অ্যাপে স্প্লিট স্ক্রিন ব্যবহার করুন"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"বাঁদিকে বর্তমান অ্যাপে স্প্লিট স্ক্রিন ব্যবহার করুন"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"ফুল-স্ক্রিন মোড ব্যবহার করুন"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"ডেস্কটপ ভিউ ব্যবহার করুন"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"স্প্লিট স্ক্রিন ব্যবহার করার সময় ডানদিকের বা নিচের অ্যাপে পাল্টে নিন"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"স্প্লিট স্ক্রিন ব্যবহার করার সময় বাঁদিকের বা উপরের অ্যাপে পাল্টে নিন"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"\'স্প্লিট স্ক্রিন\' থাকাকালীন: একটি অ্যাপ থেকে অন্যটিতে পাল্টান"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"সম্প্রতি ব্যবহার করা হয়েছে এমন অ্যাপ দেখুন"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"অ্যাপ পরিবর্তন করুন"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"হয়ে গেছে"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"এরপর"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"আবার চেষ্টা করুন!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"ফিরে যান"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"আপনার টাচপ্যাডে তিনটি আঙুল ব্যবহার করে বাঁদিকে বা ডানদিকে সোয়াইপ করুন"</string>
diff --git a/packages/SystemUI/res/values-bs/strings.xml b/packages/SystemUI/res/values-bs/strings.xml
index 8eadd4d..331bac2 100644
--- a/packages/SystemUI/res/values-bs/strings.xml
+++ b/packages/SystemUI/res/values-bs/strings.xml
@@ -245,13 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth je povezan."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Ikona Bluetooth uređaja"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Kliknite da konfigurirate detalje uređaja"</string>
-    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Konfigurirajte pojedinosti o uređaju"</string>
-    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Pogledajte sve uređaje"</string>
-    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Upari novi uređaj"</string>
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Konfiguracija detalja o uređaju"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Prikaz svih uređaja"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Uparivanje novog uređaja"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Postotak napunjenosti baterije nije poznat"</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Povezan na <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Povezan na <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Proširivanje grupe."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Otvaranje aplikacije."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Nije povezano."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roming"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Ulaz"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Slušni aparati"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Uključivanje…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Nije moguće podesiti osvijetljenost jer njome upravlja aplikacija pri vrhu"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Automatsko rotiranje"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Automatsko rotiranje ekrana"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Lokacija"</string>
@@ -898,8 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitasking"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Korištenje podijeljenog ekrana s aplikacijom na desnoj strani"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Korištenje podijeljenog ekrana s aplikacijom na lijevoj strani"</string>
-    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Upotreba prikaza na cijelom zaslonu"</string>
-    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Upotreba prikaza na računalu"</string>
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Korištenje prikaza preko cijelog ekrana"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Korištenje prikaza na računaru"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Prelazak u aplikaciju desno ili ispod uz podijeljeni ekran"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Pređite u aplikaciju lijevo ili iznad dok koristite podijeljeni ekran"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Za vrijeme podijeljenog ekrana: zamjena jedne aplikacije drugom"</string>
@@ -986,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Prikaži ikone obavještenja niskog prioriteta"</string>
     <string name="other" msgid="429768510980739978">"Ostalo"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"promjenu veličine pločice"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"uklanjanje kartice"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"dodavanje kartice na posljednji položaj"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Pomjeranje kartice"</string>
@@ -1502,7 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Prikaži nedavne aplikacije"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Promijenite aplikaciju"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Gotovo"</string>
-    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Dalje"</string>
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Naprijed"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Pokušajte ponovo!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Nazad"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Prevucite ulijevo ili udesno s tri prsta na dodirnoj podlozi"</string>
@@ -1540,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Da pregledate nedavne aplikacije, prevucite nagore i zadržite s tri prsta na dodirnoj podlozi"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Da pregledate sve aplikacije, pritisnite tipku radnji na tastaturi"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Redigovano"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Otključajte za prikaz"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Otključajte za prikaz koda"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Kontekstualno obrazovanje"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Koristite dodirnu podlogu da se vratite"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Prevucite ulijevo ili udesno s tri prsta. Dodirnite da naučite više pokreta."</string>
diff --git a/packages/SystemUI/res/values-ca/strings.xml b/packages/SystemUI/res/values-ca/strings.xml
index 8e4da1d..01d7692 100644
--- a/packages/SystemUI/res/values-ca/strings.xml
+++ b/packages/SystemUI/res/values-ca/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth connectat."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Icona de dispositiu Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Fes clic per configurar els detalls del dispositiu"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Configura els detalls del dispositiu"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Mostra tots els dispositius"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Vincula un dispositiu nou"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Es desconeix el percentatge de bateria."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"S\'ha connectat a <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Està connectat amb <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Desplega el grup."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Obre l\'aplicació."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Sense connexió."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Itinerància"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Entrada"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Audiòfons"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"S\'està activant…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"No es pot ajustar la brillantor perquè està controlada per l\'aplicació superior"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Gira automàticament"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Gira la pantalla automàticament"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Ubicació"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitasca"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Utilitzar la pantalla dividida amb l\'aplicació a la dreta"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Utilitzar la pantalla dividida amb l\'aplicació a l\'esquerra"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Utilitza la pantalla completa"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Utilitza la visualització per a ordinadors"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Canvia a l\'aplicació de la dreta o de sota amb la pantalla dividida"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Canvia a l\'aplicació de l\'esquerra o de dalt amb la pantalla dividida"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Durant el mode de pantalla dividida: substitueix una app per una altra"</string>
@@ -991,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Mostra les icones de notificació amb prioritat baixa"</string>
     <string name="other" msgid="429768510980739978">"Altres"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"commutar la mida de la icona"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"suprimir el mosaic"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"afegir una icona a la darrera posició"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Mou el mosaic"</string>
@@ -1507,8 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Mostra les aplicacions recents"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Canviar d\'aplicació"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Fet"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Següent"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Torna-ho a provar"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Torna"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Llisca cap a l\'esquerra o cap a la dreta amb tres dits al ratolí tàctil"</string>
@@ -1546,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Per veure les aplicacions recents, llisca cap amunt amb tres dits i mantén premut al ratolí tàctil"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Per veure totes les aplicacions, prem la tecla d\'acció al teclat"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Emmascarat"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Desbloqueja per veure"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Desbloqueja per veure el codi"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Educació contextual"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Utilitza el ratolí tàctil per tornar enrere"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Fes lliscar tres dits cap a l\'esquerra o cap a la dreta. Toca per aprendre més gestos."</string>
diff --git a/packages/SystemUI/res/values-cs/strings.xml b/packages/SystemUI/res/values-cs/strings.xml
index 6d38055..15e4703c 100644
--- a/packages/SystemUI/res/values-cs/strings.xml
+++ b/packages/SystemUI/res/values-cs/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Rozhraní Bluetooth je připojeno."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Ikona zařízení Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Kliknutím nakonfigurujete podrobnosti o zařízení"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Konfigurovat podrobnosti o zařízení"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Zobrazit všechna zařízení"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Spárovat nové zařízení"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Procento baterie není známé."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Připojeno k zařízení <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Jste připojeni k zařízení <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Rozbalit skupinu."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Otevřít aplikaci."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Nepřipojeno."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Vstup"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Naslouchátka"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Zapínání…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Jas nelze upravit, protože ho řídí hlavní aplikace"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Autom. otáčení"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Automatické otáčení obrazovky"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Poloha"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitasking"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Použít rozdělenou obrazovku s aplikací vpravo"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Použít rozdělenou obrazovku s aplikací vlevo"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Použít celou obrazovku"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Použít zobrazení na počítači"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Přepnout na aplikaci vpravo nebo dole v režimu rozdělené obrazovky"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Přepnout na aplikaci vlevo nebo nahoře v režimu rozdělené obrazovky"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"V režimu rozdělené obrazovky: nahradit jednu aplikaci druhou"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Zobrazit nedávné aplikace"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Přepnout aplikace"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Hotovo"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Další"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Zkuste to znovu."</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Zpět"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Přejeďte po touchpadu třemi prsty doleva nebo doprava"</string>
diff --git a/packages/SystemUI/res/values-da/strings.xml b/packages/SystemUI/res/values-da/strings.xml
index a5801cb..ab87c46 100644
--- a/packages/SystemUI/res/values-da/strings.xml
+++ b/packages/SystemUI/res/values-da/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth tilsluttet."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Ikon for Bluetooth-enhed"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Klik for at konfigurere enhedsoplysninger"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Konfigurer enhedsoplysninger"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Se alle enheder"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Par ny enhed"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Batteriniveauet er ukendt."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Forbundet med <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Forbundet til <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Udvid gruppe."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Åbn app."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Ikke tilsluttet."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Input"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Høreapparater"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Aktiverer…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Lysstyrken kan ikke justeres, fordi den styres af den øverste app"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Roter automatisk"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Roter skærmen automatisk"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Lokation"</string>
@@ -586,7 +588,7 @@
     <string name="media_projection_entry_cast_permission_dialog_warning_entire_screen" msgid="4040447861037324017">"Når du caster hele din skærm, er alt på skærmen synligt. Vær derfor forsigtig med ting såsom adgangskoder, betalingsoplysninger, beskeder, billeder, lyd og video."</string>
     <string name="media_projection_entry_cast_permission_dialog_warning_single_app" msgid="7487834861348460736">"Når du caster en app, er alt, der vises eller afspilles i appen, synligt. Vær derfor forsigtig med ting såsom adgangskoder, betalingsoplysninger, beskeder, billeder, lyd og video."</string>
     <string name="media_projection_entry_cast_permission_dialog_continue_entire_screen" msgid="3261124185304676483">"Cast skærm"</string>
-    <string name="media_projection_entry_cast_app_selector_title" msgid="6323062146661922387">"Vælg den app, du vil caste fra"</string>
+    <string name="media_projection_entry_cast_app_selector_title" msgid="6323062146661922387">"Vælg den app, du caste"</string>
     <string name="media_projection_entry_generic_permission_dialog_title" msgid="4519802931547483628">"Vil du begynde at dele?"</string>
     <string name="media_projection_entry_generic_permission_dialog_warning_entire_screen" msgid="5407906851409410209">"Når du deler, optager eller caster, har Android adgang til alt, der er synligt på din skærm eller afspilles på din enhed. Vær derfor forsigtig med ting såsom adgangskoder, betalingsoplysninger, beskeder, billeder, lyd og video."</string>
     <string name="media_projection_entry_generic_permission_dialog_warning_single_app" msgid="3454859977888159495">"Når du deler, optager eller caster en app, har Android adgang til alt, der vises eller afspilles i den pågældende app. Vær derfor forsigtig med ting såsom adgangskoder, betalingsoplysninger, beskeder, billeder, lyd og video."</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitasking"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Brug opdelt skærm med appen til højre"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Brug opdelt skærm med appen til venstre"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Brug fuld skærm"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Brug computervenlig visning"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Skift til en app til højre eller nedenfor, når du bruger opdelt skærm"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Skift til en app til venstre eller ovenfor, når du bruger opdelt skærm"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Ved opdelt skærm: Udskift én app med en anden"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Se seneste apps"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Skift mellem apps"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Udfør"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Næste"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Prøv igen!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Gå tilbage"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Stryg til venstre eller højre med tre fingre på touchpladen"</string>
diff --git a/packages/SystemUI/res/values-de/strings.xml b/packages/SystemUI/res/values-de/strings.xml
index 132de74..99e32ec 100644
--- a/packages/SystemUI/res/values-de/strings.xml
+++ b/packages/SystemUI/res/values-de/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Mit Bluetooth verbunden"</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Symbol des Bluetooth-Geräts"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Klicke, um das Gerätedetail zu konfigurieren"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Gerätedetail konfigurieren."</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Alle Geräte anzeigen"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Neues Gerät koppeln"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Akkustand unbekannt."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Mit <xliff:g id="BLUETOOTH">%s</xliff:g> verbunden"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Verbunden mit <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Gruppe erweitern."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Anwendung öffnen."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Nicht verbunden"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Eingabe"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Hörgerät"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Wird aktiviert…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Die Helligkeit kann nicht angepasst werden, weil sie von der obersten App gesteuert wird"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Autom. drehen"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Bildschirm automatisch drehen"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Standort"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitasking"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Splitscreen mit der App auf der rechten Seite nutzen"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Splitscreen mit der App auf der linken Seite nutzen"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Vollbildmodus verwenden"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Desktop-Ansicht verwenden"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Im Splitscreen-Modus zu einer App rechts oder unten wechseln"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Im Splitscreen-Modus zu einer App links oder oben wechseln"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Im Splitscreen: eine App durch eine andere ersetzen"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Letzte Apps aufrufen"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Zwischen Apps wechseln"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Fertig"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Weiter"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Noch einmal versuchen"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Zurück"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Wische mit drei Fingern auf dem Touchpad nach links oder rechts"</string>
diff --git a/packages/SystemUI/res/values-el/strings.xml b/packages/SystemUI/res/values-el/strings.xml
index a628e21..d3bfc99 100644
--- a/packages/SystemUI/res/values-el/strings.xml
+++ b/packages/SystemUI/res/values-el/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Το Bluetooth είναι συνδεδεμένο."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Εικονίδιο συσκευής Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Κάντε κλικ για να διαμορφώσετε τις λεπτομέρειες συσκευής"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Διαμόρφωση λεπτομερειών συσκευής"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Εμφάνιση όλων των συσκευών"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Σύζευξη νέας συσκευής"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Άγνωστο ποσοστό μπαταρίας."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Συνδέθηκε στο <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Συνδέθηκε σε <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Αναπτύξτε την ομάδα."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Ανοίξτε την εφαρμογή."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Μη συνδεδεμένο"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Περιαγωγή"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Είσοδος"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Βοηθήματα ακοής"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Ενεργοποίηση…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Δεν είναι δυνατή η προσαρμογή της φωτεινότητας, επειδή ελέγχεται από την εφαρμογή στην κορυφή"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Αυτόματη περιστροφή"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Αυτόματη περιστροφή οθόνης"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Τοποθεσία"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Πολυδιεργασία"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Χρήση διαχωρισμού οθόνης με την εφαρμογή στα δεξιά"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Χρήση διαχωρισμού οθόνης με την εφαρμογή στα αριστερά"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Χρήση πλήρους οθόνης"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Χρήση προβολής για υπολογιστές"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Εναλλαγή στην εφαρμογή δεξιά ή κάτω κατά τη χρήση διαχωρισμού οθόνης"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Εναλλαγή σε εφαρμογή αριστερά ή επάνω κατά τη χρήση διαχωρισμού οθόνης"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Κατά τον διαχωρισμό οθόνης: αντικατάσταση μιας εφαρμογής με άλλη"</string>
@@ -991,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Εμφάνιση εικονιδίων ειδοποιήσεων χαμηλής προτεραιότητας"</string>
     <string name="other" msgid="429768510980739978">"Άλλο"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"εναλλαγή μεγέθους για το πλακάκι"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"κατάργηση πλακιδίου"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"προσθήκη πλακιδίου στην τελευταία θέση"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Μετακίνηση πλακιδίου"</string>
@@ -1507,8 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Προβολή πρόσφατων εφαρμογών"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Εναλλαγή μεταξύ εφαρμογών"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Τέλος"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Επόμενο"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Δοκιμάστε ξανά!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Επιστροφή"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Σύρετε προς τα αριστερά ή τα δεξιά με τρία δάχτυλα στην επιφάνεια αφής"</string>
@@ -1546,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Για πρόσφατες εφαρμογές, σαρώστε προς τα πάνω με τρία δάχτυλα και κρατήστε τα στην επιφάνεια αφής"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Για να δείτε όλες τις εφαρμογές, πιέστε το πλήκτρο ενέργειας στο πληκτρολόγιό σας"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Αποκρύφτηκε"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Ξεκλειδώστε για προβολή"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Ξεκλειδώστε για προβολή κωδικού"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Εκπαίδευση με βάση τα συμφραζόμενα"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Χρήση της επιφάνειας αφής για επιστροφή"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Σύρετε προς τα αριστερά ή τα δεξιά με τρία δάχτυλα. Πατήστε για να μάθετε περισσότερες κινήσεις."</string>
diff --git a/packages/SystemUI/res/values-en-rAU/strings.xml b/packages/SystemUI/res/values-en-rAU/strings.xml
index 1b36a7c..c253711 100644
--- a/packages/SystemUI/res/values-en-rAU/strings.xml
+++ b/packages/SystemUI/res/values-en-rAU/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth connected."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Bluetooth device icon"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Click to configure device detail"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Configure device detail"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"See all devices"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Pair new device"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Battery percentage unknown."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Connected to <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Connected to <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Expand group."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Open application."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Not connected."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Input"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Hearing aids"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Turning on…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Can\'t adjust brightness because it\'s being controlled by the top app"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Auto-rotate"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Auto-rotate screen"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Location"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multi-tasking"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Use split screen with app on the right"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Use split screen with app on the left"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Use fullscreen"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Use desktop view"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Switch to the app on the right or below while using split screen"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Switch to the app on the left or above while using split screen"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"During split screen: Replace an app from one to another"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"View recent apps"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Switch apps"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Done"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Next"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Try again."</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Go back"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Swipe left or right using three fingers on your touchpad"</string>
diff --git a/packages/SystemUI/res/values-en-rCA/strings.xml b/packages/SystemUI/res/values-en-rCA/strings.xml
index c6ba039..92e9d8d 100644
--- a/packages/SystemUI/res/values-en-rCA/strings.xml
+++ b/packages/SystemUI/res/values-en-rCA/strings.xml
@@ -252,6 +252,8 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Connected to <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Connected to <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Expand group."</string>
+    <string name="accessibility_add_device_to_group" msgid="5446422960697860806">"Add device to group."</string>
+    <string name="accessibility_remove_device_from_group" msgid="3114694270949142228">"Remove device from group."</string>
     <string name="accessibility_open_application" msgid="1749126077501259712">"Open application."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Not connected."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -329,7 +331,7 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Input"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Hearing aids"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Turning on…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Can\'t adjust brightness because it\'s being controlled by the top app"</string>
+    <string name="quick_settings_brightness_unable_adjust_msg" msgid="4124028416057617517">"Can\'t adjust brightness because it\'s being controlled by the top app"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Auto-rotate"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Auto-rotate screen"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Location"</string>
diff --git a/packages/SystemUI/res/values-en-rGB/strings.xml b/packages/SystemUI/res/values-en-rGB/strings.xml
index 1b36a7c..c253711 100644
--- a/packages/SystemUI/res/values-en-rGB/strings.xml
+++ b/packages/SystemUI/res/values-en-rGB/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth connected."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Bluetooth device icon"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Click to configure device detail"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Configure device detail"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"See all devices"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Pair new device"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Battery percentage unknown."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Connected to <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Connected to <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Expand group."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Open application."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Not connected."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Input"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Hearing aids"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Turning on…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Can\'t adjust brightness because it\'s being controlled by the top app"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Auto-rotate"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Auto-rotate screen"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Location"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multi-tasking"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Use split screen with app on the right"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Use split screen with app on the left"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Use fullscreen"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Use desktop view"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Switch to the app on the right or below while using split screen"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Switch to the app on the left or above while using split screen"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"During split screen: Replace an app from one to another"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"View recent apps"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Switch apps"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Done"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Next"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Try again."</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Go back"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Swipe left or right using three fingers on your touchpad"</string>
diff --git a/packages/SystemUI/res/values-en-rIN/strings.xml b/packages/SystemUI/res/values-en-rIN/strings.xml
index 1b36a7c..c253711 100644
--- a/packages/SystemUI/res/values-en-rIN/strings.xml
+++ b/packages/SystemUI/res/values-en-rIN/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth connected."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Bluetooth device icon"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Click to configure device detail"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Configure device detail"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"See all devices"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Pair new device"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Battery percentage unknown."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Connected to <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Connected to <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Expand group."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Open application."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Not connected."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Input"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Hearing aids"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Turning on…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Can\'t adjust brightness because it\'s being controlled by the top app"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Auto-rotate"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Auto-rotate screen"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Location"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multi-tasking"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Use split screen with app on the right"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Use split screen with app on the left"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Use fullscreen"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Use desktop view"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Switch to the app on the right or below while using split screen"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Switch to the app on the left or above while using split screen"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"During split screen: Replace an app from one to another"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"View recent apps"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Switch apps"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Done"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Next"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Try again."</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Go back"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Swipe left or right using three fingers on your touchpad"</string>
diff --git a/packages/SystemUI/res/values-es-rUS/strings.xml b/packages/SystemUI/res/values-es-rUS/strings.xml
index fbf01b8..7f09671 100644
--- a/packages/SystemUI/res/values-es-rUS/strings.xml
+++ b/packages/SystemUI/res/values-es-rUS/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth conectado"</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Ícono de dispositivo Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Haz clic para configurar los detalles del dispositivo"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>; configura los detalles del dispositivo"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Ver todos los dispositivos"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Vincular dispositivo nuevo"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Se desconoce el porcentaje de la batería."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Conectado a <xliff:g id="BLUETOOTH">%s</xliff:g>"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Conectado a <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Expandir grupo."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Abrir aplicación."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"No conectado"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Entrada"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Audífonos"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Activando…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"La app superior controla el brillo,por lo que no se puede ajustar"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Giro automático"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Girar la pantalla automáticamente"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Ubicación"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Tareas múltiples"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Usar la pantalla dividida con la app a la derecha"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Usar la pantalla dividida con la app a la izquierda"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Usar la pantalla completa"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Usar la vista para computadoras de escritorio"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Ubicar la app a la derecha o abajo cuando usas la pantalla dividida"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Ubicar la app a la izquierda o arriba cuando usas la pantalla dividida"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Durante pantalla dividida: Reemplaza una app con otra"</string>
@@ -991,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Mostrar íconos de notificaciones con prioridad baja"</string>
     <string name="other" msgid="429768510980739978">"Otros"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"alternar el tamaño del mosaico"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"quitar tarjeta"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"agregar tarjeta a la última posición"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Mover la tarjeta"</string>
@@ -1507,8 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Ver apps recientes"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Cambiar de app"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Listo"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Siguiente"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Vuelve a intentarlo"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Atrás"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Desliza hacia la izquierda o la derecha con tres dedos en el panel táctil"</string>
@@ -1546,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Para ver las apps recientes, desliza hacia arriba con tres dedos y mantén presionado el panel táctil"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Para ver todas las apps, presiona la tecla de acción en el teclado"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Oculto"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Desbloquea el dispositivo para ver"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Desbloquea el dispositivo para ver el código"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Educación contextual"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Usa el panel táctil para ir hacia atrás"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Desliza hacia la izquierda o la derecha con tres dedos. Presiona para aprender más gestos."</string>
diff --git a/packages/SystemUI/res/values-es/strings.xml b/packages/SystemUI/res/values-es/strings.xml
index 0af9fbf..531d1df 100644
--- a/packages/SystemUI/res/values-es/strings.xml
+++ b/packages/SystemUI/res/values-es/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth conectado"</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Icono de dispositivo Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Haz clic para configurar la información del dispositivo"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Configura los detalles del dispositivo."</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Consultar todos los dispositivos"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Emparejar nuevo dispositivo"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Porcentaje de batería desconocido."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Conectado a <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Conectado a <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Mostrar grupo."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Abrir aplicación."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"No conectado."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Entrada"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Audífonos"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Activando…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"No se puede ajustar el brillo porque la aplicación superior lo está controlando"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Giro automático"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Girar pantalla automáticamente"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Ubicación"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitarea"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Usar la pantalla dividida con la aplicación a la derecha"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Usar la pantalla dividida con la aplicación a la izquierda"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Usar pantalla completa"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Usar vista para ordenador"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Cambiar a la aplicación de la derecha o de abajo en pantalla dividida"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Cambiar a la app de la izquierda o de arriba en pantalla dividida"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Con pantalla dividida: reemplazar una aplicación por otra"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Ver aplicaciones recientes"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Cambiar de aplicación"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Hecho"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Siguiente"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Vuelve a intentarlo."</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Atrás"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Desliza hacia la izquierda o la derecha con tres dedos en el panel táctil"</string>
diff --git a/packages/SystemUI/res/values-et/strings.xml b/packages/SystemUI/res/values-et/strings.xml
index bb77e96..30b93b0 100644
--- a/packages/SystemUI/res/values-et/strings.xml
+++ b/packages/SystemUI/res/values-et/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth on ühendatud."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Bluetooth-seadme ikoon"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Klõpsake seadme üksikasjade konfigureerimiseks"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Seadme üksikasjade seadistamine"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Kõigi seadmete kuvamine"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Uue seadme sidumine"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Aku laetuse protsent on teadmata."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Ühendatud: <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Ühendatud ülekandega <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Grupi laiendamine."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Rakenduse avamine."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Ühendus puudub."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Rändlus"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Sisend"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Kuuldeaparaadid"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Sisselülitamine …"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Heledust ei saa reguleerida, kuna seda juhib ülemine rakendus"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Autom. pööramine"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Kuva automaatne pööramine"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Asukoht"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitegumtöö"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Jagatud ekraanikuva kasutamine, rakendus kuvatakse paremal"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Jagatud ekraanikuva kasutamine, rakendus kuvatakse vasakul"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Lülita täisekraanile"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Kasuta arvutivaadet"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Paremale või alumisele rakendusele lülitamine jagatud ekraani ajal"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Vasakule või ülemisele rakendusele lülitamine jagatud ekraani ajal"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Ekraanikuva jagamise ajal: ühe rakenduse asendamine teisega"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Hiljutiste rakenduste vaatamine"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Rakenduste vahetamine"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Valmis"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Järgmine"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Proovige uuesti!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Tagasi"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Pühkige puuteplaadil kolme sõrmega vasakule või paremale"</string>
diff --git a/packages/SystemUI/res/values-eu/strings.xml b/packages/SystemUI/res/values-eu/strings.xml
index cb8e034..50f8750 100644
--- a/packages/SystemUI/res/values-eu/strings.xml
+++ b/packages/SystemUI/res/values-eu/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetootha konektatuta."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Bluetooth bidezko gailuaren ikonoa"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Gailuaren xehetasuna konfiguratzeko, sakatu hau"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Konfiguratu gailuaren xehetasunak."</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Ikusi gailu guztiak"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Parekatu beste gailu bat"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Bateriaren ehunekoa ezezaguna da."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g> gailura konektatuta."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Hona konektatuta: <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Zabaldu taldea."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Ireki aplikazioa."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Konektatu gabe."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Ibiltaritza"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Sarrera"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Audifonoak"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Aktibatzen…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Ezin da doitu argitasuna,gaineko aplikazioak kontrolatzen duelako"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Biratze automatikoa"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Biratu pantaila automatikoki"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Kokapena"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Zeregin bat baino gehiago aldi berean exekutatzea"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Erabili pantaila zatitua eta ezarri aplikazio hau eskuinean"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Erabili pantaila zatitua eta ezarri aplikazio hau ezkerrean"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Erabili pantaila osoa"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Erabili ordenagailuetarako ikuspegia"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Aldatu eskuineko edo beheko aplikaziora pantaila zatitua erabiltzean"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Aldatu ezkerreko edo goiko aplikaziora pantaila zatitua erabiltzean"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Pantaila zatituan zaudela, ordeztu aplikazio bat beste batekin"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Ikusi azkenaldiko aplikazioak"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Aldatu aplikazioa"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Eginda"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Hurrengoa"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Saiatu berriro!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Egin atzera"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Pasatu 3 hatz ezkerrera edo eskuinera ukipen-panelean"</string>
diff --git a/packages/SystemUI/res/values-fa/strings.xml b/packages/SystemUI/res/values-fa/strings.xml
index 7fd5551..d53805d 100644
--- a/packages/SystemUI/res/values-fa/strings.xml
+++ b/packages/SystemUI/res/values-fa/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"بلوتوث متصل است."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"نماد دستگاه بلوتوث"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"برای پیکربندی جزئیات دستگاه کلیک کنید"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"‫<xliff:g id="DEVICE_NAME">%s</xliff:g>. پیکربندی جزئیات دستگاه"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"دیدن تمام دستگاه‌ها"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"جفت کردن دستگاه جدید"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"درصد شارژ باتری مشخص نیست."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"به <xliff:g id="BLUETOOTH">%s</xliff:g> متصل شد."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"به <xliff:g id="CAST">%s</xliff:g> متصل شد."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"گروه را از هم باز می‌کند."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"برنامه را باز می‌کند."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"متصل نیست."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"فراگردی"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"ورودی"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"سمعک"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"روشن کردن…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"نمی‌توان روشنایی را تنظیم کرد زیرا برنامه بالایی آن را کنترل می‌کند"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"چرخش خودکار"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"چرخش خودکار صفحه‌نمایش"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"مکان"</string>
@@ -614,7 +616,7 @@
     <string name="media_projection_action_text" msgid="3634906766918186440">"اکنون شروع کنید"</string>
     <string name="empty_shade_text" msgid="8935967157319717412">"اعلانی موجود نیست"</string>
     <string name="no_unseen_notif_text" msgid="395512586119868682">"اعلان جدیدی وجود ندارد"</string>
-    <string name="adaptive_notification_edu_hun_title" msgid="2594042455998795122">"«استراحت اعلان‌ها» اکنون روشن است"</string>
+    <string name="adaptive_notification_edu_hun_title" msgid="2594042455998795122">"«آرام‌سازی اعلان‌ها» اکنون روشن است"</string>
     <string name="adaptive_notification_edu_hun_text" msgid="7743367744129536610">"وقتی به‌طور هم‌زمان تعداد بسیار زیادی اعلان دریافت کنید، میزان صدای دستگاه و هشدارها به‌طور خودکار تا ۲ دقیقه کاهش می‌یابد."</string>
     <string name="go_to_adaptive_notification_settings" msgid="2423690125178298479">"خاموش کردن"</string>
     <string name="unlock_to_see_notif_text" msgid="7439033907167561227">"برای دیدن اعلان‌های قبلی قفل را باز کنید"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"چندوظیفگی"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"استفاده از صفحهٔ دونیمه با قرار گرفتن برنامه در سمت راست"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"استفاده از صفحهٔ دونیمه با قرار گرفتن برنامه در سمت چپ"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"استفاده از حالت تمام‌صفحه"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"استفاده از نمای ویژه رایانه رومیزی"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"رفتن به برنامه سمت راست یا پایین درحین استفاده از صفحهٔ دونیمه"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"رفتن به برنامه سمت چپ یا بالا درحین استفاده از صفحهٔ دونیمه"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"درحین صفحهٔ دونیمه: برنامه‌ای را با دیگری جابه‌جا می‌کند"</string>
@@ -991,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"نمایش نمادهای اعلان کم‌اهمیت"</string>
     <string name="other" msgid="429768510980739978">"موارد دیگر"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"تغییر اندازه کاشی"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"برداشتن کاشی"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"افزودن کاشی به آخرین جایگاه"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"انتقال کاشی"</string>
@@ -1507,8 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"مشاهده برنامه‌های اخیر"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"جابه‌جایی بین برنامه‌ها"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"تمام"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"بعدی"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"دوباره امتحان کنید!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"برگشتن"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"با سه انگشت روی صفحه لمسی تند به چپ یا راست بکشید."</string>
@@ -1546,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"برای مشاهده برنامه‌های اخیر، در صفحه لمسی با سه انگشت تند به‌بالا بکشید و نگه دارید"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"برای مشاهده همه برنامه‌ها، دکمه کنش در صفحه‌کلید را فشار دهید"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"محوشده"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"برای مشاهده، قفل دستگاه را باز کنید"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"برای مشاهده کد، قفل دستگاه را باز کنید"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"آموزش زمینه‌ای"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"برای برگشتن از صفحه لمسی استفاده کنید"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"با سه انگشت تند به‌چپ یا راست بکشید. برای آشنایی با اشاره‌های بیشتر، تک‌ضرب بزنید."</string>
diff --git a/packages/SystemUI/res/values-fi/strings.xml b/packages/SystemUI/res/values-fi/strings.xml
index 647134f..fa9468d 100644
--- a/packages/SystemUI/res/values-fi/strings.xml
+++ b/packages/SystemUI/res/values-fi/strings.xml
@@ -247,16 +247,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth yhdistetty."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Bluetooth-laitekuvake"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Määritä laitteen asetukset klikkaamalla"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Määritä laitteen tiedot"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Katso kaikki laitteet"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Muodosta uusi laitepari"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Akun varaustaso ei tiedossa."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Yhteys: <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Yhdistetty kohteeseen <xliff:g id="CAST">%s</xliff:g>"</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Laajenna ryhmä."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Avaa sovellus."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Ei yhteyttä."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -334,7 +335,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Syöttölaite"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Kuulolaitteet"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Otetaan käyttöön…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Kirkkautta ei voi säätää, koska ensisijainen sovellus ohjaa sitä"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Automaattinen kääntö"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Käännä näyttöä automaattisesti."</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Sijainti"</string>
@@ -903,10 +905,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitaskaus"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Käytä jaettua näyttöä niin, että sovellus on oikealla"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Käytä jaettua näyttöä niin, että sovellus on vasemmalla"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Käytä koko näytön tilaa"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Käytä tietokonenäkymää"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Vaihda sovellukseen oikealla tai alapuolella jaetussa näytössä"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Vaihda sovellukseen vasemmalla tai yläpuolella jaetussa näytössä"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Jaetun näytön aikana: korvaa sovellus toisella"</string>
@@ -1509,8 +1509,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Katso viimeisimmät sovellukset"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Vaihda sovellusta"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Valmis"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Seuraava"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Yritä uudelleen."</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Takaisin"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Pyyhkäise kosketuslevyllä vasemmalle tai oikealle kolmella sormella"</string>
diff --git a/packages/SystemUI/res/values-fr-rCA/strings.xml b/packages/SystemUI/res/values-fr-rCA/strings.xml
index 299f5a5..97702f0 100644
--- a/packages/SystemUI/res/values-fr-rCA/strings.xml
+++ b/packages/SystemUI/res/values-fr-rCA/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth connecté"</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Icône de l\'appareil Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Cliquez pour configurer les détails de l\'appareil"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Configurer les détails de l\'appareil"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Voir tous les appareils"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Associer un nouvel appareil"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Pourcentage de la pile inconnu."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Connecté à : <xliff:g id="BLUETOOTH">%s</xliff:g>"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Connecté à <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Développer le groupe."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Ouvrir l\'appli."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Non connecté"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Itinérance"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Entrée"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Prothèses auditives"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Activation en cours…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Impossible de régler la luminosité, car elle est contrôlée par l\'appli principale"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Rotation auto"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Rotation automatique de l\'écran"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Localisation"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitâche"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Utiliser l\'Écran divisé avec l\'appli à droite"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Utiliser l\'Écran divisé avec l\'appli à gauche"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Utiliser le mode plein écran"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Utiliser l\'affichage sur ordinateur de bureau"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Passer à l\'appli à droite ou en dessous avec l\'Écran divisé"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Passer à l\'appli à gauche ou au-dessus avec l\'Écran divisé"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"En mode d\'écran divisé : remplacer une appli par une autre"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Afficher les applis récentes"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Changer d\'appli"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"OK"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Suivant"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Réessayez!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Retour"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Balayez votre pavé tactile vers la gauche ou vers la droite avec trois doigts"</string>
diff --git a/packages/SystemUI/res/values-fr/strings.xml b/packages/SystemUI/res/values-fr/strings.xml
index a4fa4d0..1fefa2d 100644
--- a/packages/SystemUI/res/values-fr/strings.xml
+++ b/packages/SystemUI/res/values-fr/strings.xml
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Connecté à : <xliff:g id="BLUETOOTH">%s</xliff:g>"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Connecté à <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Développer le groupe."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Ouvrir l\'application."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Non connecté"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Itinérance"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Entrée"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Appareils auditifs"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Activation…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Impossible d\'ajuster la luminosité, car celle-ci est contrôlée par l\'appli principale"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Rotation auto"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Rotation automatique de l\'écran"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Localisation"</string>
@@ -986,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Afficher les icônes de notification à faible priorité"</string>
     <string name="other" msgid="429768510980739978">"Autre"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"activer/désactiver la taille du bloc"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"supprimer le bloc"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"ajouter le bloc à la dernière position"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Déplacer le bloc"</string>
@@ -1540,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Pour afficher les applis récentes, balayez vers le haut avec trois doigts sur le pavé tactile et maintenez-les."</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Pour afficher toutes vos applis, appuyez sur la touche d\'action de votre clavier"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Masqué"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Déverrouiller pour afficher"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Déverrouiller pour afficher le code"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Éducation contextuelle"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Utilisez votre pavé tactile pour revenir en arrière"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Balayez vers la gauche ou la droite en utilisant trois doigts. Appuyez pour apprendre d\'autres gestes."</string>
diff --git a/packages/SystemUI/res/values-gl/strings.xml b/packages/SystemUI/res/values-gl/strings.xml
index 82ba5dc..d9a991e 100644
--- a/packages/SystemUI/res/values-gl/strings.xml
+++ b/packages/SystemUI/res/values-gl/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth conectado"</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Icona do dispositivo Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Facer clic para configurar os detalles do dispositivo"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Configura o detalle do dispositivo"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Mira todos os dispositivos"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Vincula un dispositivo novo"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Descoñécese a porcentaxe da batería."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Conectado a <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Dispositivo conectado: <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Despregar o grupo."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Abrir a aplicación."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Non conectada"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Itinerancia"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Entrada"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Audiófonos"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Activando…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Non se pode axustar o brillo porque o controla a aplicación principal"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Xirar automaticamente"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Xirar pantalla automaticamente"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Localización"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitarefa"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Usar pantalla dividida coa aplicación na dereita"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Usar pantalla dividida coa aplicación na esquerda"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Usar a pantalla completa"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Usar a vista para ordenadores"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Cambiar á aplicación da dereita ou de abaixo coa pantalla dividida"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Cambiar á aplicación da esquerda ou de arriba coa pantalla dividida"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"En modo de pantalla dividida: Substituír unha aplicación por outra"</string>
@@ -991,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Mostrar iconas das notificacións que teñan baixa prioridade"</string>
     <string name="other" msgid="429768510980739978">"Outros"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"activar/desactivar o tamaño do recadro"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"quitar tarxeta"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"engadir o atallo á última posición"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Mover tarxeta"</string>
@@ -1507,8 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Consultar aplicacións recentes"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Cambiar de aplicación"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Feito"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Seguinte"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Téntao de novo."</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Volver"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Pasa tres dedos cara á esquerda ou cara á dereita no panel táctil"</string>
@@ -1546,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Para ver as aplicacións recentes, pasa tres dedos cara arriba no panel táctil e mantenos premidos"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Para ver todas as aplicacións, preme a tecla de acción do teclado"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Contido ocultado"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Desbloquea para ver a información"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Desbloquea para ver o código"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Información contextual"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Usa o panel táctil para volver"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Pasa tres dedos cara á esquerda ou cara á dereita. Toca para obter máis información sobre os xestos."</string>
diff --git a/packages/SystemUI/res/values-gu/strings.xml b/packages/SystemUI/res/values-gu/strings.xml
index 1fa46e6..55f6e94 100644
--- a/packages/SystemUI/res/values-gu/strings.xml
+++ b/packages/SystemUI/res/values-gu/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"બ્લૂટૂથ કનેક્ટ થયું."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"બ્લૂટૂથ ડિવાઇસનું આઇકન"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"ડિવાઇસની વિગત ગોઠવવા માટે ક્લિક કરો"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. ડિવાઇસની વિગત ગોઠવો"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"બધા ડિવાઇસ જુઓ"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"નવા ડિવાઇસ સાથે જોડાણ કરો"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"બૅટરીની ટકાવારી અજાણ છે."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g> થી કનેક્ટ થયાં."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g> થી કનેક્ટ કરેલ."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"ગ્રૂપને મોટું કરો."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"ઍપ્લિકેશન ખોલો."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"કનેક્ટ થયેલું નથી."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"રોમિંગ"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"ઇનપુટ"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"સાંભળવામાં મદદ આપતા યંત્રો"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"ચાલુ કરી રહ્યાં છીએ…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"બ્રાઇટનેસ ગોઠવી શકતા નથી કારણ કે તે લોકપ્રિય ઍપ દ્વારા નિયંત્રિત કરવામાં આવી રહી છે"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"ઑટો રોટેટ"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"ઑટો રોટેટ સ્ક્રીન"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"લોકેશન"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"એકસાથે એકથી વધુ કાર્યો કરવા"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"હાલની ઍપને જમણી બાજુએ રાખીને વિભાજિત સ્ક્રીનનો ઉપયોગ કરો"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"હાલની ઍપને ડાબી બાજુએ રાખીને વિભાજિત સ્ક્રીનનો ઉપયોગ કરો"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"પૂર્ણ સ્ક્રીનનો ઉપયોગ કરો"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"ડેસ્કટૉપ વ્યૂનો ઉપયોગ કરો"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"વિભાજિત સ્ક્રીનનો ઉપયોગ કરતી વખતે જમણી બાજુ કે નીચેની ઍપ પર સ્વિચ કરો"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"વિભાજિત સ્ક્રીનનો ઉપયોગ કરતી વખતે ડાબી બાજુની કે ઉપરની ઍપ પર સ્વિચ કરો"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"વિભાજિત સ્ક્રીન દરમિયાન: એક ઍપને બીજી ઍપમાં બદલો"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"તાજેતરની ઍપ જુઓ"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"ઍપ સ્વિચ કરો"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"થઈ ગયું"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"આગળ"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"ફરી પ્રયાસ કરો!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"પાછા જાઓ"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"તમારા ટચપૅડ પર ત્રણ આંગળીનો ઉપયોગ કરીને ડાબે કે જમણે સ્વાઇપ કરો"</string>
diff --git a/packages/SystemUI/res/values-hi/strings.xml b/packages/SystemUI/res/values-hi/strings.xml
index be1ca7d..8878c14 100644
--- a/packages/SystemUI/res/values-hi/strings.xml
+++ b/packages/SystemUI/res/values-hi/strings.xml
@@ -155,7 +155,7 @@
     <string name="cast_to_other_device_stop_dialog_message_generic_with_device" msgid="9213582497852420203">"फ़िलहाल, <xliff:g id="DEVICE_NAME">%1$s</xliff:g> पर कास्ट किया जा रहा है"</string>
     <string name="cast_to_other_device_stop_dialog_message_generic" msgid="4100272100480415076">"फ़िलहाल, आस-पास मौजूद किसी डिवाइस पर कास्ट किया जा रहा है"</string>
     <string name="cast_to_other_device_stop_dialog_button" msgid="6420183747435521834">"कास्ट करना बंद करें"</string>
-    <string name="close_dialog_button" msgid="4749497706540104133">"बंद करें"</string>
+    <string name="close_dialog_button" msgid="4749497706540104133">"अभी नहीं"</string>
     <string name="issuerecord_title" msgid="286627115110121849">"समस्या रिकॉर्ड करने वाला टूल"</string>
     <string name="issuerecord_background_processing_label" msgid="1666840264959336876">"समस्या का डेटा प्रोसेस हो रहा"</string>
     <string name="issuerecord_channel_description" msgid="6142326363431474632">"समस्या का डेटा इकट्ठा करने के लिए बैकग्राउंड में जारी गतिविधि की सूचना"</string>
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g> से कनेक्ट किया गया."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g> से कनेक्ट है."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"ग्रुप को बड़ा करें."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"ऐप्लिकेशन खोलें."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"कनेक्ट नहीं है."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"रोमिंग"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"इनपुट"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"कान की मशीनें"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"ब्लूटूथ चालू हो रहा है…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"स्क्रीन की रोशनी को एडजस्ट नहीं किया जा सकता, क्योंकि इसे टॉप ऐप्लिकेशन कंट्रोल कर रहा है"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"ऑटो-रोटेट"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"स्क्रीन का अपने-आप दिशा बदलना (ऑटो-रोटेट)"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"जगह की जानकारी"</string>
diff --git a/packages/SystemUI/res/values-hr/strings.xml b/packages/SystemUI/res/values-hr/strings.xml
index 5c7ee24..054f394 100644
--- a/packages/SystemUI/res/values-hr/strings.xml
+++ b/packages/SystemUI/res/values-hr/strings.xml
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Spojen na <xliff:g id="BLUETOOTH">%s</xliff:g> ."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Povezani ste sa sljedećim uređajem: <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Proširite grupu."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Otvorite aplikaciju."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Nije povezano."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Unos"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Slušna pomagala"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Uključivanje…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Svjetlina se ne može prilagoditi jer njome upravlja aplikacija pri vrhu"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Automatsko zakretanje"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Automatsko zakretanje zaslona"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Lokacija"</string>
@@ -986,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Prikaži ikone obavijesti niskog prioriteta"</string>
     <string name="other" msgid="429768510980739978">"Ostalo"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"promjenu veličine pločice"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"uklanjanje kartice"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"dodavanje kartice na posljednji položaj"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Premještanje kartice"</string>
@@ -1540,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Za prikaz nedavnih aplikacija prijeđite prema gore trima prstima i zadržite pritisak na dodirnoj podlozi"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Za prikaz svojih svih aplikacija pritisnite tipku za radnju na tipkovnici"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Redaktirano"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Otključajte za prikaz"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Otključajte za prikaz koda"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Kontekstualno obrazovanje"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Upotrijebite dodirnu podlogu za povratak"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Prijeđite ulijevo ili udesno trima prstima. Dodirnite da biste naučili više pokreta."</string>
diff --git a/packages/SystemUI/res/values-hu/strings.xml b/packages/SystemUI/res/values-hu/strings.xml
index 421570c..03f1bc6 100644
--- a/packages/SystemUI/res/values-hu/strings.xml
+++ b/packages/SystemUI/res/values-hu/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth csatlakoztatva."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Bluetooth-eszköz ikon"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Kattintson az eszköz beállításainak megadásához"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Eszközadatok konfigurálása"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Az összes eszköz megjelenítése"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Új eszköz párosítása"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Az akkumulátor töltöttségi szintje ismeretlen."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Csatlakoztatva a következőhöz: <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Csatlakozva a következőhöz: <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Csoport kibontása."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Alkalmazás megnyitása."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Nincs csatlakozva."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Bevitel"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Hallókészülék"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Bekapcsolás…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Nem lehet módosítani a fényerőt, mert a felső alkalmazás vezérli"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Automatikus elforgatás"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Automatikus képernyőforgatás"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Tartózkodási hely"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitasking"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Osztott képernyő használata, az alkalmazás a jobb oldalon van"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Osztott képernyő használata, az alkalmazás a bal oldalon van"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Teljes képernyő használata"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Asztali nézet használata"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Váltás a jobb oldalt, illetve lent lévő appra osztott képernyő esetén"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Váltás a bal oldalt, illetve fent lévő appra osztott képernyő esetén"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Osztott képernyőn: az egyik alkalmazás lecserélése egy másikra"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Legutóbbi alkalmazások megtekintése"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Váltás az alkalmazások között"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Kész"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Következő"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Próbálja újra"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Vissza"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Csúsztassa gyorsan három ujját balra vagy jobbra az érintőpadon."</string>
diff --git a/packages/SystemUI/res/values-hy/strings.xml b/packages/SystemUI/res/values-hy/strings.xml
index aaedf56..e1b6639 100644
--- a/packages/SystemUI/res/values-hy/strings.xml
+++ b/packages/SystemUI/res/values-hy/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth-ը միացված է:"</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Bluetooth սարքի պատկերակ"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Սեղմեք՝ սարքի մանրամասները կազմաձևելու համար"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>։ Կարգավորեք սարքի տվյալները"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Տեսնել բոլոր սարքերը"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Նոր սարքի զուգակցում"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Մարտկոցի լիցքի մակարդակն անհայտ է։"</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Միացված է <xliff:g id="BLUETOOTH">%s</xliff:g>-ին:"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Միացված է <xliff:g id="CAST">%s</xliff:g>-ին:"</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Ծավալել խումբը։"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Բացել հավելվածը։"</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Միացված չէ:"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Ռոումինգ"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Մուտքագրում"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Լսողական սարք"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Միացում…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Հնարավոր չէ կարգավորել պայծառությունը, քանի որ այն կառավարվում է գլխավոր հավելվածի կողմից"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Ինքնապտտում"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Ավտոմատ պտտել էկրանը"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Տեղորոշում"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Բազմա­խնդրու­թ­յուն"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Տրոհել էկրանը և տեղավորել այս հավելվածը աջ կողմում"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Տրոհել էկրանը և տեղավորել այս հավելվածը ձախ կողմում"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Օգտագործեք լիաէկրան ռեժիմը"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Օգտագործեք համակարգչային տարբերակը"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Անցեք աջ կողմի կամ ներքևի հավելվածին տրոհված էկրանի միջոցով"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Անցեք աջ կողմի կամ վերևի հավելվածին տրոհված էկրանի միջոցով"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Տրոհված էկրանի ռեժիմում մեկ հավելվածը փոխարինել մյուսով"</string>
@@ -991,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Ցուցադրել ցածր առաջնահերթության ծանուցումների պատկերակները"</string>
     <string name="other" msgid="429768510980739978">"Այլ"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"փոխեք սալիկի չափը"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"հեռացնել սալիկը"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"ավելացնել սալիկը վերջին դիրքում"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Տեղափոխել սալիկը"</string>
@@ -1507,8 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Դիտել վերջին հավելվածները"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Անցում մեկ հավելվածից մյուսին"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Պատրաստ է"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Հաջորդը"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Նորից փորձեք։"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Հետ գնալ"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Հպահարթակի վրա երեք մատով սահեցրեք ձախ կամ աջ"</string>
@@ -1546,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Վերջերս օգտագործված հավելվածները դիտելու համար երեք մատը սահեցրեք վերև և սեղմած պահեք"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Բոլոր հավելվածները դիտելու համար սեղմեք գործողության ստեղնը ստեղնաշարի վրա"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Կոդավորված"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Ապակողպել դիտելու համար"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Ապակողպել կոդը դիտելու համար"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Համատեքստային ուսուցում"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Օգտագործեք ձեր հպահարթակը՝ վերադառնալու համար"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Երեք մատը սահեցրեք ձախ կամ աջ։ Հպեք՝ ավելի շատ ժեստերի ծանոթանալու համար։"</string>
diff --git a/packages/SystemUI/res/values-in/strings.xml b/packages/SystemUI/res/values-in/strings.xml
index 4990774..6ef3cdc 100644
--- a/packages/SystemUI/res/values-in/strings.xml
+++ b/packages/SystemUI/res/values-in/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth terhubung."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Ikon perangkat Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Klik untuk mengonfigurasi detail perangkat"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Konfigurasi detail perangkat"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Lihat semua perangkat"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Sambungkan perangkat baru"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Persentase baterai tidak diketahui."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Terhubung ke <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Terhubung ke <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Luaskan grup."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Buka aplikasi."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Tidak terhubung."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Input"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Alat bantu dengar"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Mengaktifkan…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Tidak dapat menyesuaikan kecerahan karena sedang dikontrol oleh aplikasi atas"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Putar Otomatis"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Putar layar otomatis"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Lokasi"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitasking"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Gunakan layar terpisah dengan aplikasi di sebelah kanan"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Gunakan layar terpisah dengan aplikasi di sebelah kiri"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Gunakan layar penuh"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Gunakan tampilan desktop"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Beralih ke aplikasi di bagian kanan atau bawah saat menggunakan layar terpisah"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Beralih ke aplikasi di bagian kiri atau atas saat menggunakan layar terpisah"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Dalam layar terpisah: ganti salah satu aplikasi dengan yang lain"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Lihat aplikasi terbaru"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Beralih aplikasi"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Selesai"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Berikutnya"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Coba lagi"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Kembali"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Geser ke kiri atau kanan menggunakan tiga jari di touchpad"</string>
diff --git a/packages/SystemUI/res/values-is/strings.xml b/packages/SystemUI/res/values-is/strings.xml
index 3f8492a..2b8a5cc 100644
--- a/packages/SystemUI/res/values-is/strings.xml
+++ b/packages/SystemUI/res/values-is/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth tengt."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Tákn Bluetooth-tækis"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Smelltu til að stilla tækjaupplýsingar"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Upplýsingar um grunnstillingu tækis."</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Sjá öll tæki"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Para nýtt tæki"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Staða rafhlöðu óþekkt."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Tengt við <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Tengt við <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Stækka hóp."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Opna forrit."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Engin tenging."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Reiki"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Inntak"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Heyrnartæki"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Kveikir…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Ekki er hægt að breyta birtustiginu vegna þess að efsta forritið stjórnar því"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Sjálfvirkur snúningur"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Snúa skjá sjálfkrafa"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Staðsetning"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Fjölvinnsla"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Notaðu skjáskiptingu fyrir forritið til hægri"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Notaðu skjáskiptingu fyrir forritið til vinstri"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Nota allan skjáinn"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Nota tölvuútgáfu"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Skiptu í forrit til hægri eða fyrir neðan þegar skjáskipting er notuð"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Skiptu í forrit til vinstri eða fyrir ofan þegar skjáskipting er notuð"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Í skjáskiptingu: Skipta forriti út fyrir annað forrit"</string>
@@ -991,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Sýna tákn fyrir tilkynningar með litlum forgangi"</string>
     <string name="other" msgid="429768510980739978">"Annað"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"breyta stærð reitsins"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"fjarlægja flís"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"bæta reit við síðustu stöðu"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Færa flís"</string>
@@ -1507,8 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Sjá nýleg forrit"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Að skipta á milli forrita"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Lokið"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Áfram"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Reyndu aftur!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Til baka"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Strjúktu til hægri eða vinstri á snertifletinum með þremur fingrum"</string>
@@ -1546,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Strjúktu upp og haltu með þremur fingrum á snertifletinum til að sjá nýleg forrit"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Ýttu á aðgerðalykilinn á lyklaborðinu til að sjá öll forritin þín"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Ritskoðað"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Taktu úr lás til að skoða"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Taka úr lás til að sjá kóða"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Samhengismiðuð menntun"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Notaðu snertiflötinn til að fara til baka"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Strjúktu til vinstri eða hægri með þremur fingrum. Ýttu til að læra fleiri bendingar."</string>
diff --git a/packages/SystemUI/res/values-it/strings.xml b/packages/SystemUI/res/values-it/strings.xml
index bb7202b..87507d6 100644
--- a/packages/SystemUI/res/values-it/strings.xml
+++ b/packages/SystemUI/res/values-it/strings.xml
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Connesso a <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Connesso a: <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Espandi il gruppo."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Apri l\'applicazione."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Non connesso."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Ingresso"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Apparecchi acustici"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Attivazione…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Impossibile regolare la luminosità perché è controllata dall\'app in primo piano"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Rotazione automatica"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Rotazione automatica dello schermo"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Posizione"</string>
@@ -986,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Mostra icone di notifiche con priorità bassa"</string>
     <string name="other" msgid="429768510980739978">"Altro"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"attivare/disattivare le dimensioni del riquadro"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"rimuovere il riquadro"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"aggiungere il riquadro all\'ultima posizione"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Sposta riquadro"</string>
@@ -1540,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Per visualizzare le app recenti, scorri verso l\'alto e tieni premuto con tre dita sul touchpad"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Per visualizzare tutte le tue app, premi il tasto azione sulla tastiera"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Oscurata"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Sblocca per visualizzare"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Sblocca per visualizzare il codice"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Istruzione contestuale"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Usa il touchpad per tornare indietro"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Scorri verso sinistra o destra con tre dita. Tocca per scoprire altri gesti."</string>
diff --git a/packages/SystemUI/res/values-iw/strings.xml b/packages/SystemUI/res/values-iw/strings.xml
index 92fc203..8a687af 100644
--- a/packages/SystemUI/res/values-iw/strings.xml
+++ b/packages/SystemUI/res/values-iw/strings.xml
@@ -255,6 +255,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"התבצע חיבור אל <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"מחובר אל <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"הרחבת הקבוצה."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"פתיחת האפליקציה."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"אין חיבור."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"נדידה"</string>
@@ -332,7 +336,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"קלט"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"מכשירי שמיעה"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"ההפעלה מתבצעת…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"לא ניתן להתאים את הבהירות כי היא נשלטת על ידי האפליקציה העליונה"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"סיבוב אוטומטי"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"סיבוב אוטומטי של המסך"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"מיקום"</string>
diff --git a/packages/SystemUI/res/values-iw/tiles_states_strings.xml b/packages/SystemUI/res/values-iw/tiles_states_strings.xml
index 2f8ec0a..d1bd612a 100644
--- a/packages/SystemUI/res/values-iw/tiles_states_strings.xml
+++ b/packages/SystemUI/res/values-iw/tiles_states_strings.xml
@@ -196,7 +196,9 @@
     <item msgid="6419996398343291862">"מושבת"</item>
     <item msgid="5908720590832378783">"מצב פעיל"</item>
   </string-array>
-    <!-- no translation found for tile_states_desktopeffects:0 (6253480000354287321) -->
-    <!-- no translation found for tile_states_desktopeffects:1 (6641673879029894995) -->
-    <!-- no translation found for tile_states_desktopeffects:2 (5806682401126108403) -->
+  <string-array name="tile_states_desktopeffects">
+    <item msgid="6253480000354287321">"לא זמין"</item>
+    <item msgid="6641673879029894995">"מושבת"</item>
+    <item msgid="5806682401126108403">"מופעל"</item>
+  </string-array>
 </resources>
diff --git a/packages/SystemUI/res/values-ja/strings.xml b/packages/SystemUI/res/values-ja/strings.xml
index 3512271..29f93cc 100644
--- a/packages/SystemUI/res/values-ja/strings.xml
+++ b/packages/SystemUI/res/values-ja/strings.xml
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g>に接続しました。"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g>に接続されています。"</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"グループを開きます。"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"アプリを開きます。"</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"接続されていません。"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"ローミング"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"入力"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"補聴器"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"ON にしています…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"明るさはトップ アプリによって制御されているため、調整できません"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"自動回転"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"画面を自動回転します"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"位置情報"</string>
@@ -986,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"優先度の低い通知アイコンを表示"</string>
     <string name="other" msgid="429768510980739978">"その他"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"タイルのサイズを切り替えます"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"タイルを削除"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"タイルを最後の位置に追加する"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"タイルを移動"</string>
@@ -1540,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"最近使ったアプリを表示するには、3 本の指でタッチパッドを上にスワイプして長押しします"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"すべてのアプリを表示するには、キーボードのアクションキーを押してください"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"削除済み"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"表示するにはロックを解除してください"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"コードを表示するにはロックを解除してください"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"コンテキスト メニューに関する説明"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"タッチパッドを使用して、前の画面に戻る"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"3 本の指で左または右にスワイプします。ジェスチャーの詳細を確認するにはタップしてください。"</string>
diff --git a/packages/SystemUI/res/values-ka/strings.xml b/packages/SystemUI/res/values-ka/strings.xml
index 3877fe7..d9a5824 100644
--- a/packages/SystemUI/res/values-ka/strings.xml
+++ b/packages/SystemUI/res/values-ka/strings.xml
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"დაკავშირებულია <xliff:g id="BLUETOOTH">%s</xliff:g>-თან."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"დაკავშირებულია მოწყობილობასთან: <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"ჯგუფის გაფართოება."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"აპლიკაციის გახსნა."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"არ არის დაკავშირებული."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"როუმინგი"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"შეყვანა"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"სმენის მოწყობილობები"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"ირთვება…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"სიკაშკაშის კორექტირება ვერ ხერხდება, რადგან ის\n იმართება გახსნილი აპის მიერ"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"ავტოროტაცია"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"ეკრანის ავტომატური შეტრიალება"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"მდებარეობა"</string>
@@ -986,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"დაბალი პრიორიტეტის მქონე შეტყობინებების ხატულების ჩვენება"</string>
     <string name="other" msgid="429768510980739978">"სხვა"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"მოზაიკის ფილის ზომის გადასართავად"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"მოზაიკის ფილის წაშლა"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"მოზაიკის ფილის ბოლო პოზიციაზე დამატება"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"მოზაიკის გადატანა"</string>
@@ -1540,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"ბოლო აპების სანახავად სენსორულ პანელზე სამი თითით გადაფურცლეთ ზემოთ და მოიცადეთ"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"ყველა აპის სანახავად დააჭირეთ მოქმედების კლავიშს თქვენს კლავიატურაზე"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"ტექსტს ადევს ცენზურა"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"განბლოკვა სანახავად"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"განბლოკვა კოდის სანახავად"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"კონტექსტური განათლება"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"უკან დასაბრუნებლად გამოიყენეთ სენსორული პანელი"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"გადაფურცლეთ მარცხნივ ან მარჯვნივ სამი თითით. შეეხეთ მეტი ჟესტის შესასწავლად."</string>
diff --git a/packages/SystemUI/res/values-kk/strings.xml b/packages/SystemUI/res/values-kk/strings.xml
index 506ce8b..141e99c 100644
--- a/packages/SystemUI/res/values-kk/strings.xml
+++ b/packages/SystemUI/res/values-kk/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth қосылған."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Bluetooth құрылғысы белгішесі"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Құрылғы деректерін конфигурациялау үшін басыңыз."</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Құрылғы мәліметтерін конфигурациялау"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Барлық құрылғыны көру"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Жаңа құрылғыны жұптау"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Батарея зарядының мөлшері белгісіз."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g> қосылған."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g> трансляциясына қосылды."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Топты жайыңыз."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Қолданбаны ашыңыз."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Жалғанбаған."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Роуминг"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Кіріс"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Есту аппараттары"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Қосылып жатыр…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Жарықтықты реттеу мүмкін емес, себебі ол жетекші қолданба арқылы басқарылады."</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Автоматты түрде бұру"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Автоматты айналатын экран"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Локация"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Мультитаскинг"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Қолданбаны бөлінген экранның оң жағынан пайдалану"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Қолданбаны бөлінген экранның сол жағынан пайдалану"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Толық экранды пайдалану"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Компьютерлік нұсқаны пайдалану"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Бөлінген экранда оң не төмен жақтағы қолданбаға ауысу"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Бөлінген экранда сол не жоғары жақтағы қолданбаға ауысу"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Экранды бөлу кезінде: бір қолданбаны басқасымен алмастыру"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Соңғы қолданбаларды көру"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Қолданба ауыстыру"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Дайын"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Келесі"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Қайталап көріңіз"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Артқа"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Сенсорлық тақтада үш саусақпен оңға немесе солға сырғытыңыз."</string>
diff --git a/packages/SystemUI/res/values-km/strings.xml b/packages/SystemUI/res/values-km/strings.xml
index 1fa0acb..9323308 100644
--- a/packages/SystemUI/res/values-km/strings.xml
+++ b/packages/SystemUI/res/values-km/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"បាន​តភ្ជាប់​ប៊្លូធូស។"</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"រូបឧបករណ៍​ប៊្លូធូស"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"ចុចដើម្បីកំណត់រចនាសម្ព័ន្ធព័ត៌មានលម្អិតអំពីឧបករណ៍"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. កំណត់រចនាសម្ព័ន្ធព័ត៌មានលម្អិតឧបករណ៍"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"មើលឧបករណ៍ទាំងអស់"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"ផ្គូផ្គង​ឧបករណ៍ថ្មី"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"មិនដឹងអំពី​ភាគរយថ្មទេ។"</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"បាន​ភ្ជាប់​ទៅ <xliff:g id="BLUETOOTH">%s</xliff:g> ។"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"បានភ្ជាប់ទៅ <xliff:g id="CAST">%s</xliff:g>"</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"ពង្រីកក្រុម។"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"បើកកម្មវិធី។"</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"មិន​បាន​តភ្ជាប់​។"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"រ៉ូ​មីង"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"បញ្ចូល"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"ឧបករណ៍ជំនួយការស្ដាប់"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"កំពុង​បើក..."</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"មិនអាចកែតម្រូវកម្រិតពន្លឺបានទេ ដោយសារវាកំពុងស្ថិតក្រោមការគ្រប់គ្រងរបស់កម្មវិធីខាងលើគេ"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"បង្វិល​ស្វ័យ​ប្រវត្តិ"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"បង្វិលអេក្រង់ស្វ័យប្រវត្តិ"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"ទី​តាំង​"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"ការដំណើរការបានច្រើន"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"ប្រើមុខងារបំបែកអេក្រង់ជាមួយកម្មវិធីនៅខាងស្ដាំ"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"ប្រើមុខងារបំបែកអេក្រង់ជាមួយកម្មវិធីនៅខាងឆ្វេង"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"ប្រើអេក្រង់ពេញ"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"ប្រើទិដ្ឋភាព​លើកុំព្យូទ័រ"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"ប្ដូរទៅកម្មវិធីនៅខាងស្ដាំ ឬខាងក្រោម ពេលកំពុងប្រើមុខងារ​បំបែកអេក្រង់"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"ប្ដូរទៅកម្មវិធីនៅខាងឆ្វេង ឬខាងលើ ពេលកំពុងប្រើមុខងារ​បំបែកអេក្រង់"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"ក្នុងអំឡុងពេលប្រើមុខងារបំបែកអេក្រង់៖ ជំនួសកម្មវិធីពីមួយទៅមួយទៀត"</string>
@@ -991,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"បង្ហាញ​រូប​ការជូនដំណឹង​ដែលមានអាទិភាពទាប"</string>
     <string name="other" msgid="429768510980739978">"ផ្សេងៗ"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"បិទ/បើកទំហំរបស់ប្រអប់"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"ដកប្រអប់ចេញ"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"បញ្ចូលប្រអប់ទៅទីតាំងចុងក្រោយ"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"ផ្លាស់ទី​ប្រអប់"</string>
@@ -1507,8 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"មើលកម្មវិធីថ្មីៗ"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"ប្ដូរ​កម្មវិធី"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"រួចរាល់"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"បន្ទាប់"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"សូមព្យាយាមម្ដងទៀត!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"ថយ​ក្រោយ"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"អូសទៅឆ្វេង ឬស្ដាំដោយប្រើ​ម្រាមដៃបីនៅលើផ្ទាំងប៉ះរបស់អ្នក"</string>
@@ -1546,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"ដើម្បីមើលកម្មវិធីថ្មីៗ សូមអូសឡើងលើ ហើយសង្កត់ឱ្យជាប់ដោយប្រើម្រាមដៃបីនៅលើផ្ទាំងប៉ះ"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"ដើម្បីមើលកម្មវិធីទាំងអស់របស់អ្នក សូមចុចគ្រាប់ចុចសកម្មភាពនៅលើក្ដារចុចរបស់អ្នក"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"បាន​កែ​លម្អ​ពាក្យពេចន៍"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"ដោះសោដើម្បីមើល"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"ដោះសោដើម្បីមើលកូដ"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"ការអប់រំ​តាមបរិបទ"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"ប្រើផ្ទាំងប៉ះរបស់អ្នក ដើម្បីថយក្រោយ"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"អូសទៅឆ្វេង ឬស្ដាំដោយប្រើ​ម្រាមដៃបី។ ចុច ដើម្បីស្វែងយល់បន្ថែមអំពីចលនា។"</string>
diff --git a/packages/SystemUI/res/values-kn/strings.xml b/packages/SystemUI/res/values-kn/strings.xml
index 5363c62..d7f8b89 100644
--- a/packages/SystemUI/res/values-kn/strings.xml
+++ b/packages/SystemUI/res/values-kn/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"ಬ್ಲೂಟೂತ್‌‌ ಸಂಪರ್ಕಗೊಂಡಿದೆ."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"ಬ್ಲೂಟೂತ್ ಸಾಧನ ಐಕಾನ್"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"ಸಾಧನದ ವಿವರಗಳನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಲು ಕ್ಲಿಕ್ ಮಾಡಿ"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. ಸಾಧನದ ವಿವರಗಳನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಿ"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"ಎಲ್ಲಾ ಸಾಧನಗಳನ್ನು ನೋಡಿ"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"ಹೊಸ ಸಾಧನವನ್ನು ಪೇರ್ ಮಾಡಿ"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"ಬ್ಯಾಟರಿ ಶೇಕಡಾವಾರು ತಿಳಿದಿಲ್ಲ."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g> ಗೆ ಸಂಪರ್ಕಪಡಿಸಲಾಗಿದೆ."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g> ಗೆ ಸಂಪರ್ಕಿಸಲಾಗಿದೆ."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"ಗುಂಪು ವಿಸ್ತರಿಸಿ."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"ಅಪ್ಲಿಕೇಶನ್ ತೆರೆಯಿರಿ."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"ಸಂಪರ್ಕಗೊಂಡಿಲ್ಲ."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"ರೋಮಿಂಗ್"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"ಇನ್‌ಪುಟ್"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"ಶ್ರವಣ ಸಾಧನಗಳು"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"ಆನ್ ಮಾಡಲಾಗುತ್ತಿದೆ..."</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"ಬ್ರೈಟ್‌ನೆಸ್ ಅನ್ನು ಅಡ್ಜಸ್ಟ್ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ, ಏಕೆಂದರೆ ಅದನ್ನು ಟಾಪ್ ಆ್ಯಪ್ ನಿಯಂತ್ರಿಸುತ್ತಿದೆ"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"ಸ್ವಯಂ-ತಿರುಗುವಿಕೆ"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"ಪರದೆಯನ್ನು ಸ್ವಯಂ-ತಿರುಗಿಸಿ"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"ಸ್ಥಳ"</string>
@@ -580,11 +582,11 @@
     <string name="media_projection_entry_app_permission_dialog_continue_entire_screen" msgid="1850848182344377579">"ಸ್ಕ್ರೀನ್‌ ಹಂಚಿಕೊಳ್ಳಿ"</string>
     <string name="media_projection_entry_app_permission_dialog_single_app_disabled" msgid="8999903044874669995">"<xliff:g id="APP_NAME">%1$s</xliff:g> ಈ ಆಯ್ಕೆಯನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿದೆ"</string>
     <string name="media_projection_entry_share_app_selector_title" msgid="1419515119767501822">"ಹಂಚಿಕೊಳ್ಳಲು ಆ್ಯಪ್ ಅನ್ನು ಆಯ್ಕೆಮಾಡಿ"</string>
-    <string name="media_projection_entry_cast_permission_dialog_title" msgid="752756942658159416">"ನಿಮ್ಮ ಸ್ಕ್ರೀನ್ ಅನ್ನು ಕಾಸ್ಟ್ ಮಾಡಬೇಕೆ?"</string>
-    <string name="media_projection_entry_cast_permission_dialog_option_text_single_app" msgid="6073353940838561981">"ಒಂದು ಆ್ಯಪ್ ಅನ್ನು ಕಾಸ್ಟ್ ಮಾಡಿ"</string>
+    <string name="media_projection_entry_cast_permission_dialog_title" msgid="752756942658159416">"ನಿಮ್ಮ ಸ್ಕ್ರೀನ್ ಅನ್ನು ಬಿತ್ತರಿಸಬೇಕೇ?"</string>
+    <string name="media_projection_entry_cast_permission_dialog_option_text_single_app" msgid="6073353940838561981">"ಒಂದು ಆ್ಯಪ್ ಅನ್ನು ಬಿತ್ತರಿಸಿ"</string>
     <string name="media_projection_entry_cast_permission_dialog_option_text_entire_screen" msgid="8389508187954155307">"ಸಂಪೂರ್ಣ ಸ್ಕ್ರೀನ್ ಅನ್ನು ಕ್ಯಾಸ್ಟ್ ಮಾಡಿ"</string>
     <string name="media_projection_entry_cast_permission_dialog_warning_entire_screen" msgid="4040447861037324017">"ನಿಮ್ಮ ಸಂಪೂರ್ಣ ಸ್ಕ್ರೀನ್ ಅನ್ನು ನೀವು ಕ್ಯಾಸ್ಟ್ ಮಾಡುವಾಗ, ನಿಮ್ಮ ಸ್ಕ್ರೀನ್ ಮೇಲೆ ಏನಾದರೂ ಗೋಚರಿಸುತ್ತದೆ. ಆದ್ದರಿಂದ ಪಾಸ್‌ವರ್ಡ್‌ಗಳು, ಪಾವತಿ ವಿವರಗಳು, ಸಂದೇಶಗಳು, ಫೋಟೋಗಳು ಹಾಗೂ ಆಡಿಯೊ ಮತ್ತು ವೀಡಿಯೊದಂತಹ ವಿಷಯಗಳ ಕುರಿತು ಜಾಗರೂಕರಾಗಿರಿ."</string>
-    <string name="media_projection_entry_cast_permission_dialog_warning_single_app" msgid="7487834861348460736">"ನೀವು ಆ್ಯಪ್ ಅನ್ನು ಕ್ಯಾಸ್ಟ್ ಮಾಡುತ್ತಿರುವಾಗ, ಆ ಆ್ಯಪ್‌ನಲ್ಲಿ ತೋರಿಸಿರುವ ಅಥವಾ ಪ್ಲೇ ಮಾಡಿರುವುದು ಗೋಚರಿಸುತ್ತದೆ. ಆದ್ದರಿಂದ ಪಾಸ್‌ವರ್ಡ್‌ಗಳು, ಪಾವತಿ ವಿವರಗಳು, ಸಂದೇಶಗಳು, ಫೋಟೋಗಳು ಹಾಗೂ ಆಡಿಯೊ ಮತ್ತು ವೀಡಿಯೊದಂತಹ ವಿಷಯಗಳ ಕುರಿತು ಜಾಗರೂಕರಾಗಿರಿ."</string>
+    <string name="media_projection_entry_cast_permission_dialog_warning_single_app" msgid="7487834861348460736">"ನೀವು ಆ್ಯಪ್ ಅನ್ನು ಬಿತ್ತರಿಸುತ್ತಿರುವಾಗ, ಆ ಆ್ಯಪ್‌ನಲ್ಲಿ ತೋರಿಸಿರುವ ಅಥವಾ ಪ್ಲೇ ಮಾಡಿರುವುದು ಗೋಚರಿಸುತ್ತದೆ. ಆದ್ದರಿಂದ ಪಾಸ್‌ವರ್ಡ್‌ಗಳು, ಪಾವತಿ ವಿವರಗಳು, ಸಂದೇಶಗಳು, ಫೋಟೋಗಳು ಹಾಗೂ ಆಡಿಯೊ ಮತ್ತು ವೀಡಿಯೊದಂತಹ ವಿಷಯಗಳ ಕುರಿತು ಜಾಗರೂಕರಾಗಿರಿ."</string>
     <string name="media_projection_entry_cast_permission_dialog_continue_entire_screen" msgid="3261124185304676483">"ಸ್ಕ್ರೀನ್‌ ಅನ್ನು ಬಿತ್ತರಿಸಿ"</string>
     <string name="media_projection_entry_cast_app_selector_title" msgid="6323062146661922387">"ಬಿತ್ತರಿಸಲು ಆ್ಯಪ್‌ ಅನ್ನು ಆಯ್ಕೆಮಾಡಿ"</string>
     <string name="media_projection_entry_generic_permission_dialog_title" msgid="4519802931547483628">"ಹಂಚಿಕೊಳ್ಳಲು ಪ್ರಾರಂಭಿಸಬೇಕೇ?"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"ಮಲ್ಟಿಟಾಸ್ಕಿಂಗ್"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"ಬಲಭಾಗದಲ್ಲಿ ಆ್ಯಪ್ ಮೂಲಕ ಸ್ಪ್ಲಿಟ್ ಸ್ಕ್ರೀನ್ ಬಳಸಿ"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"ಎಡಭಾಗದಲ್ಲಿ ಆ್ಯಪ್ ಮೂಲಕ ಸ್ಪ್ಲಿಟ್ ಸ್ಕ್ರೀನ್ ಬಳಸಿ"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"ಫುಲ್‌ಸ್ಕ್ರೀನ್ ಅನ್ನು ಬಳಸಿ"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"ಡೆಸ್ಕ್‌ಟಾಪ್ ವೀಕ್ಷಣೆಯನ್ನು ಬಳಸಿ"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"ಸ್ಕ್ರೀನ್ ಬೇರ್ಪಡಿಸಿ ಮೋಡ್ ಬಳಸುವಾಗ ಬಲಭಾಗ ಅಥವಾ ಕೆಳಭಾಗದಲ್ಲಿರುವ ಆ್ಯಪ್‌ಗೆ ಬದಲಿಸಿ"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"ಸ್ಕ್ರೀನ್ ಬೇರ್ಪಡಿಸಿ ಮೋಡ್ ಬಳಸುವಾಗ ಎಡಭಾಗ ಅಥವಾ ಮೇಲ್ಭಾಗದಲ್ಲಿರುವ ಆ್ಯಪ್‌ಗೆ ಬದಲಿಸಿ"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"ಸ್ಕ್ರೀನ್ ಬೇರ್ಪಡಿಸುವ ಸಮಯದಲ್ಲಿ: ಒಂದು ಆ್ಯಪ್‌ನಿಂದ ಮತ್ತೊಂದು ಆ್ಯಪ್‌ಗೆ ಬದಲಿಸಿ"</string>
@@ -991,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"ಕಡಿಮೆ-ಆದ್ಯತೆ ಸೂಚನೆಯ ಐಕಾನ್‌ಗಳನ್ನು ತೋರಿಸಿ"</string>
     <string name="other" msgid="429768510980739978">"ಇತರ"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"ಟೈಲ್ ನ ಗಾತ್ರವನ್ನು ಟಾಗಲ್ ಮಾಡಿ"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"ಟೈಲ್ ಅನ್ನು ತೆಗೆದುಹಾಕಿ"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"ಕೊನೆಯ ಸ್ಥಾನಕ್ಕೆ ಟೈಲ್ ಅನ್ನು ಸೇರಿಸಿ"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"ಟೈಲ್ ಸರಿಸಿ"</string>
@@ -1507,8 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"ಇತ್ತೀಚಿನ ಆ್ಯಪ್‌ಗಳನ್ನು ವೀಕ್ಷಿಸಿ"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"ಆ್ಯಪ್‌ಗಳನ್ನು ಬದಲಿಸಿ"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"ಮುಗಿದಿದೆ"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"ಮುಂದಿನದು"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"ಪುನಃ ಪ್ರಯತ್ನಿಸಿ!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"ಹಿಂತಿರುಗಿ"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"ನಿಮ್ಮ ಟಚ್‌ಪ್ಯಾಡ್‌ನಲ್ಲಿ ಮೂರು ಬೆರಳುಗಳನ್ನು ಬಳಸಿ ಎಡ ಅಥವಾ ಬಲಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ"</string>
@@ -1546,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"ಇತ್ತೀಚಿನ ಆ್ಯಪ್‌ಗಳನ್ನು ನೋಡಲು, ಟಚ್‌ಪ್ಯಾಡ್‌ನಲ್ಲಿ ಮೂರು ಬೆರಳುಗಳಿಂದ ಮೇಲಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ ಹಾಗೂ ಹೋಲ್ಡ್ ಮಾಡಿ"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"ನಿಮ್ಮ ಎಲ್ಲಾ ಆ್ಯಪ್‌ಗಳನ್ನು ವೀಕ್ಷಿಸಲು, ನಿಮ್ಮ ಕೀಬೋರ್ಡ್‌ನಲ್ಲಿರುವ ಆ್ಯಕ್ಷನ್‌ ಕೀಯನ್ನು ಒತ್ತಿರಿ"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"ಅರ್ಥಬದ್ಧವಾಗಿಸಲಾಗಿದೆ"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"ನೋಡಲು ಅನ್‌ಲಾಕ್ ಮಾಡಿ"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"ಕೋಡ್ ವೀಕ್ಷಿಸಲು ಅನ್‌ಲಾಕ್ ಮಾಡಿ"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"ಸಂದರ್ಭೋಚಿತ ಶಿಕ್ಷಣ"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"ಹಿಂತಿರುಗಲು ನಿಮ್ಮ ಟಚ್‌ಪ್ಯಾಡ್ ಅನ್ನು ಬಳಸಿ"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"ಮೂರು ಬೆರಳುಗಳಿಂದ ಎಡಕ್ಕೆ ಅಥವಾ ಬಲಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ. ಇನ್ನಷ್ಟು ಗೆಸ್ಚರ್‌ಗಳನ್ನು ತಿಳಿಯಲು ಟ್ಯಾಪ್ ಮಾಡಿ."</string>
diff --git a/packages/SystemUI/res/values-ko/strings.xml b/packages/SystemUI/res/values-ko/strings.xml
index 931daa0..0c43ea1 100644
--- a/packages/SystemUI/res/values-ko/strings.xml
+++ b/packages/SystemUI/res/values-ko/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"블루투스가 연결되었습니다."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"블루투스 기기 아이콘"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"기기 세부정보를 구성하려면 클릭하세요."</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. 기기 세부정보 구성"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"모든 기기 보기"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"새 기기와 페어링"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"배터리 잔량을 알 수 없습니다."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g>에 연결되었습니다."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g>에 연결됨"</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"그룹을 펼칩니다."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"애플리케이션을 엽니다."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"연결되지 않았습니다."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"로밍"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"입력"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"보청기"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"켜는 중..."</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"상위 앱에서 밝기를 제어하고 있으므로 밝기를 조절할 수 없습니다."</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"자동 회전"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"화면 자동 회전"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"위치"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"멀티태스킹"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"앱이 오른쪽에 오도록 화면 분할 사용"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"앱이 왼쪽에 오도록 화면 분할 사용"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"전체 화면 사용"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"데스크톱 뷰 사용"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"화면 분할을 사용하는 중에 오른쪽 또는 아래쪽에 있는 앱으로 전환"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"화면 분할을 사용하는 중에 왼쪽 또는 위쪽에 있는 앱으로 전환하기"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"화면 분할 중: 다른 앱으로 바꾸기"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"최근 앱 보기"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"앱 전환"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"완료"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"다음"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"다시 시도해 보세요"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"뒤로"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"세 손가락을 사용해 터치패드에서 왼쪽 또는 오른쪽으로 스와이프하세요."</string>
diff --git a/packages/SystemUI/res/values-ky/strings.xml b/packages/SystemUI/res/values-ky/strings.xml
index f1c4eef..b411bdc 100644
--- a/packages/SystemUI/res/values-ky/strings.xml
+++ b/packages/SystemUI/res/values-ky/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth байланышта"</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Bluetooth түзмөгүнүн сүрөтчөсү"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Түзмөктүн чоо-жайын конфигурациялоо үчүн чыкылдатыңыз"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Түзмөктүн чоо-жайын конфигурациялаңыз"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Бардык түзмөктөрдү көрүү"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Жаңы түзмөк кошуу"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Батареянын деңгээли белгисиз."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g> менен туташкан."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g> менен туташты."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Топту жайып көрсөтүү."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Колдонмону ачуу."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Интернет жок."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Роуминг"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Киргизүү"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Угуу аппараттары"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Күйгүзүлүүдө…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Жарыктыкты тууралоого болбойт, анткени аны жогорку колдонмо көзөмөлдөйт"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Авто буруу"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Экранды авто буруу"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Жайгашкан жер"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Бир нече тапшырма аткаруу"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Колдонмону оңго жылдырып, экранды бөлүү"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Колдонмону солго жылдырып, экранды бөлүү"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Толук экранды колдонуу"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Компьютердик версияны колдонуу"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Бөлүнгөн экранда сол же төмөн жактагы колдонмого которулуу"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Бөлүнгөн экранды колдонуп жатканда сол же жогору жактагы колдонмого которулуңуз"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Экранды бөлүү режиминде бир колдонмону экинчисине алмаштыруу"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Акыркы колдонмолорду көрүү"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Колдонмолорду которуштуруу"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Бүттү"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Кийинки"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Кайталап көрүңүз!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Артка кайтуу"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Сенсордук тактаны үч манжаңыз менен солго же оңго сүрүңүз"</string>
diff --git a/packages/SystemUI/res/values-land/bools.xml b/packages/SystemUI/res/values-land/bools.xml
index c112edc..00e3e93 100644
--- a/packages/SystemUI/res/values-land/bools.xml
+++ b/packages/SystemUI/res/values-land/bools.xml
@@ -22,4 +22,6 @@
 
     <!--  True when small screen (<sw600dp) is landscape. -->
     <bool name="is_small_screen_landscape">true</bool>
+
+    <bool name="volume_dialog_ringer_drawer_should_open_to_the_side">true</bool>
 </resources>
diff --git a/packages/SystemUI/res/values-lo/strings.xml b/packages/SystemUI/res/values-lo/strings.xml
index de9694a..e9e585e 100644
--- a/packages/SystemUI/res/values-lo/strings.xml
+++ b/packages/SystemUI/res/values-lo/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"ເຊື່ອມຕໍ່ Bluetooth ແລ້ວ."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"ໄອຄອນອຸປະກອນ Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"ຄລິກເພື່ອຕັ້ງຄ່າລາຍລະອຽດອຸປະກອນ"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. ຕັ້ງຄ່າລາຍລະອຽດອຸປະກອນ"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"ເບິ່ງອຸປະກອນທັງໝົດ"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"ຈັບຄູ່ອຸປະກອນໃໝ່"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"ບໍ່ຮູ້ເປີເຊັນແບັດເຕີຣີ."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"ເຊື່ອມ​ຕໍ່​ຫາ <xliff:g id="BLUETOOTH">%s</xliff:g> ແລ້ວ."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"ເຊື່ອມຕໍ່ຫາ <xliff:g id="CAST">%s</xliff:g> ແລ້ວ."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"ຂະຫຍາຍກຸ່ມ."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"ເປີດແອັບພລິເຄຊັນ."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"ບໍ່ໄດ້ເຊື່ອມຕໍ່."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"ໂຣມມິງ"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"ການປ້ອນຂໍ້ມູນ"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"ເຄື່ອງຊ່ວຍຟັງ"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"ກຳລັງເປີດ..."</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"ບໍ່ສາມາດປັບຄວາມແຈ້ງເນື່ອງຈາກມັນ ຖືກຄວບຄຸມໂດຍແອັບຍອດນິຍົມ"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"ໝຸນ​ອັດ​ຕະ​ໂນ​ມັດ"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"ໝຸນໜ້າຈໍອັດຕະໂນມັດ"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"ສະຖານທີ່"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"ການເຮັດຫຼາຍໜ້າວຽກພ້ອມກັນ"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"ໃຊ້ໂໝດແບ່ງໜ້າຈໍໂດຍໃຫ້ແອັບຢູ່ເບື້ອງຂວາ"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"ໃຊ້ໂໝດແບ່ງໜ້າຈໍໂດຍໃຫ້ແອັບຢູ່ເບື້ອງຊ້າຍ"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"ໃຊ້ແບບເຕັມຈໍ"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"ໃຊ້ມຸມມອງເດັສທັອບ"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"ສະຫຼັບໄປໃຊ້ແອັບຢູ່ຂວາ ຫຼື ທາງລຸ່ມໃນຂະນະທີ່ໃຊ້ແບ່ງໜ້າຈໍ"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"ສະຫຼັບໄປໃຊ້ແອັບຢູ່ຊ້າຍ ຫຼື ທາງເທິງໃນຂະນະທີ່ໃຊ້ແບ່ງໜ້າຈໍ"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"ໃນລະຫວ່າງແບ່ງໜ້າຈໍ: ໃຫ້ປ່ຽນຈາກແອັບໜຶ່ງເປັນອີກແອັບໜຶ່ງ"</string>
@@ -991,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"ສະແດງໄອຄອນການແຈ້ງເຕືອນຄວາມສຳຄັນຕ່ຳ"</string>
     <string name="other" msgid="429768510980739978">"ອື່ນໆ"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"ສະຫຼັບຂະໜາດຂອງແຜ່ນ"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"ລຶບແຜ່ນອອກ"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"ເພີ່ມແຜ່ນໃສ່ຕຳແໜ່ງສຸດທ້າຍ"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"ຍ້າຍແຜ່ນ"</string>
@@ -1507,8 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"ເບິ່ງແອັບຫຼ້າສຸດ"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"ສະຫຼັບແອັບ"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"ແລ້ວໆ"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"ຕໍ່ໄປ"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"ກະລຸນາລອງໃໝ່!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"ກັບຄືນ"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"ປັດຊ້າຍ ຫຼື ຂວາໂດຍໃຊ້ມືສາມນິ້ວຢູ່ແຜ່ນສໍາຜັດຂອງທ່ານ"</string>
@@ -1546,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"ເພື່ອເບິ່ງແອັບຫຼ້າສຸດ, ໃຫ້ໃຊ້ 3 ນິ້ວປັດຂຶ້ນ ແລ້ວຄ້າງໄວ້ເທິງແຜ່ນສໍາຜັດ"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"ເພື່ອເບິ່ງແອັບທັງໝົດຂອງທ່ານ, ໃຫ້ກົດປຸ່ມຄຳສັ່ງຢູ່ແປ້ນພິມຂອງທ່ານ"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"ປົກປິດໄວ້ແລ້ວ"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"ປົດລັອກເພື່ອເບິ່ງ"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"ປົດລັອກເພື່ອເບິ່ງລະຫັດ"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"ການສຶກສາຕາມບໍລິບົດ"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"ໃຊ້ແຜ່ນສໍາຜັດຂອງທ່ານເພື່ອກັບຄືນ"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"ໃຊ້ 3 ນິ້ວປັດຊ້າຍ ຫຼື ຂວາ. ແຕະເພື່ອສຶກສາທ່າທາງເພີ່ມເຕີມ."</string>
diff --git a/packages/SystemUI/res/values-lt/strings.xml b/packages/SystemUI/res/values-lt/strings.xml
index 59f0ad34..0d4398e 100644
--- a/packages/SystemUI/res/values-lt/strings.xml
+++ b/packages/SystemUI/res/values-lt/strings.xml
@@ -150,7 +150,7 @@
     <string name="cast_to_other_device_stop_dialog_title" msgid="7836517190930357326">"Sustabdyti perdavimą?"</string>
     <string name="cast_to_other_device_stop_dialog_message_entire_screen_with_device" msgid="1474703115926205251">"Šiuo metu perduodate visą ekraną į šį įrenginį: <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
     <string name="cast_to_other_device_stop_dialog_message_entire_screen" msgid="8419219169553867625">"Šiuo metu perduodate visą ekraną į įrenginį netoliese"</string>
-    <string name="cast_to_other_device_stop_dialog_message_specific_app_with_device" msgid="2715934698604085519">"Šiuo metu perduodate programą (<xliff:g id="APP_BEING_SHARED_NAME">%1$s</xliff:g>) į šį įrenginį: <xliff:g id="DEVICE_NAME">%2$s</xliff:g>"</string>
+    <string name="cast_to_other_device_stop_dialog_message_specific_app_with_device" msgid="2715934698604085519">"Šiuo metu perduodate programą „<xliff:g id="APP_BEING_SHARED_NAME">%1$s</xliff:g>“ į šį įrenginį: <xliff:g id="DEVICE_NAME">%2$s</xliff:g>"</string>
     <string name="cast_to_other_device_stop_dialog_message_specific_app" msgid="8616103075630934513">"Šiuo metu į įrenginį netoliese perduodate šią programą: <xliff:g id="APP_BEING_SHARED_NAME">%1$s</xliff:g>"</string>
     <string name="cast_to_other_device_stop_dialog_message_generic_with_device" msgid="9213582497852420203">"Šiuo metu perduodate į šį įrenginį: <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
     <string name="cast_to_other_device_stop_dialog_message_generic" msgid="4100272100480415076">"Šiuo metu perduodate į įrenginį netoliese"</string>
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Prisijungta prie „<xliff:g id="BLUETOOTH">%s</xliff:g>“."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Prisijungta prie <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Išskleisti grupę."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Atidaryti programą."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Neprijungta."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Tarptinklinis ryšys"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Įvestis"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Klausos aparatai"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Įjungiama…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Negalima koreguoti ryškumo, nes jį valdo viršuje esanti programa"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Automatinis pasukimas"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Automatiškai sukti ekraną"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Vietovė"</string>
@@ -986,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Rodyti mažo prioriteto pranešimų piktogramas"</string>
     <string name="other" msgid="429768510980739978">"Kita"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"perjungti išklotinės elemento dydį"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"pašalintumėte išklotinės elementą"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"pridėti išklotinės elementą paskutinėje pozicijoje"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Perkelti išklotinės elementą"</string>
@@ -1540,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Peržiūrėkite naujausias programas, jutiklinėje dalyje perbraukę aukštyn trimis pirštais ir palaikę"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Jei norite peržiūrėti visas programas, paspauskite klaviatūros veiksmų klavišą"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Paslėpta"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Atrakinkite ir peržiūrėkite"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Atrakinkite ir peržiūrėkite kodą"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Kontekstinis švietimas"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Naudokite klaviatūrą, kad grįžtumėte atgal"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Perbraukite į kairę ar dešinę trimis pirštais. Palieskite, kad sužinotumėte daugiau gestų."</string>
diff --git a/packages/SystemUI/res/values-lv/strings.xml b/packages/SystemUI/res/values-lv/strings.xml
index 9962226..60e1e6f 100644
--- a/packages/SystemUI/res/values-lv/strings.xml
+++ b/packages/SystemUI/res/values-lv/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth savienojums ir izveidots."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Bluetooth ierīces ikona"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Lai konfigurētu ierīces informāciju, noklikšķiniet"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Konfigurējiet ierīces informāciju."</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Skatiet visas ierīces."</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Savienojiet pārī jaunu ierīci."</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Akumulatora uzlādes līmenis procentos nav zināms."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Ir izveidots savienojum ar <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Savienots ar ierīci <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Izvērst grupu."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Atvērt lietojumprogrammu."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Savienojums nav izveidots."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Viesabonēšana"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Ievade"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Dzirdes aparāti"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Notiek ieslēgšana…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Nevar mainīt spilgtumu, jo to kontrolē aktīvā lietotne."</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Automātiska pagriešana"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Automātiska ekrāna pagriešana"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Atrašanās vieta"</string>
@@ -586,7 +588,7 @@
     <string name="media_projection_entry_cast_permission_dialog_warning_entire_screen" msgid="4040447861037324017">"Apraidot visu ekrānu, ir redzams viss ekrāna saturs. Tāpēc piesardzīgi apejieties ar parolēm, maksājumu informāciju, ziņojumiem, fotoattēliem un audio un video saturu."</string>
     <string name="media_projection_entry_cast_permission_dialog_warning_single_app" msgid="7487834861348460736">"Apraidot lietotni, ir redzams viss attiecīgajā lietotnē rādītais vai atskaņotais. Tāpēc piesardzīgi apejieties ar parolēm, maksājumu informāciju, ziņojumiem, fotoattēliem un audio un video saturu."</string>
     <string name="media_projection_entry_cast_permission_dialog_continue_entire_screen" msgid="3261124185304676483">"Apraidīt ekrānu"</string>
-    <string name="media_projection_entry_cast_app_selector_title" msgid="6323062146661922387">"Lietotnes izvēlēšanās apraide"</string>
+    <string name="media_projection_entry_cast_app_selector_title" msgid="6323062146661922387">"Lietotnes izvēle apraidei"</string>
     <string name="media_projection_entry_generic_permission_dialog_title" msgid="4519802931547483628">"Vai sākt kopīgošanu?"</string>
     <string name="media_projection_entry_generic_permission_dialog_warning_entire_screen" msgid="5407906851409410209">"Kopīgošanas, ierakstīšanas vai apraides laikā Android var piekļūt visam, kas tiek rādīts jūsu ekrānā vai atskaņots jūsu ierīcē. Tāpēc piesardzīgi apejieties ar parolēm, maksājumu informāciju, ziņojumiem, fotoattēliem un audio un video saturu."</string>
     <string name="media_projection_entry_generic_permission_dialog_warning_single_app" msgid="3454859977888159495">"Lietotnes kopīgošanas, ierakstīšanas vai apraides laikā Android var piekļūt visam, kas tiek rādīts vai atskaņots attiecīgajā lietotnē. Tāpēc piesardzīgi apejieties ar parolēm, maksājumu informāciju, ziņojumiem, fotoattēliem un audio un video saturu."</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Vairākuzdevumu režīms"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Izmantot ekrāna sadalīšanu ar lietotni labajā pusē"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Izmantot ekrāna sadalīšanu ar lietotni kreisajā pusē"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Izmantot pilnekrāna režīmu"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Izmantot skatu datorā"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Pāriet uz lietotni pa labi/lejā, kamēr izmantojat sadalīto ekrānu."</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Pāriet uz lietotni pa kreisi/augšā, kamēr izmantojat sadalīto ekrānu."</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Ekrāna sadalīšanas režīmā: pārvietot lietotni no viena ekrāna uz otru"</string>
@@ -991,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Rādīt zemas prioritātes paziņojumu ikonas"</string>
     <string name="other" msgid="429768510980739978">"Citi"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"pārslēgt elementa lielumu"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"noņemt elementu"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"pievienotu elementu pēdējā pozīcijā"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Pārvietot elementu"</string>
@@ -1507,8 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Skatīt nesen izmantotās lietotnes"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Pārslēgties starp lietotnēm"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Gatavs"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Tālāk"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Mēģiniet vēlreiz."</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Atpakaļ"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Skārienpaliktnī ar trīs pirkstiem velciet pa kreisi vai pa labi."</string>
@@ -1546,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Lai skatītu nesenās lietotnes, ar trīs pirkstiem uz skārienpaliktņa velciet augšup un turiet."</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Lai skatītu visas savas lietotnes, tastatūrā nospiediet darbību taustiņu."</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Rediģēts"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Atbloķējiet, lai skatītu"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Atbloķējiet, lai skatītu kodu"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Kontekstuāla pamācība"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Atgriešanās, izmantojot skārienpaliktni"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Ar trīs pirkstiem velciet pa kreisi vai pa labi. Lai apgūtu citus žestus, pieskarieties šeit."</string>
diff --git a/packages/SystemUI/res/values-mk/strings.xml b/packages/SystemUI/res/values-mk/strings.xml
index 9d9c074..761eac1 100644
--- a/packages/SystemUI/res/values-mk/strings.xml
+++ b/packages/SystemUI/res/values-mk/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth е поврзан."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Икона за уред со Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Кликнете за да ги конфигурирате деталите за уредот"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Конфигурирајте ги деталите за уредот"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Погледнете ги сите уреди"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Спарете нов уред"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Процентот на батеријата е непознат."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Поврзано со <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Поврзано со <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Проширете ја групата."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Отворете ја апликацијата."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Не е поврзана"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Роаминг"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Влез"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Слушни помагала"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Се вклучува…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Не може да се приспособи осветленоста бидејќи е контролирана од горната апликација"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Автоматско ротирање"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Автоматско ротирање на екранот"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Локација"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Мултитаскинг"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Користете поделен екран со апликацијата оддесно"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Користете поделен екран со апликацијата одлево"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Користете цел екран"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Користете приказ на компјутер"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Префрлете се на апликацијата десно или долу при користењето поделен екран"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Префрлете се на апликацијата лево или горе при користењето поделен екран"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"При поделен екран: префрлете ги аплик. од едната на другата страна"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Прикажи ги неодамнешните апликации"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Сменете ги апликациите"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Готово"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Следно"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Обидете се повторно!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Назад"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Повлечете налево или надесно со три прста на допирната подлога"</string>
diff --git a/packages/SystemUI/res/values-ml/strings.xml b/packages/SystemUI/res/values-ml/strings.xml
index 301c3da..aae5ac48 100644
--- a/packages/SystemUI/res/values-ml/strings.xml
+++ b/packages/SystemUI/res/values-ml/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"ബ്ലൂടൂത്ത് കണക്‌റ്റുചെയ്തു."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Bluetooth ഉപകരണ ഐക്കൺ"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"ഉപകരണത്തിന്റെ വിശദാംശങ്ങൾ കോൺഫിഗർ ചെയ്യാൻ ക്ലിക്ക് ചെയ്യുക"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. ഉപകരണ വിശദാംശങ്ങൾ കോൺഫിഗർ ചെയ്യുക"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"എല്ലാ ഉപകരണങ്ങളും കാണുക"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"പുതിയ ഉപകരണം ജോടിയാക്കുക"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"ബാറ്ററി ശതമാനം അജ്ഞാതമാണ്."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g> എന്നതിലേക്ക് കണക്‌റ്റുചെയ്‌തു."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g> എന്നതിലേക്ക് കണക്റ്റുചെയ്തു."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"ഗ്രൂപ്പ് വികസിപ്പിക്കുക."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"ആപ്പ് തുറക്കുക."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"കണക്റ്റുചെയ്‌തിട്ടില്ല."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"റോമിംഗ്"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"ഇൻപുട്ട്"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"ശ്രവണ സഹായികൾ"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"ഓണാക്കുന്നു…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"തെളിച്ചം അഡ്‌ജസ്റ്റ് ചെയ്യാനാകില്ല, അത് നിയന്ത്രിക്കുന്നത് ഏറ്റവും മുകളിലുള്ള ആപ്പാണ്"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"സ്‌ക്രീൻ സ്വയമേവ തിരിയൽ"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"സ്‌ക്രീൻ സ്വയമേവ തിരിക്കുക"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"ലൊക്കേഷൻ"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"മൾട്ടിടാസ്‌കിംഗ്"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"വലതുവശത്തുള്ള ആപ്പിനൊപ്പം സ്‌ക്രീൻ വിഭജന മോഡ് ഉപയോഗിക്കുക"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"ഇടതുവശത്തുള്ള ആപ്പിനൊപ്പം സ്‌ക്രീൻ വിഭജന മോഡ് ഉപയോഗിക്കുക"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"പൂർണ സ്ക്രീൻ ഉപയോഗിക്കുക"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"ഡെസ്‌ക്ടോപ്പ് വ്യൂ ഉപയോഗിക്കുക"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"സ്ക്രീൻ വിഭജന മോഡ് ഉപയോഗിക്കുമ്പോൾ വലതുവശത്തെ/താഴത്തെ ആപ്പിലേക്ക് മാറുക"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"സ്ക്രീൻ വിഭജന മോഡ് ഉപയോഗിക്കുമ്പോൾ ഇടതുവശത്തെ/മുകളിലെ ആപ്പിലേക്ക് മാറൂ"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"സ്‌ക്രീൻ വിഭജന മോഡിൽ: ഒരു ആപ്പിൽ നിന്ന് മറ്റൊന്നിലേക്ക് മാറുക"</string>
@@ -991,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"പ്രാധാന്യം കുറഞ്ഞ അറിയിപ്പ് ചിഹ്‌നങ്ങൾ"</string>
     <string name="other" msgid="429768510980739978">"മറ്റുള്ളവ"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"ടൈലിന്റെ വലുപ്പം മാറ്റുക"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"ടൈൽ നീക്കം ചെയ്യുക"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"അവസാന ഭാഗത്ത് ടൈൽ ചേർക്കുക"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"ടൈൽ നീക്കുക"</string>
@@ -1507,8 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"അടുത്തിടെയുള്ള ആപ്പുകൾ കാണുക"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"ആപ്പുകൾ മാറുക"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"പൂർത്തിയായി"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"അടുത്തത്"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"വീണ്ടും ശ്രമിക്കുക!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"മടങ്ങുക"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"ടച്ച്‌പാഡിൽ മൂന്ന് വിരലുകൾ കൊണ്ട് ഇടത്തേക്കോ വലത്തേക്കോ സ്വൈപ്പ് ചെയ്യുക"</string>
@@ -1546,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"അടുത്തിടെ ഉപയോഗിച്ച ആപ്പുകൾ കാണാൻ, മൂന്ന് വിരലുകൾ ഉപയോഗിച്ച് ടച്ച്‌പാഡിൽ സ്വൈപ്പ് ചെയ്ത് പിടിക്കുക"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"എല്ലാ ആപ്പുകളും കാണാൻ, നിങ്ങളുടെ കീബോർഡിലെ ആക്‌ഷൻ കീ അമർത്തുക"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"മറച്ചത്"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"കാണാൻ, അൺലോക്ക് ചെയ്യുക"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"കോഡ് കാണാൻ അൺലോക്ക് ചെയ്യുക"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"സന്ദർഭോചിത വിദ്യാഭ്യാസം"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"തിരികെ പോകാൻ നിങ്ങളുടെ ടച്ച്‌പാഡ് ഉപയോഗിക്കുക"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"മൂന്ന് വിരലുകൾ കൊണ്ട് ഇടത്തേക്കോ വലത്തേക്കോ സ്വൈപ്പ് ചെയ്യൂ. കൂടുതൽ ജെസ്ച്ചറുകളറിയാൻ ടാപ്പ് ചെയ്യൂ."</string>
diff --git a/packages/SystemUI/res/values-mn/strings.xml b/packages/SystemUI/res/values-mn/strings.xml
index 7c2e69c..5938893 100644
--- a/packages/SystemUI/res/values-mn/strings.xml
+++ b/packages/SystemUI/res/values-mn/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth холбогдсон."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Bluetooth төхөөрөмжийн дүрс тэмдэг"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Төхөөрөмжийн дэлгэрэнгүйг тохируулахын тулд товшино уу"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Төхөөрөмжийн дэлгэрэнгүйг тохируулна уу"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Бүх төхөөрөмжийг харах"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Шинэ төхөөрөмж хослуулах"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Батарейн хувь тодорхойгүй байна."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g>-тай холбогдсон."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g>-д холбогдсон."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Бүлгийг дэлгэнэ үү."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Аппликейшныг нээнэ үү."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Холбогдоогүй."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Роуминг"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Оролт"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Сонсголын төхөөрөмж"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Асааж байна…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Гэрэлтүүлгийгдавуу эрхтэй аппаас хянаж байгаа тул тохируулах боломжгүй"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Автоматаар эргэх"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Дэлгэцийг автоматаар эргүүлэх"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Байршил"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Олон ажил зэрэг хийх"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Аппыг баруун талд байгаагаар дэлгэцийг хуваахыг ашиглах"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Аппыг зүүн талд байгаагаар дэлгэцийг хуваахыг ашиглах"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Бүтэн дэлгэцийг ашиглах"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Дэлгэц дээр харагдах байдлыг ашиглах"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Дэлгэц хуваахыг ашиглаж байхдаа баруун талд эсвэл доор байх апп руу сэлгэ"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Дэлгэц хуваахыг ашиглаж байхдаа зүүн талд эсвэл дээр байх апп руу сэлгэ"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Дэлгэц хуваах үеэр: аппыг нэгээс нөгөөгөөр солих"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Саяхны аппуудыг харах"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Апп сэлгэх"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Болсон"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Дараах"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Дахин оролдоно уу!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Буцах"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Мэдрэгч самбар дээрээ гурван хуруугаа ашиглан зүүн эсвэл баруун тийш шударна уу"</string>
diff --git a/packages/SystemUI/res/values-mr/strings.xml b/packages/SystemUI/res/values-mr/strings.xml
index 6889179..c3c7160 100644
--- a/packages/SystemUI/res/values-mr/strings.xml
+++ b/packages/SystemUI/res/values-mr/strings.xml
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g> शी कनेक्‍ट केले."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g> शी कनेक्ट केले."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"गटाचा विस्तार करा."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"अ‍ॅप उघडा."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"कनेक्ट केले नाही."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"रोमिंग"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"इनपुट"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"श्रवणयंत्रे"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"सुरू करत आहे…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"ब्राइटनेस ॲडजस्ट करू शकत नाही, कारण तो टॉप ॲपद्वारे नियंत्रित केला जात आहे"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"ऑटो-रोटेट"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"ऑटो-रोटेट स्क्रीन"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"स्थान"</string>
@@ -581,7 +586,7 @@
     <string name="media_projection_entry_cast_permission_dialog_option_text_single_app" msgid="6073353940838561981">"एक अ‍ॅप कास्ट करा"</string>
     <string name="media_projection_entry_cast_permission_dialog_option_text_entire_screen" msgid="8389508187954155307">"संपूर्ण स्क्रीन कास्ट करा"</string>
     <string name="media_projection_entry_cast_permission_dialog_warning_entire_screen" msgid="4040447861037324017">"तुम्ही तुमची संपूर्ण स्क्रीन कास्ट करता, तेव्हा तुमच्या स्क्रीनवरील सर्व गोष्टी दृश्यमान असतात. त्यामुळे पासवर्ड, पेमेंट तपशील, मेसेज, फोटो आणि ऑडिओ व व्हिडिओ यांसारख्या गोष्टींबाबत सावधगिरी बाळगा."</string>
-    <string name="media_projection_entry_cast_permission_dialog_warning_single_app" msgid="7487834861348460736">"तुम्ही अ‍ॅप कास्ट करता, तेव्हा त्या अ‍ॅपमध्ये दाखवल्या किंवा प्ले होणाऱ्या सर्व गोष्टी दृश्यमान असतात. त्यामुळे पासवर्ड, पेमेंट तपशील, मेसेज, फोटो आणि ऑडिओ व व्हिडिओ यांसारख्या गोष्टींबाबत सावधगिरी बाळगा."</string>
+    <string name="media_projection_entry_cast_permission_dialog_warning_single_app" msgid="7487834861348460736">"तुम्ही अ‍ॅप कास्ट करता, तेव्हा त्या अ‍ॅपमध्ये दाखवलेल्या किंवा प्ले होणाऱ्या सर्व गोष्टी दृश्यमान असतात. त्यामुळे पासवर्ड, पेमेंट तपशील, मेसेज, फोटो आणि ऑडिओ व व्हिडिओ यांसारख्या गोष्टींबाबत सावधगिरी बाळगा."</string>
     <string name="media_projection_entry_cast_permission_dialog_continue_entire_screen" msgid="3261124185304676483">"स्क्रीन कास्‍ट करा"</string>
     <string name="media_projection_entry_cast_app_selector_title" msgid="6323062146661922387">"कास्ट करण्यासाठी ॲप निवडा"</string>
     <string name="media_projection_entry_generic_permission_dialog_title" msgid="4519802931547483628">"शेअर करणे सुरू करायचे आहे का?"</string>
@@ -986,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"कमी प्राधान्य सूचना आयकन दर्शवा"</string>
     <string name="other" msgid="429768510980739978">"अन्य"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"टाइलचा आकार टॉगल करा"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"टाइल काढून टाका"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"टाइल शेवटच्या स्थानावर जोडा"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"टाइल हलवा"</string>
@@ -1540,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"अलीकडील ॲप्स पाहण्यासाठी, टचपॅडवर तीन बोटांनी वरती स्वाइप करा आणि धरून ठेवा"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"तुमची सर्व ॲप्स पाहण्यासाठी, तुमच्या कीबोर्डवरील अ‍ॅक्शन की प्रेस करा"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"रिडॅक्ट केलेले"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"पाहण्यासाठी अनलॉक करा"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"कोड पाहण्यासाठी अनलॉक करा"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"संदर्भीय शिक्षण"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"मागे जाण्यासाठी तुमचा टचपॅड वापरा"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"तीन बोटांनी डावीकडे किंवा उजवीकडे स्वाइप करा. आणखी जेश्चर जाणून घेण्यासाठी टॅप करा."</string>
diff --git a/packages/SystemUI/res/values-ms/strings.xml b/packages/SystemUI/res/values-ms/strings.xml
index b7e3153..3c96d0a 100644
--- a/packages/SystemUI/res/values-ms/strings.xml
+++ b/packages/SystemUI/res/values-ms/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth disambungkan."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Ikon peranti Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Klik untuk mengkonfigurasi butiran peranti"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Konfigurasikan butiran peranti"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Lihat semua peranti"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Gandingkan peranti baharu"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Peratusan kuasa bateri tidak diketahui."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Disambungkan kepada <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Disambungkan ke <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Kembangkan kumpulan."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Buka aplikasi."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Tidak disambungkan."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Perayauan"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Input"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Alat bantu pendengaran"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Menghidupkan…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Tidak dapat melaraskan kecerahan kerana peranti dikawal oleh apl popular"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Autoputar"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Autoputar skrin"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Lokasi"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Berbilang tugas"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Gunakan skrin pisah dengan apl pada sebelah kanan"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Gunakan skrin pisah dengan apl pada sebelah kiri"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Gunakan skrin penuh"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Gunakan paparan desktop"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Tukar kepada apl di sebelah kanan/bawah semasa menggunakan skrin pisah"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Tukar kepada apl di sebelah kiri/atas semasa menggunakan skrin pisah"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Semasa skrin pisah: gantikan apl daripada satu apl kepada apl lain"</string>
@@ -991,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Tunjukkan ikon pemberitahuan keutamaan rendah"</string>
     <string name="other" msgid="429768510980739978">"Lain-lain"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"togol saiz jubin"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"alih keluar jubin"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"tambahkan jubin pada kedudukan terakhir"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Alihkan jubin"</string>
@@ -1507,8 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Lihat apl terbaharu"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Tukar apl"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Selesai"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Seterusnya"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Cuba lagi!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Kembali"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Leret ke kiri atau ke kanan menggunakan tiga jari pada pad sentuh"</string>
@@ -1546,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Untuk melihat apl terbaharu, leret ke atas dan tahan dengan tiga jari pada pad sentuh"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Untuk melihat semua apl, tekan kekunci tindakan pada papan kekunci"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Disunting"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Buka kunci untuk lihat"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Buka kunci untuk melihat kod"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Pendidikan kontekstual"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Gunakan pad sentuh anda untuk kembali"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Leret ke kiri atau ke kanan dengan tiga jari. Ketik dan ketahui lebih lanjut tentang gerak isyarat."</string>
diff --git a/packages/SystemUI/res/values-my/strings.xml b/packages/SystemUI/res/values-my/strings.xml
index 72f0369..b259e39 100644
--- a/packages/SystemUI/res/values-my/strings.xml
+++ b/packages/SystemUI/res/values-my/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"ဘလူးတုသ်ချိတ်ဆက်ထားမှု"</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"ဘလူးတုသ်သုံးစက် သင်္ကေတ"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"စက်အသေးစိတ်ကို စီစဉ်သတ်မှတ်ရန် နှိပ်ပါ"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>။ စက်အသေးစိတ်ကို စီစဉ်သတ်မှတ်နိုင်သည်"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"စက်အားလုံးကြည့်ရန်"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"စက်အသစ် တွဲချိတ်ရန်"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"ဘက်ထရီရာခိုင်နှုန်းကို မသိပါ။"</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g>သို့ ချိတ်ဆက်ထား"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g> သို့ချိတ်ဆက်ထားပါသည်။"</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"အုပ်စုကို ပိုပြသည်။"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"အပလီကေးရှင်းကို ဖွင့်သည်။"</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"ချိတ်ဆက်မထားပါ"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"ပြင်ပကွန်ရက်သုံးခြင်း"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"အဝင်"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"နားကြားကိရိယာ"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"ဖွင့်နေသည်…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"၎င်းကို ထိပ်ဆုံးရှိအက်ပ်က ထိန်းချုပ်နေသဖြင့် တောက်ပမှုကို ပြင်ဆင်၍မရပါ"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"အော်တို-လည်"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"မျက်နှာပြင်အား အလိုအလျောက်လှည့်ခြင်း"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"တည်နေရာ"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"တစ်ပြိုင်နက် များစွာလုပ်ခြင်း"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"အက်ပ်ကို ညာ၌ထားကာ မျက်နှာပြင် ခွဲ၍ပြသခြင်း သုံးရန်"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"အက်ပ်ကို ဘယ်၌ထားကာ မျက်နှာပြင် ခွဲ၍ပြသခြင်း သုံးရန်"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"ဖန်သားပြင်အပြည့် သုံးရန်"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"ဒက်စ်တော့မြင်ကွင်း သုံးရန်"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"မျက်နှာပြင်ခွဲ၍ပြသခြင်း သုံးစဉ် ညာ (သို့) အောက်ရှိအက်ပ်သို့ ပြောင်းရန်"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"မျက်နှာပြင် ခွဲ၍ပြသခြင်းသုံးစဉ် ဘယ် (သို့) အထက်ရှိအက်ပ်သို့ ပြောင်းရန်"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"မျက်နှာပြင် ခွဲ၍ပြသစဉ်- အက်ပ်တစ်ခုကို နောက်တစ်ခုနှင့် အစားထိုးရန်"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"မကြာသေးမီကအက်ပ်များကို ကြည့်ရန်"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"အက်ပ်များကူးပြောင်းခြင်း"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"ပြီးပြီ"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"ရှေ့သို့"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"ထပ်စမ်းကြည့်ပါ။"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"ပြန်သွားရန်"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"သင့်တာ့ချ်ပက်တွင် လက်သုံးချောင်းဖြင့် ဘယ် (သို့) ညာသို့ ပွတ်ဆွဲပါ"</string>
diff --git a/packages/SystemUI/res/values-nb/strings.xml b/packages/SystemUI/res/values-nb/strings.xml
index 72d7956..1c655f1 100644
--- a/packages/SystemUI/res/values-nb/strings.xml
+++ b/packages/SystemUI/res/values-nb/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth er tilkoblet."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Ikon for Bluetooth-enheter"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Klikk for å konfigurere enhetsdetaljer"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Konfigurer enhetsdetaljer"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Se alle enheter"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Koble til en ny enhet"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Batteriprosenten er ukjent."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Koblet til <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Koblet til <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Utvid gruppen."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Åpne appen."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Ikke tilkoblet."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Innenhet"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Høreapparater"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Slår på …"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Kan ikke justere lysstyrken, fordi den kontrolleres av appen på toppen"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Rotér automatisk"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Rotér skjermen automatisk"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Sted"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitasking"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Bruk delt skjerm med appen til høyre"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Bruk delt skjerm med appen til venstre"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Bruk fullskjerm"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Bruk datamaskinvisning"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Bytt til appen til høyre eller under mens du bruker delt skjerm"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Bytt til appen til venstre eller over mens du bruker delt skjerm"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"I delt skjerm: Bytt ut en app"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Se nylige apper"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Bytt app"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Ferdig"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Neste"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Prøv på nytt."</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Gå tilbake"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Sveip til venstre eller høyre med tre fingre på styreflaten"</string>
diff --git a/packages/SystemUI/res/values-ne/strings.xml b/packages/SystemUI/res/values-ne/strings.xml
index 8e0ee77..133003e 100644
--- a/packages/SystemUI/res/values-ne/strings.xml
+++ b/packages/SystemUI/res/values-ne/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"ब्लुटुथ जडान भयो।"</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"ब्लुटुथ डिभाइस जनाउने आइकन"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"डिभाइसको विवरण कन्फिगर गर्न क्लिक गर्नुहोस्"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>। डिभाइसको विवरण कन्फिगर गर्नुहोस्"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"सबै डिभाइस हेर्नुहोस्"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"नयाँ डिभाइस कनेक्ट गर्नुहोस्"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"ब्याट्रीमा कति प्रतिशत चार्ज छ भन्ने कुराको जानाकरी छैन।"</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g> मा जडित।"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g> मा कनेक्ट गरियो।"</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"समूह एक्स्पान्ड गर्नुहोस्।"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"एप खोल्नुहोस्।"</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"जडान नगरिएको।"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"रोमिङ"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"इनपुट"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"हियरिङ डिभाइसहरू"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"सक्रिय गर्दै…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"टप एपले चमक नियन्त्रण गरिरहेकाले चमक मिलाउन मिल्दैन"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"अटो रोटेट"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"स्क्रिन स्वतःघुम्ने"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"लोकेसन"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"मल्टिटास्किङ"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"हालको एप दायाँ भागमा पारेर स्प्लिट स्क्रिन प्रयोग गर्नुहोस्"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"हालको एप बायाँ भागमा पारेर स्प्लिट स्क्रिन प्रयोग गर्नुहोस्"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"फुल स्क्रिन प्रयोग गर्नुहोस्"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"डेस्कटप भ्यू प्रयोग गर्नुहोस्"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"स्प्लिट स्क्रिन प्रयोग गर्दै गर्दा दायाँ वा तलको एप चलाउनुहोस्"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"स्प्लिट स्क्रिन प्रयोग गर्दै गर्दा बायाँ वा माथिको एप चलाउनुहोस्"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"स्प्लिट स्क्रिन प्रयोग गरिएका बेला: एउटा स्क्रिनमा भएको एप अर्कोमा लैजानुहोस्"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"हालसालै चलाइएका एपहरू हेर्नुहोस्"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"एपहरू बदल्नुहोस्"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"सम्पन्न भयो"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"अर्को"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"फेरि प्रयास गर्नुहोस्!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"पछाडि जानुहोस्"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"तीन वटा औँला प्रयोग गरी टचप्याडमा बायाँ वा दायाँतिर स्वाइप गर्नुहोस्"</string>
diff --git a/packages/SystemUI/res/values-nl/strings.xml b/packages/SystemUI/res/values-nl/strings.xml
index e789798..3881907 100644
--- a/packages/SystemUI/res/values-nl/strings.xml
+++ b/packages/SystemUI/res/values-nl/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth-verbinding ingesteld."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Icoon voor bluetooth-apparaat"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Klik om de apparaatgegevens in te stellen"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Apparaatgegevens instellen"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Alle apparaten bekijken"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Nieuw apparaat koppelen"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Batterijpercentage onbekend."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Verbonden met <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Verbonden met <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Groep uitvouwen."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"App openen."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Niet verbonden."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Invoer"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Hoortoestellen"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Aanzetten…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Kan de helderheid niet aanpassen omdat deze wordt beheerd door de bovenste app"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Automatisch draaien"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Scherm automatisch draaien"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Locatie"</string>
@@ -421,7 +423,7 @@
     <string name="hearing_devices_presets_error" msgid="350363093458408536">"Kan voorinstelling niet updaten"</string>
     <string name="hearing_devices_preset_label" msgid="7878267405046232358">"Voorinstelling"</string>
     <string name="hearing_devices_spinner_item_selected" msgid="3137083889662762383">"Geselecteerd"</string>
-    <string name="hearing_devices_ambient_label" msgid="629440938614895797">"Omgeving"</string>
+    <string name="hearing_devices_ambient_label" msgid="629440938614895797">"Omgevingsgeluid"</string>
     <string name="hearing_devices_ambient_control_left" msgid="3586965448230412600">"Links"</string>
     <string name="hearing_devices_ambient_control_right" msgid="6192137602448918383">"Rechts"</string>
     <string name="hearing_devices_ambient_expand_controls" msgid="2131816068187709200">"Uitvouwen naar gescheiden bediening voor links en rechts"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitasken"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Gesplitst scherm gebruiken met de app aan de rechterkant"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Gesplitst scherm gebruiken met de app aan de linkerkant"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Volledig scherm gebruiken"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Desktopweergave gebruiken"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Naar de app rechts of onderaan gaan als je een gesplitst scherm gebruikt"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Naar de app links of bovenaan gaan als je een gesplitst scherm gebruikt"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Tijdens gesplitst scherm: een app vervangen door een andere"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Recente apps bekijken"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Wisselen tussen apps"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Klaar"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Volgende"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Probeer het nog eens."</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Terug"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Swipe met 3 vingers naar links of rechts op de touchpad"</string>
diff --git a/packages/SystemUI/res/values-or/strings.xml b/packages/SystemUI/res/values-or/strings.xml
index 469ae28..9c561c9 100644
--- a/packages/SystemUI/res/values-or/strings.xml
+++ b/packages/SystemUI/res/values-or/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"ବ୍ଲୁଟୂଥ୍‍‌ ସଂଯୋଗ କରାଯାଇଛି।"</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"ବ୍ଲୁଟୁଥ ଡିଭାଇସ ଆଇକନ"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"ଡିଭାଇସ ବିବରଣୀକୁ କନଫିଗର କରିବା ପାଇଁ କ୍ଲିକ କରନ୍ତୁ"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>। ଡିଭାଇସ ବିବରଣୀ କନଫିଗର କରନ୍ତୁ"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"ସମସ୍ତ ଡିଭାଇସ ଦେଖନ୍ତୁ"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"ନୂଆ ଡିଭାଇସ ପେୟାର କରନ୍ତୁ"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"ବ୍ୟାଟେରୀ ଶତକଡ଼ା ଅଜଣା ଅଟେ।"</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g> ସହ ସଂଯୁକ୍ତ"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g> ସହିତ ସଂଯୁକ୍ତ।"</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"ଗ୍ରୁପକୁ ବିସ୍ତାର କରନ୍ତୁ।"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"ଆପ୍ଲିକେସନ ଖୋଲନ୍ତୁ।"</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"କନେକ୍ଟ ହୋଇନାହିଁ।"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"ରୋମିଙ୍ଗ"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"ଇନପୁଟ୍"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"ଶ୍ରବଣ ଯନ୍ତ୍ର"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"ଅନ୍ ହେଉଛି…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"ଟପ ଆପ ଦ୍ୱାରା ଉଜ୍ଜ୍ୱଳତା ନିୟନ୍ତ୍ରିତହେଉଥିବା ଯୋଗୁଁ ଏହାକୁ ଆଡଜଷ୍ଟ କରିପାରିବେ ନାହିଁ"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"ଅଟୋ-ରୋଟେଟ"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"ଅଟୋ-ରୋଟେଟ ସ୍କ୍ରିନ"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"ଲୋକେସନ"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"ମଲ୍ଟିଟାସ୍କିଂ"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"ଡାହାଣରେ ଆପ ସହିତ ସ୍ପ୍ଲିଟ ସ୍କ୍ରିନକୁ ବ୍ୟବହାର କରନ୍ତୁ"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"ବାମରେ ଆପ ସହିତ ସ୍ପ୍ଲିଟ ସ୍କ୍ରିନକୁ ବ୍ୟବହାର କରନ୍ତୁ"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"ପୂର୍ଣ୍ଣ ସ୍କ୍ରିନ ବ୍ୟବହାର କରନ୍ତୁ"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"ଡେସ୍କଟପ ଭ୍ୟୁ ବ୍ୟବହାର କରନ୍ତୁ"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"ସ୍ପ୍ଲିଟ ସ୍କ୍ରିନ ବ୍ୟବହାର କରିବା ସମୟରେ ଡାହାଣପଟର ବା ତଳର ଆପକୁ ସୁଇଚ କରନ୍ତୁ"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"ସ୍ପ୍ଲିଟ ସ୍କ୍ରିନ ବ୍ୟବହାର କରିବା ସମୟରେ ବାମପଟର ବା ଉପରର ଆପକୁ ସୁଇଚ କରନ୍ତୁ"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"ସ୍ପ୍ଲିଟ ସ୍କ୍ରିନ ସମୟରେ: କୌଣସି ଆପକୁ ଗୋଟିଏରୁ ଅନ୍ୟ ଏକ ଆପରେ ବଦଳାନ୍ତୁ"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"ବର୍ତ୍ତମାନର ଆପ୍ସ ଭ୍ୟୁ କରନ୍ତୁ"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"ଆପ୍ସକୁ ସୁଇଚ କରନ୍ତୁ"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"ହୋଇଗଲା"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"ପରବର୍ତ୍ତୀ"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"ପଛକୁ ଫେରନ୍ତୁ"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"ଆପଣଙ୍କ ଟଚପେଡରେ ତିନୋଟି ଆଙ୍ଗୁଠି ବ୍ୟବହାର କରି ବାମ କିମ୍ବା ଡାହାଣକୁ ସ୍ୱାଇପ କରନ୍ତୁ"</string>
diff --git a/packages/SystemUI/res/values-pa/strings.xml b/packages/SystemUI/res/values-pa/strings.xml
index 70d2497..6027538 100644
--- a/packages/SystemUI/res/values-pa/strings.xml
+++ b/packages/SystemUI/res/values-pa/strings.xml
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g> ਨਾਲ ਕਨੈਕਟ ਕੀਤਾ।"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g> ਨਾਲ ਕਨੈਕਟ ਕੀਤਾ ਗਿਆ।"</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"ਗਰੁੱਪ ਦਾ ਵਿਸਤਾਰ ਕਰੋ।"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"ਐਪਲੀਕੇਸ਼ਨ ਖੋਲ੍ਹੋ।"</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"ਕਨੈਕਟ ਨਹੀਂ ਕੀਤਾ।"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"ਰੋਮਿੰਗ"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"ਇਨਪੁੱਟ"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"ਸੁਣਨ ਦੇ ਸਾਧਨ"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"ਚਾਲੂ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"ਚਮਕ ਨੂੰ ਵਿਵਸਥਿਤ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਕਿਉਂਕਿ ਇਹ ਪਹਿਲਾਂ ਚੱਲ ਰਹੀ ਐਪ ਵੱਲੋਂ ਕੰਟਰੋਲ ਕਰਨ ਕਰਕੇ ਹੋ ਰਿਹਾ ਹੈ"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"ਸਵੈ-ਘੁਮਾਓ"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"ਸਕ੍ਰੀਨ ਨੂੰ ਆਪਣੇ ਆਪ ਘੁੰਮਾਓ"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"ਟਿਕਾਣਾ"</string>
@@ -986,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"ਘੱਟ ਤਰਜੀਹ ਵਾਲੇ ਸੂਚਨਾ ਪ੍ਰਤੀਕਾਂ ਨੂੰ ਦਿਖਾਓ"</string>
     <string name="other" msgid="429768510980739978">"ਹੋਰ"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"ਟਾਇਲ ਦੇ ਆਕਾਰ ਨੂੰ ਟੌਗਲ ਕਰੋ"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"ਟਾਇਲ ਹਟਾਓ"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"ਪਿਛਲੀ ਸਥਿਤੀ \'ਤੇ ਟਾਇਲ ਸ਼ਾਮਲ ਕਰੋ"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"ਟਾਇਲ ਨੂੰ ਲਿਜਾਓ"</string>
@@ -1540,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"ਹਾਲੀਆ ਐਪਾਂ ਨੂੰ ਦੇਖਣ ਲਈ, ਟੱਚਪੈਡ \'ਤੇ ਤਿੰਨ ਉਂਗਲਾਂ ਨਾਲ ਉੱਪਰ ਵੱਲ ਸਵਾਈਪ ਕਰ ਕੇ ਦਬਾਈ ਰੱਖੋ"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"ਆਪਣੀਆਂ ਸਾਰੀਆਂ ਐਪਾਂ ਨੂੰ ਦੇਖਣ ਲਈ, ਆਪਣੇ ਕੀ-ਬੋਰਡ \'ਤੇ ਕਾਰਵਾਈ ਕੁੰਜੀ ਨੂੰ ਦਬਾਓ"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"ਅਸਪਸ਼ਟ ਬਣਾਇਆ ਗਿਆ"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"ਦੇਖਣ ਲਈ ਅਣਲਾਕ ਕਰੋ"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"ਕੋਡ ਦੇਖਣ ਲਈ ਅਣਲਾਕ ਕਰੋ"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"ਸੰਦਰਭੀ ਸਿੱਖਿਆ"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"ਪਿੱਛੇ ਜਾਣ ਲਈ ਆਪਣੇ ਟੱਚਪੈਡ ਦੀ ਵਰਤੋਂ ਕਰੋ"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"ਤਿੰਨ ਉਂਗਲਾਂ ਦੀ ਵਰਤੋਂ ਕਰ ਕੇ ਖੱਬੇ ਜਾਂ ਸੱਜੇ ਪਾਸੇ ਵੱਲ ਸਵਾਈਪ ਕਰੋ। ਹੋਰ ਇਸ਼ਾਰਿਆਂ ਨੂੰ ਜਾਣਨ ਲਈ ਟੈਪ ਕਰੋ।"</string>
diff --git a/packages/SystemUI/res/values-pl/strings.xml b/packages/SystemUI/res/values-pl/strings.xml
index 6a4b3d5..35ff6c9 100644
--- a/packages/SystemUI/res/values-pl/strings.xml
+++ b/packages/SystemUI/res/values-pl/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth połączony."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Ikona urządzenia Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Kliknij, aby skonfigurować szczegóły urządzenia"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Skonfiguruj szczegóły urządzenia"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Zobacz wszystkie urządzenia"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Sparuj nowe urządzenie"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Poziom naładowania baterii jest nieznany."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Połączono z <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Połączono z urządzeniem <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Rozwiń grupę."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Otwórz aplikację."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Nie połączono."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Wejście"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Aparaty słuchowe"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Włączam…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Nie można dostosować jasności, ponieważ jest onakontrolowana przez aplikację na pierwszym planie"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Autoobracanie"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Autoobracanie ekranu"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Lokalizacja"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Wielozadaniowość"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Podziel ekran z aplikacją widoczną po prawej"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Podziel ekran z aplikacją widoczną po lewej"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Użyj trybu pełnoekranowego"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Użyj wersji na komputery"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Przełącz się na aplikację po prawej lub poniżej na podzielonym ekranie"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Przełącz się na aplikację po lewej lub powyżej na podzielonym ekranie"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Podczas podzielonego ekranu: zastępowanie aplikacji"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Wyświetlanie ostatnich aplikacji"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Przełączanie aplikacji"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Gotowe"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Dalej"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Spróbuj jeszcze raz"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Wróć"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Przesuń 3 palcami w prawo lub w lewo na touchpadzie"</string>
diff --git a/packages/SystemUI/res/values-pt-rBR/strings.xml b/packages/SystemUI/res/values-pt-rBR/strings.xml
index 42ce3f4..fc7e2af 100644
--- a/packages/SystemUI/res/values-pt-rBR/strings.xml
+++ b/packages/SystemUI/res/values-pt-rBR/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth conectado."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Ícone de dispositivo Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Clique para configurar os detalhes do dispositivo"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Configurar detalhes do dispositivo"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Ver todos os dispositivos"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Parear novo dispositivo"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Porcentagem da bateria desconhecida."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Conectado a <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Conectado a <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Expandir grupo."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Abrir aplicativo."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Sem conexão."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Entrada"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Aparelhos auditivos"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Ativando…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Não é possível ajustar o brilho, porque ele está sendo controlado pelo app principal"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Giro automático"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Giro automático da tela"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Localização"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitarefas"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Usar a tela dividida com o app à direita"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Usar a tela dividida com o app à esquerda"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Usar tela cheia"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Usar a versão para computadores"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Mudar para o app à direita ou abaixo ao usar a tela dividida"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Mudar para o app à esquerda ou acima ao usar a tela dividida"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Com a tela dividida: substituir um app por outro"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Ver os apps recentes"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Mudar de app"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Concluído"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Avançar"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Tente de novo"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Voltar"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Deslize para a esquerda ou direita com 3 dedos no touchpad"</string>
diff --git a/packages/SystemUI/res/values-pt-rBR/tiles_states_strings.xml b/packages/SystemUI/res/values-pt-rBR/tiles_states_strings.xml
index b16d6f2..0233a36 100644
--- a/packages/SystemUI/res/values-pt-rBR/tiles_states_strings.xml
+++ b/packages/SystemUI/res/values-pt-rBR/tiles_states_strings.xml
@@ -58,8 +58,8 @@
   </string-array>
   <string-array name="tile_states_flashlight">
     <item msgid="3465257127433353857">"Indisponível"</item>
-    <item msgid="5044688398303285224">"Desativada"</item>
-    <item msgid="8527389108867454098">"Ativada"</item>
+    <item msgid="5044688398303285224">"Apagada"</item>
+    <item msgid="8527389108867454098">"Acesa"</item>
   </string-array>
   <string-array name="tile_states_rotation">
     <item msgid="4578491772376121579">"Indisponível"</item>
diff --git a/packages/SystemUI/res/values-pt-rPT/strings.xml b/packages/SystemUI/res/values-pt-rPT/strings.xml
index 37ec3da..14b85b7 100644
--- a/packages/SystemUI/res/values-pt-rPT/strings.xml
+++ b/packages/SystemUI/res/values-pt-rPT/strings.xml
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Ligado a <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Ligado a <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Expanda o grupo."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Abra a aplicação."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Sem ligação."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Entrada"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Aparelhos auditivos"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"A ativar..."</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Não é possível ajustar o brilho porque está a ser controlado pela app principal"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Rotação auto."</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Rodar o ecrã automaticamente"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Localização"</string>
@@ -986,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Mostrar ícones de notificações de prioridade baixa"</string>
     <string name="other" msgid="429768510980739978">"Outro"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"ativar/desativar o tamanho do mosaico"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"remover o cartão"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"adicionar o mosaico à última posição"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Mover cartão"</string>
@@ -1540,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Para ver as apps recentes, deslize rapidamente para cima e mantenha premido com 3 dedos no touchpad"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Para ver todas as suas apps, prima a tecla de ação no teclado"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Revisto"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Desbloqueie para ver"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Desbloqueie para ver o código"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Educação contextual"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Use o touchpad para retroceder"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Deslize rapidamente para a esquerda ou direita com 3 dedos. Toque para aprender mais gestos."</string>
diff --git a/packages/SystemUI/res/values-pt/strings.xml b/packages/SystemUI/res/values-pt/strings.xml
index 42ce3f4..fc7e2af 100644
--- a/packages/SystemUI/res/values-pt/strings.xml
+++ b/packages/SystemUI/res/values-pt/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth conectado."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Ícone de dispositivo Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Clique para configurar os detalhes do dispositivo"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Configurar detalhes do dispositivo"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Ver todos os dispositivos"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Parear novo dispositivo"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Porcentagem da bateria desconhecida."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Conectado a <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Conectado a <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Expandir grupo."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Abrir aplicativo."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Sem conexão."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Entrada"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Aparelhos auditivos"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Ativando…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Não é possível ajustar o brilho, porque ele está sendo controlado pelo app principal"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Giro automático"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Giro automático da tela"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Localização"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitarefas"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Usar a tela dividida com o app à direita"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Usar a tela dividida com o app à esquerda"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Usar tela cheia"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Usar a versão para computadores"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Mudar para o app à direita ou abaixo ao usar a tela dividida"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Mudar para o app à esquerda ou acima ao usar a tela dividida"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Com a tela dividida: substituir um app por outro"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Ver os apps recentes"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Mudar de app"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Concluído"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Avançar"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Tente de novo"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Voltar"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Deslize para a esquerda ou direita com 3 dedos no touchpad"</string>
diff --git a/packages/SystemUI/res/values-pt/tiles_states_strings.xml b/packages/SystemUI/res/values-pt/tiles_states_strings.xml
index b16d6f2..0233a36 100644
--- a/packages/SystemUI/res/values-pt/tiles_states_strings.xml
+++ b/packages/SystemUI/res/values-pt/tiles_states_strings.xml
@@ -58,8 +58,8 @@
   </string-array>
   <string-array name="tile_states_flashlight">
     <item msgid="3465257127433353857">"Indisponível"</item>
-    <item msgid="5044688398303285224">"Desativada"</item>
-    <item msgid="8527389108867454098">"Ativada"</item>
+    <item msgid="5044688398303285224">"Apagada"</item>
+    <item msgid="8527389108867454098">"Acesa"</item>
   </string-array>
   <string-array name="tile_states_rotation">
     <item msgid="4578491772376121579">"Indisponível"</item>
diff --git a/packages/SystemUI/res/values-ro/strings.xml b/packages/SystemUI/res/values-ro/strings.xml
index a23f95e..b577be5 100644
--- a/packages/SystemUI/res/values-ro/strings.xml
+++ b/packages/SystemUI/res/values-ro/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Conectat prin Bluetooth."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Pictograma de dispozitiv Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Dă clic pentru a configura detaliile dispozitivului"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Configurează detaliile dispozitivului"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Vezi toate dispozitivele"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Asociază un nou dispozitiv"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Procentajul bateriei este necunoscut."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Conectat la <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"S-a stabilit conexiunea la <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Extinde grupul."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Deschide aplicația."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Neconectat."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Intrare"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Aparate auditive"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Se activează..."</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Nu se poate ajusta luminozitatea deoarece este controlată de aplicația de top"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Rotire automată"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Rotirea automată a ecranului"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Locație"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitasking"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Folosește ecranul împărțit cu aplicația în dreapta"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Folosește ecranul împărțit cu aplicația în stânga"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Folosește ecranul complet"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Folosește afișarea pe desktop"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Treci la aplicația din dreapta sau de mai jos cu ecranul împărțit"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Treci la aplicația din stânga sau de mai sus cu ecranul împărțit"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"În modul ecran împărțit: înlocuiește o aplicație cu alta"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Vezi aplicațiile recente"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Comută între aplicații"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Gata"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Înainte"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Încearcă din nou!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Înapoi"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Glisează la stânga sau la dreapta cu trei degete pe touchpad"</string>
diff --git a/packages/SystemUI/res/values-ru/strings.xml b/packages/SystemUI/res/values-ru/strings.xml
index 1d40a6c..03b5423 100644
--- a/packages/SystemUI/res/values-ru/strings.xml
+++ b/packages/SystemUI/res/values-ru/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth-соединение установлено."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Значок устройства Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Нажмите, чтобы изменить информацию об устройстве"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"Настройка устройства \"<xliff:g id="DEVICE_NAME">%s</xliff:g>\""</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Показать все устройства"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Подключить устройство"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Уровень заряда батареи в процентах неизвестен."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g>: подключено."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Подключено к: <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Развернуть группу."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Открыть приложение."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Не подключено"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Роуминг"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Устройство ввода"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Слуховые аппараты"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Включение…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Невозможно изменить яркость,так как она регулируется общими настройками."</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Автоповорот"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Автоповорот экрана"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Геолокация"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Многозадачность"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Разделить экран и поместить открытое приложение справа"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Разделить экран и поместить открытое приложение слева"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Полноэкранный режим"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Версия для ПК"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Перейти к приложению справа или внизу на разделенном экране"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Перейти к приложению слева или вверху на разделенном экране"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"В режиме разделения экрана заменить одно приложение другим"</string>
@@ -991,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Показывать значки уведомлений с низким приоритетом"</string>
     <string name="other" msgid="429768510980739978">"Другое"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"изменить размер параметра"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"удалить панель"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"добавить параметр в конец"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Переместить панель"</string>
@@ -1507,8 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Просмотр недавних приложений"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Переход в другое приложение"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Готово"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Далее"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Попробуйте ещё раз"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Назад"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Проведите тремя пальцами влево или вправо по сенсорной панели."</string>
@@ -1546,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Чтобы увидеть недавние приложения, проведите по сенсорной панели тремя пальцами вверх и удерживайте."</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Чтобы открыть список всех своих приложений, нажмите клавишу действия."</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Скрыто"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Разблокируйте экран, чтобы посмотреть."</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Разблокируйте экран, чтобы посмотреть код."</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Контекстные подсказки"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Используйте сенсорную панель, чтобы возвращаться назад"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Для этого проведите тремя пальцами влево или вправо. Чтобы посмотреть другие жесты, нажмите здесь."</string>
diff --git a/packages/SystemUI/res/values-si/strings.xml b/packages/SystemUI/res/values-si/strings.xml
index 440b320..15441b5 100644
--- a/packages/SystemUI/res/values-si/strings.xml
+++ b/packages/SystemUI/res/values-si/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"බ්ලූටූත් සම්බන්ධිතයි."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"බ්ලූටූත් උපාංග නිරූපකය"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"උපාංග විස්තර වින්‍යාස කිරීමට ක්ලික් කරන්න"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. උපාංග විස්තර වින්‍යාස කරන්න"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"සියලු උපාංග බලන්න"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"නව උපාංගය යුගල කරන්න"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"බැටරි ප්‍රතිශතය නොදනී."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g> වෙත සම්බන්ධ කරන ලදි."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g> වෙත සම්බන්ධ විය."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"සමූහය දිගහැරීම"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"යෙදුම විවෘත කරන්න."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"සම්බන්ධ වී නැත."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"රෝමිං"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"ආදානය"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"ශ්‍රවණාධාරක"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"ක්‍රියාත්මක කරමින්…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"ඉහළ යෙදුම මඟින් එය පාලනය වන නිසාදීප්තිය ගැළපුම් කළ නොහැක"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"ස්වයංක්‍රීය කරකැවීම"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"ස්වයංක්‍රීයව-භ්‍රමණය වන තිරය"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"ස්ථානය"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"බහුකාර්ය"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"දකුණේ යෙදුම සමග බෙදීම් තිරය භාවිතා කරන්න"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"වම් පැත්තේ යෙදුම සමග බෙදීම් තිරය භාවිතා කරන්න"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"පූර්ණ තිරය භාවිතා කරන්න"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"ඩෙස්ක්ටොප් දසුන භාවිතා කරන්න"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"බෙදුම් තිරය භාවිත කරන අතරතුර දකුණේ හෝ පහළින් ඇති යෙදුමට මාරු වන්න"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"බෙදුම් තිරය භාවිත කරන අතරතුර වමේ හෝ ඉහළ ඇති යෙදුමට මාරු වන්න"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"බෙදුම් තිරය අතරතුර: යෙදුමක් එකකින් තවත් එකක් ප්‍රතිස්ථාපනය කරන්න"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"මෑත යෙදුම් බලන්න"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"යෙදුම් මාරු කරන්න"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"නිමයි"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"මීළඟ"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"නැවත උත්සාහ කරන්න!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"ආපස්සට යන්න"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"ඔබේ ස්පර්ශ පුවරුව මත ඇඟිලි තුනක් භාවිතයෙන් වමට හෝ දකුණට ස්වයිප් කරන්න"</string>
diff --git a/packages/SystemUI/res/values-sk/strings.xml b/packages/SystemUI/res/values-sk/strings.xml
index 274c46e..868e939 100644
--- a/packages/SystemUI/res/values-sk/strings.xml
+++ b/packages/SystemUI/res/values-sk/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth pripojené."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Ikona zariadenia s rozhraním Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Kliknutím nakonfigurujte podrobnosti o zariadení"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Nakonfigurujte podrobnosti o zariadení."</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Zobraziť všetky zariadenia"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Spárovať nové zariadenie"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Percento batérie nie je známe."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Pripojené k zariadeniu <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Pripojené k zariadeniu <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Rozbaliť skupinu"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Otvoriť aplikáciu"</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Nepripojené."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Vstup"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Načúvadlá"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Zapína sa…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Jas sa nedá upraviť, pretože ho ovláda horná aplikácia"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Automatické otáčanie"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Automatické otáčanie obrazovky"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Poloha"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multitasking"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Rozdelenie obrazovky, aktuálna aplikácia vpravo"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Rozdelenie obrazovky, aktuálna aplikácia vľavo"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Používať celú obrazovku"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Používať zobrazenie v počítači"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Prechod na aplikáciu vpravo alebo dole pri rozdelenej obrazovke"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Prechod na aplikáciu vľavo alebo hore pri rozdelenej obrazovke"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Počas rozdelenej obrazovky: nahradenie aplikácie inou"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Zobraziť nedávne aplikácie"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Prepínanie aplikácií"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Hotovo"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Ďalej"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Skúste to znova."</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Späť"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Potiahnite troma prstami na touchpade doľava alebo doprava"</string>
diff --git a/packages/SystemUI/res/values-sl/strings.xml b/packages/SystemUI/res/values-sl/strings.xml
index eb1219a..e6d133e 100644
--- a/packages/SystemUI/res/values-sl/strings.xml
+++ b/packages/SystemUI/res/values-sl/strings.xml
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Povezava vzpostavljena z: <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Vzpostavljena povezava: <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Razširitev skupine."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Odpiranje aplikacije."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Ni povezan."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Gostovanje"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Vhodna naprava"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Slušni aparati"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Vklapljanje …"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Svetlosti ni mogoče prilagoditi, ker jo nadzoruje aplikacija na vrhu"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Samodejno sukanje"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Samodejno sukanje zaslona"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Lokacija"</string>
diff --git a/packages/SystemUI/res/values-sq/strings.xml b/packages/SystemUI/res/values-sq/strings.xml
index ea1f3aaf..724c6c0 100644
--- a/packages/SystemUI/res/values-sq/strings.xml
+++ b/packages/SystemUI/res/values-sq/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Pajisja është lidhur me \"bluetooth\"."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Ikona e pajisjes me Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Kliko për të konfiguruar detajet e pajisjes"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Konfiguro detajet e pajisjes"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Shiko të gjitha pajisjet"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Çifto pajisje të re"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Përqindja e baterisë e panjohur."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Lidhur me <xliff:g id="BLUETOOTH">%s</xliff:g>"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Është lidhur me <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Zgjero grupin."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Hap aplikacionin."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Nuk është i lidhur."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Hyrja"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Aparatet e dëgjimit"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Po aktivizohet…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Ndriçimi nuk mund të rregullohet pasi po kontrollohet nga aplikacioni i sipërm"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Rrotullim automatik"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Rrotullimi automatik i ekranit"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Vendndodhja"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Kryerja e shumë detyrave"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Përdor ekranin e ndarë me aplikacionin në të djathtë"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Përdor ekranin e ndarë me aplikacionin në të majtë"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Përdor ekranin e plotë"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Përdor pamjen e desktopit"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Kalo tek aplikacioni djathtas ose poshtë kur përdor ekranin e ndarë"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Kalo tek aplikacioni në të majtë ose sipër kur përdor ekranin e ndarë"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Gjatë ekranit të ndarë: zëvendëso një aplikacion me një tjetër"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Shiko aplikacionet e fundit"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Ndërro aplikacionet"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"U krye"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Para"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Provo përsëri!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Kthehu prapa"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Rrëshqit shpejt majtas ose djathtas duke përdorur tre gishta në bllokun me prekje"</string>
diff --git a/packages/SystemUI/res/values-sq/tiles_states_strings.xml b/packages/SystemUI/res/values-sq/tiles_states_strings.xml
index 1b1a62f..7ee5631 100644
--- a/packages/SystemUI/res/values-sq/tiles_states_strings.xml
+++ b/packages/SystemUI/res/values-sq/tiles_states_strings.xml
@@ -196,7 +196,9 @@
     <item msgid="6419996398343291862">"Joaktive"</item>
     <item msgid="5908720590832378783">"Aktive"</item>
   </string-array>
-    <!-- no translation found for tile_states_desktopeffects:0 (6253480000354287321) -->
-    <!-- no translation found for tile_states_desktopeffects:1 (6641673879029894995) -->
-    <!-- no translation found for tile_states_desktopeffects:2 (5806682401126108403) -->
+  <string-array name="tile_states_desktopeffects">
+    <item msgid="6253480000354287321">"Nuk ofrohet"</item>
+    <item msgid="6641673879029894995">"Joaktiv"</item>
+    <item msgid="5806682401126108403">"Aktiv"</item>
+  </string-array>
 </resources>
diff --git a/packages/SystemUI/res/values-sr/strings.xml b/packages/SystemUI/res/values-sr/strings.xml
index eac0712..e6471eb 100644
--- a/packages/SystemUI/res/values-sr/strings.xml
+++ b/packages/SystemUI/res/values-sr/strings.xml
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Повезани сте са <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Повезани смо са уређајем <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Проширите групу."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Отворите апликацију."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Није повезано."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Роминг"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Унос"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Слушни апарати"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Укључује се..."</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Не можете да прилагодите осветљеност јер је контролише апликација у врху"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Аутоматска ротација"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Аутоматско ротирање екрана"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Локација"</string>
@@ -986,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Прикажи иконе обавештења ниског приоритета"</string>
     <string name="other" msgid="429768510980739978">"Друго"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"укључивање или искључивање величине плочице"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"уклонили плочицу"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"додали плочицу на последњу позицију"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Преместите плочицу"</string>
@@ -1540,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Да бисте прегледали недавне апликације, превуците нагоре и задржите са три прста на тачпеду"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Да бисте погледали све апликације, притисните тастер радњи на тастатури"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Редиговано"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Откључајте за приказ"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Откључајте да бисте видели кôд"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Контекстуално образовање"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Користите тачпед за враћање назад"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Превуците улево или удесно са три прста. Додирните да бисте видели више покрета."</string>
diff --git a/packages/SystemUI/res/values-sv/strings.xml b/packages/SystemUI/res/values-sv/strings.xml
index dfb4e005..9f2a208 100644
--- a/packages/SystemUI/res/values-sv/strings.xml
+++ b/packages/SystemUI/res/values-sv/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth ansluten."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Enhetsikon för Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Klicka för att konfigurera enhetsinformation"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Konfigurera enhetsinformation"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Se alla enheter"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Parkoppla en ny enhet"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Okänd batterinivå."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Ansluten till <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Ansluten till <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Utöka gruppen."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Öppna appen."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Inte ansluten."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Ingång"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Hörapparater"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Aktiverar …"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Det går inte att justera ljusstyrkan eftersom den styrs av den översta appen"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Rotera automatiskt"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Rotera skärmen automatiskt"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Plats"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multikörning"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Använd delad skärm med appen till höger"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Använd delad skärm med appen till vänster"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Använd helskärm"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Använd datorvyn"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Byt till appen till höger eller nedanför när du använder delad skärm"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Byt till appen till vänster eller ovanför när du använder delad skärm"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Med delad skärm: ersätt en app med en annan"</string>
@@ -991,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Visa ikoner för aviseringar med låg prioritet"</string>
     <string name="other" msgid="429768510980739978">"Annat"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"växla rutstorlek"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"ta bort ruta"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"lägg till en ruta på den sista platsen"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Flytta ruta"</string>
@@ -1507,8 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Se de senaste apparna"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Byta app"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Klar"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Nästa"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Försök igen!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Tillbaka"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Svep åt vänster eller höger med tre fingrar på styrplattan"</string>
@@ -1546,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Svep uppåt på styrplattan med tre fingrar och håll kvar för att se nyligen använda appar"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Tryck på åtgärdstangenten på tangentbordet för att se alla appar"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Anonymiserad"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"Lås upp för att visa"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"Lås upp för att visa koden"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Kontextuell utbildning"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Använd styrplattan för att gå tillbaka"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Svep åt vänster eller höger med tre fingrar. Tryck för att lära dig fler rörelser."</string>
diff --git a/packages/SystemUI/res/values-sw/strings.xml b/packages/SystemUI/res/values-sw/strings.xml
index c096e41..6222a76 100644
--- a/packages/SystemUI/res/values-sw/strings.xml
+++ b/packages/SystemUI/res/values-sw/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth imeunganishwa."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Aikoni ya Kifaa chenye Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Bofya ili uweke mipangilio ya maelezo ya kifaa"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Weka mipangilio ya maelezo kwenye kifaa"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Ona vifaa vyote"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Unganisha kifaa kipya"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Asilimia ya betri haijulikani."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Imeunganishwa kwenye <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Imeunganishwa kwenye <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Panua kikundi."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Fungua programu."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Haijaunganishwa."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Mitandao ya ng\'ambo"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Vifaa vya kuingiza sauti"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Visaidizi vya kusikia"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Inawasha..."</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Imeshindwa kurekebisha mwangaza kwa sababu inadhibitiwa na programu inayotumika"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Zungusha kiotomatiki"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Skrini ijizungushe kiotomatiki"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Mahali"</string>
@@ -586,7 +588,7 @@
     <string name="media_projection_entry_cast_permission_dialog_warning_entire_screen" msgid="4040447861037324017">"Unapotuma maudhui katika skrini yako nzima, chochote kilicho kwenye skrini yako kitaonekana. Kwa hivyo kuwa mwangalifu na vitu kama vile manenosiri, maelezo ya malipo, ujumbe, picha, sauti na video."</string>
     <string name="media_projection_entry_cast_permission_dialog_warning_single_app" msgid="7487834861348460736">"Unapotuma maudhui ya programu moja, chochote kinachoonekana au kucheza katika programu hiyo kitaonekana. Kwa hivyo kuwa mwangalifu na vitu kama vile manenosiri, maelezo ya malipo, ujumbe, picha, sauti na video."</string>
     <string name="media_projection_entry_cast_permission_dialog_continue_entire_screen" msgid="3261124185304676483">"Tuma maudhui yaliyo kwenye skrini"</string>
-    <string name="media_projection_entry_cast_app_selector_title" msgid="6323062146661922387">"Kuchagua programu utakayotumia kutuma maudhui"</string>
+    <string name="media_projection_entry_cast_app_selector_title" msgid="6323062146661922387">"Chagua programu ya kutuma"</string>
     <string name="media_projection_entry_generic_permission_dialog_title" msgid="4519802931547483628">"Ungependa kuanza kushiriki?"</string>
     <string name="media_projection_entry_generic_permission_dialog_warning_entire_screen" msgid="5407906851409410209">"Unaposhiriki, kurekodi au kutuma, Android inaweza kufikia kitu chochote kitakachoonekana kwenye skrini yako au kuchezwa kwenye kifaa chako. Kwa hivyo kuwa mwangalifu na vitu kama vile manenosiri, maelezo ya malipo, ujumbe, picha na sauti na video."</string>
     <string name="media_projection_entry_generic_permission_dialog_warning_single_app" msgid="3454859977888159495">"Unaposhiriki, kurekodi au kutuma programu, Android inaweza kufikia kitu chochote kitakachoonekana au kuchezwa kwenye programu hiyo. Kwa hivyo kuwa mwangalifu na vitu kama vile manenosiri, maelezo ya malipo, ujumbe, picha na sauti na video."</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Majukumu mengi"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Tumia hali ya kugawa skrini na programu ya sasa iwe upande wa kulia"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Tumia hali ya kugawa skrini na programu ya sasa iwe upande wa kushoto"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Tumia skrini nzima"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Tumia mwonekano wa kompyuta"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Badilisha ili uende kwenye programu iliyo kulia au chini unapotumia hali ya kugawa skrini"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Badilisha uende kwenye programu iliyo kushoto au juu unapotumia hali ya kugawa skrini"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Ukigawanya skrini: badilisha kutoka programu moja hadi nyingine"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Angalia programu za hivi majuzi"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Badilisha programu"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Nimemaliza"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Endelea"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Jaribu tena!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Rudi nyuma"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Telezesha vidole vitatu kushoto au kulia kwenye padi yako ya kugusa"</string>
diff --git a/packages/SystemUI/res/values-sw/tiles_states_strings.xml b/packages/SystemUI/res/values-sw/tiles_states_strings.xml
index 4070260..fb6e38f 100644
--- a/packages/SystemUI/res/values-sw/tiles_states_strings.xml
+++ b/packages/SystemUI/res/values-sw/tiles_states_strings.xml
@@ -58,7 +58,7 @@
   </string-array>
   <string-array name="tile_states_flashlight">
     <item msgid="3465257127433353857">"Hakipatikani"</item>
-    <item msgid="5044688398303285224">"Kimezimwa"</item>
+    <item msgid="5044688398303285224">"Imezimwa"</item>
     <item msgid="8527389108867454098">"Kimewashwa"</item>
   </string-array>
   <string-array name="tile_states_rotation">
@@ -73,7 +73,7 @@
   </string-array>
   <string-array name="tile_states_airplane">
     <item msgid="1985366811411407764">"Hakipatikani"</item>
-    <item msgid="4801037224991420996">"Kimezimwa"</item>
+    <item msgid="4801037224991420996">"Imezimwa"</item>
     <item msgid="1982293347302546665">"Kimewashwa"</item>
   </string-array>
   <string-array name="tile_states_location">
diff --git a/packages/SystemUI/res/values-sw600dp-land/bools.xml b/packages/SystemUI/res/values-sw600dp-land/bools.xml
index 36926a2..6d31449 100644
--- a/packages/SystemUI/res/values-sw600dp-land/bools.xml
+++ b/packages/SystemUI/res/values-sw600dp-land/bools.xml
@@ -22,4 +22,6 @@
 
     <!--  True when small screen (<sw600dp) is landscape. -->
     <bool name="is_small_screen_landscape">false</bool>
+
+    <bool name="volume_dialog_ringer_drawer_should_open_to_the_side">false</bool>
 </resources>
diff --git a/packages/SystemUI/res/values-ta/strings.xml b/packages/SystemUI/res/values-ta/strings.xml
index 342798f..0bf5f22 100644
--- a/packages/SystemUI/res/values-ta/strings.xml
+++ b/packages/SystemUI/res/values-ta/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"புளூடூத் இணைக்கப்பட்டது."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"புளூடூத் சாதன ஐகான்"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"சாதன விவரத்தை உள்ளமைக்க கிளிக் செய்யலாம்"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. சாதன விவரத்தை உள்ளமைக்கும்."</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"அனைத்துச் சாதனங்களையும் காட்டும்"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"புதிய சாதனத்தை இணைக்கும்"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"பேட்டரி சதவீதம் தெரியவில்லை."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g>க்கு இணைக்கப்பட்டது."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g> உடன் இணைக்கப்பட்டுள்ளது."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"குழுவை விரிவாக்கும்."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"ஆப்ஸைத் திறக்கும்."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"இணைக்கப்படவில்லை."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"ரோமிங்"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"உள்ளீடு"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"செவித்துணைக் கருவி"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"ஆன் செய்கிறது…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"சிறந்த ஆப்ஸால் ஒளிர்வு கட்டுப்படுத்தப்படுவதால் இதைச் சரிசெய்ய முடியவில்லை"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"தானாகச் சுழற்று"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"திரையைத் தானாகச் சுழற்று"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"இருப்பிடம்"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"பல வேலைகளைச் செய்தல்"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"ஆப்ஸ் வலதுபுறம் வரும்படி திரைப் பிரிப்பைப் பயன்படுத்துதல்"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"ஆப்ஸ் இடதுபுறம் வரும்படி திரைப் பிரிப்பைப் பயன்படுத்துதல்"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"முழுத்திரையைப் பயன்படுத்து"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"டெஸ்க்டாப் காட்சியைப் பயன்படுத்து"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"திரைப் பிரிப்பைப் பயன்படுத்தும்போது வலது/கீழ் உள்ள ஆப்ஸுக்கு மாறுதல்"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"திரைப் பிரிப்பைப் பயன்படுத்தும்போது இடது/மேலே உள்ள ஆப்ஸுக்கு மாறுதல்"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"திரைப் பிரிப்பின்போது: ஓர் ஆப்ஸுக்குப் பதிலாக மற்றொன்றை மாற்றுதல்"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"சமீபத்திய ஆப்ஸைக் காட்டுதல்"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"ஆப்ஸுக்கிடையில் மாறுங்கள்"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"முடிந்தது"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"அடுத்து"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"மீண்டும் முயலவும்!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"பின்செல்"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"உங்கள் டச்பேடில் மூன்று விரல்களால் இடது அல்லது வலதுபுறம் ஸ்வைப் செய்யவும்"</string>
diff --git a/packages/SystemUI/res/values-te/strings.xml b/packages/SystemUI/res/values-te/strings.xml
index 6f4619f..2042ead 100644
--- a/packages/SystemUI/res/values-te/strings.xml
+++ b/packages/SystemUI/res/values-te/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"బ్లూటూత్ కనెక్ట్ చేయబడింది."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"బ్లూటూత్ పరికర చిహ్నం"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"పరికర వివరాలను కాన్ఫిగర్ చేయడానికి క్లిక్ చేయండి"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. పరికర వివరాలను కాన్ఫిగర్ చేయండి"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"అన్ని పరికరాలను చూడండి"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"కొత్త పరికరాన్ని పెయిర్ చేయండి"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"బ్యాటరీ శాతం తెలియదు."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g>కి కనెక్ట్ చేయబడింది."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g>కి కనెక్ట్ చేయబడింది."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"గ్రూప్‌ను విస్తరించండి."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"యాప్‌ను తెరవండి."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"కనెక్ట్ చేయబడలేదు."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"రోమింగ్"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"ఇన్‌పుట్"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"వినికిడి పరికరాలు"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"ఆన్ చేస్తోంది…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"ఇది టాప్ యాప్ ద్వారా కంట్రోల్ చేయబడుతున్నందున బ్రైట్‌నెస్‌ను సర్దుబాటు చేయడం సాధ్యం కాదు"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"ఆటో-రొటేట్‌"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"స్క్రీన్ ఆటో-రొటేట్‌"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"లొకేషన్"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"మల్టీ-టాస్కింగ్"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"కుడి వైపు ప్రస్తుత యాప్‌తో స్ప్లిట్ స్క్రీన్‌ను ఉపయోగించండి"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"ఎడమ వైపు ప్రస్తుత యాప్‌తో స్ప్లిట్ స్క్రీన్‌ను ఉపయోగించండి"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"ఫుల్ స్క్రీన్‌ను ఉపయోగించండి"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"డెస్క్‌టాప్ వీక్షణను ఉపయోగించండి"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"స్ప్లిట్ స్క్రీన్ ఉపయోగిస్తున్నప్పుడు కుడి లేదా కింద యాప్‌నకు మారండి"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"స్ప్లిట్ స్క్రీన్ ఉపయోగిస్తున్నప్పుడు ఎడమ లేదా పైన యాప్‌నకు మారండి"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"స్ప్లిట్ స్క్రీన్ సమయంలో: ఒక దాన్నుండి మరో దానికి యాప్ రీప్లేస్ చేయండి"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"ఇటీవలి యాప్‌లను చూడండి"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"యాప్‌ల మధ్య మారండి"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"పూర్తయింది"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"తర్వాత"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"మళ్లీ ట్రై చేయండి!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"వెనుకకు"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"మీ టచ్‌ప్యాడ్‌లో మూడు వేళ్లను ఉపయోగించి ఎడమ వైపునకు లేదా కుడి వైపునకు స్వైప్ చేయండి"</string>
diff --git a/packages/SystemUI/res/values-th/strings.xml b/packages/SystemUI/res/values-th/strings.xml
index 0b314f4..9ac9d01b 100644
--- a/packages/SystemUI/res/values-th/strings.xml
+++ b/packages/SystemUI/res/values-th/strings.xml
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"เชื่อมต่อกับ <xliff:g id="BLUETOOTH">%s</xliff:g> แล้ว"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"เชื่อมต่อกับ <xliff:g id="CAST">%s</xliff:g>"</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"ขยายกลุ่ม"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"เปิดแอปพลิเคชัน"</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"ไม่ได้เชื่อมต่อ"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"โรมมิ่ง"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"อินพุต"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"เครื่องช่วยฟัง"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"กำลังเปิด..."</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"ปรับความสว่างไม่ได้เนื่องจากควบคุมโดยแอปที่อยู่ด้านบน"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"หมุนอัตโนมัติ"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"หมุนหน้าจออัตโนมัติ"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"ตำแหน่ง"</string>
diff --git a/packages/SystemUI/res/values-tl/strings.xml b/packages/SystemUI/res/values-tl/strings.xml
index f5a7fde..516386b 100644
--- a/packages/SystemUI/res/values-tl/strings.xml
+++ b/packages/SystemUI/res/values-tl/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Nakakonekta ang Bluetooth."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Icon ng Bluetooth device"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"I-click para i-configure ang detalye ng device"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. I-configure ang detalye ng device"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Tingnan ang lahat ng device"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Magpares ng bagong device"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Hindi alam ang porsyento ng baterya."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Nakakonekta sa <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Nakakonekta sa <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"I-expand ang grupo."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Buksan ang application."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Hindi nakakonekta."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Roaming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Input"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Mga hearing aid"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Ino-on…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Hindi ma-adjust ang liwanag dahil kinokontrol ito ng nangingibabaw na app"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"I-auto rotate"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Awtomatikong i-rotate ang screen"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Lokasyon"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Pag-multitask"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Gumamit ng split screen nang nasa kanan ang app"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Gumamit ng split screen nang nasa kaliwa ang app"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Gamitin ang full screen"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Gamitin ang desktop view"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Lumipat sa app sa kanan o ibaba habang ginagamit ang split screen"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Lumipat sa app sa kaliwa o itaas habang ginagamit ang split screen"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Habang nasa split screen: magpalit-palit ng app"</string>
@@ -991,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"Ipakita ang mga icon ng notification na may mababang priority"</string>
     <string name="other" msgid="429768510980739978">"Iba pa"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"i-toggle ang laki ng tile"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"alisin ang tile"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"magdagdag ng tile sa huling posisyon"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"Ilipat ang tile"</string>
@@ -1507,8 +1506,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Tingnan ang mga kamakailang app"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Lumipat ng app"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Tapos na"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Susunod"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Subukan ulit!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Bumalik"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Mag-swipe pakaliwa o pakanan gamit ang tatlong daliri sa iyong touchpad"</string>
@@ -1546,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"Para tingnan ang kamakailang app, mag-swipe pataas at i-hold gamit ang tatlong daliri sa touchpad"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"Para tingnan ang lahat ng iyong app, pindutin ang action key sa keyboard mo"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"Na-redact"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"I-unlock para tingnan"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"I-unlock para tingnan ang code"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"Edukasyon ayon sa konteksto"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"Gamitin ang iyong touchpad para bumalik"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"Mag-swipe pakaliwa o pakanan gamit ang tatlong daliri. I-tap para matuto pa tungkol sa mga galaw."</string>
diff --git a/packages/SystemUI/res/values-tr/strings.xml b/packages/SystemUI/res/values-tr/strings.xml
index dca7381..b643203 100644
--- a/packages/SystemUI/res/values-tr/strings.xml
+++ b/packages/SystemUI/res/values-tr/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth bağlandı."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Bluetooth cihaz simgesi"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Cihaz ayrıntılarını yapılandırmak için tıklayın"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Cihaz ayrıntılarını yapılandırın"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Tüm cihazları görün"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Yeni cihaz eşleme"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Pil yüzdesi bilinmiyor."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g> ile bağlı."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g> bağlantısı kuruldu."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Grubu genişlet."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Uygulama aç."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Bağlanmadı."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Dolaşım"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Giriş"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"İşitme cihazları"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Açılıyor…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Parlaklık ayarlanamıyor, çünkü bu özellik en üstteki uygulama tarafından kontrol ediliyor"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Otomatik döndür"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Ekranı otomatik döndür"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Konum"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Çoklu görev"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Sağdaki uygulamayla birlikte bölünmüş ekranı kullan"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Soldaki uygulamayla birlikte bölünmüş ekranı kullan"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Tam ekran kullanın"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Masaüstü görünümünü kullanın"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Bölünmüş ekran kullanırken sağdaki veya alttaki uygulamaya geçiş yap"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Bölünmüş ekran kullanırken soldaki veya üstteki uygulamaya geçiş yapın"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Bölünmüş ekran etkinken: Bir uygulamayı başkasıyla değiştir"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Son uygulamaları görüntüle"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Uygulamalar arasında geçiş yapma"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Bitti"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Sonraki"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Tekrar deneyin."</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Geri dön"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Dokunmatik alanda üç parmağınızla sola veya sağa kaydırın"</string>
diff --git a/packages/SystemUI/res/values-uk/strings.xml b/packages/SystemUI/res/values-uk/strings.xml
index 4f5c181..db3c02d 100644
--- a/packages/SystemUI/res/values-uk/strings.xml
+++ b/packages/SystemUI/res/values-uk/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth під’єднано."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Значок пристрою з Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Натисніть, щоб змінити налаштування пристрою"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Змінити налаштування пристрою"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Переглянути всі пристрої"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Підключити новий пристрій"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Відсоток заряду акумулятора невідомий."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Підключено до <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Під’єднано до пристрою <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Розгорнути групу"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Відкрити додаток"</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Не з’єднано."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Роумінг"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Джерело сигналу"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Слухові апарати"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Увімкнення…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Не вдається змінити яскравість, оскільки нею керує основний додаток"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Автообертання"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Автоматично обертати екран"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Геодані"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Багатозадачність"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Розділити екран і показувати додаток праворуч"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Розділити екран і показувати додаток ліворуч"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Використовувати повноекранний режим"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Використовувати версію для комп’ютера"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Перейти до додатка праворуч або внизу на розділеному екрані"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Під час розділення екрана перемикатися на додаток ліворуч або вгорі"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Під час розділення екрана: замінити додаток іншим"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Переглянути нещодавні додатки"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Перемикання між додатками"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Готово"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Далі"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Спробуйте ще"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Назад"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Проведіть трьома пальцями вліво чи вправо по сенсорній панелі"</string>
diff --git a/packages/SystemUI/res/values-ur/strings.xml b/packages/SystemUI/res/values-ur/strings.xml
index 7cdb223..ffc3f5e 100644
--- a/packages/SystemUI/res/values-ur/strings.xml
+++ b/packages/SystemUI/res/values-ur/strings.xml
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"<xliff:g id="BLUETOOTH">%s</xliff:g> سے منسلک ہیں۔"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"<xliff:g id="CAST">%s</xliff:g> سے منسلک ہے۔"</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"گروپ کو پھیلائیں۔"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"ایپلیکیشن کھولیں۔"</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"مربوط نہیں ہے۔"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"رومنگ"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"ان پٹ"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"سماعتی آلات"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"آن ہو رہا ہے…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"چمک کو ایڈجسٹ نہیں کیا جا سکتا کیونکہ اسے سرفہرست ایپ کے ذریعے کنٹرول کیا جا رہا ہے"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"خود کار طور پر گھمائیں"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"اسکرین کو خود کار طور پر گھمائیں"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"مقام"</string>
@@ -986,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"کم ترجیحی اطلاع کے آئیکنز دکھائیں"</string>
     <string name="other" msgid="429768510980739978">"دیگر"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"ٹائل کے سائز کو ٹوگل کریں"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"ٹائل ہٹائیں"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"ٹائل کو آخری پوزیشن پر شامل کریں"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"ٹائل منتقل کریں"</string>
@@ -1540,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"حالیہ ایپس دیکھنے کے لیے، ٹچ پیڈ پر تین انگلیوں سے اوپر سوائپ کریں اور دبائے رکھیں"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"اپنی سبھی ایپس دیکھنے کے لیے، اپنے کی بورڈ پر ایکشن کلید دبائیں"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"چھپانے کیلئے تبدیل کردہ"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"دیکھنے کے لیے غیر مقفل کریں"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"کوڈ دیکھنے کے لیے غیر مقفل کریں"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"سیاق و سباق کی تعلیم"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"واپس جانے کے لیے اپنے ٹچ پیڈ کا استعمال کریں"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"تین انگلیوں سے دائیں یا بائیں طرف سوائپ کریں۔ مزید اشارے جاننے کے لیے تھپتھپائیں۔"</string>
diff --git a/packages/SystemUI/res/values-uz/strings.xml b/packages/SystemUI/res/values-uz/strings.xml
index 037f83d..e325cf3 100644
--- a/packages/SystemUI/res/values-uz/strings.xml
+++ b/packages/SystemUI/res/values-uz/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth ulandi."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Bluetooth qurilma belgisi"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Qurilma haqida tafsilotlarni oʻzgartirish uchun bosing"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Qurilma tafsilotlarini sozlash"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Hamma qurilmalar"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Yangi qurilmani ulash"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Batareya quvvati foizi nomaʼlum."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Ulangan: <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Bunga ulangan: <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Guruhni yoying."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Ilovani oching."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Ulanmagan."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Rouming"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Kirish"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Eshitish moslamalari"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Yoqilmoqda…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Yorqinlik umumiy sozlamalar orqali boshqariladi.Uni moslash imkonsiz"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Avto-burilish"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Ekranning avtomatik burilishi"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Joylashuv"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Multi-vazifalilik"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Ekranni ajratib, joriy ilovani oʻngga joylash"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Ekranni ajratib, joriy ilovani chapga joylash"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Butun ekrandan foydalanish"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Desktop versiyadan foydalanish"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Ajratilgan ekranda oʻngdagi yoki pastdagi ilovaga almashish"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Ajratilgan ekranda chapdagi yoki yuqoridagi ilovaga almashish"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Ajratilgan rejimda ilovalarni oʻzaro almashtirish"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Oxirgi ilovalarni koʻrish"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Ilovalarni almashtirish"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Tayyor"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Keyingisi"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Qayta urining!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Orqaga qaytish"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Sensorli panelda uchta barmoq bilan chapga yoki oʻngga suring"</string>
diff --git a/packages/SystemUI/res/values-vi/strings.xml b/packages/SystemUI/res/values-vi/strings.xml
index 59e81bb..f64f084 100644
--- a/packages/SystemUI/res/values-vi/strings.xml
+++ b/packages/SystemUI/res/values-vi/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Đã kết nối bluetooth."</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Biểu tượng thiết bị Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Nhấp để định cấu hình thông tin thiết bị"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>. Thông tin chi tiết về định cấu hình thiết bị"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Xem tất cả thiết bị"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Ghép nối thiết bị mới"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Tỷ lệ phần trăm pin không xác định."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Đã kết nối với <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Đã kết nối với <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Mở rộng nhóm."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Mở ứng dụng."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Chưa được kết nối."</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Chuyển vùng"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Thiết bị đầu vào"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Thiết bị trợ thính"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Đang bật…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Không điều chỉnh được độ sáng vì độ sáng đang được ứng dụng trên cùng điều khiển"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Tự động xoay"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Tự động xoay màn hình"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Vị trí"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Đa nhiệm"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Dùng tính năng chia đôi màn hình với ứng dụng ở bên phải"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Dùng tính năng chia đôi màn hình với ứng dụng ở bên trái"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Dùng chế độ toàn màn hình"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Dùng chế độ xem trên máy tính để bàn"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Chuyển sang ứng dụng bên phải hoặc ở dưới khi đang chia đôi màn hình"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Chuyển sang ứng dụng bên trái hoặc ở trên khi đang chia đôi màn hình"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Trong chế độ chia đôi màn hình: thay một ứng dụng bằng ứng dụng khác"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Xem các ứng dụng gần đây"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Chuyển đổi ứng dụng"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Xong"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Tiếp theo"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Hãy thử lại!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Quay lại"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Dùng 3 ngón tay vuốt sang trái hoặc sang phải trên bàn di chuột"</string>
diff --git a/packages/SystemUI/res/values-zh-rCN/strings.xml b/packages/SystemUI/res/values-zh-rCN/strings.xml
index 03c4cdf..a355a67 100644
--- a/packages/SystemUI/res/values-zh-rCN/strings.xml
+++ b/packages/SystemUI/res/values-zh-rCN/strings.xml
@@ -245,16 +245,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"蓝牙已连接。"</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"蓝牙设备图标"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"点击以配置设备详情"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"<xliff:g id="DEVICE_NAME">%s</xliff:g>。请配置设备详情"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"查看所有设备"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"与新设备配对"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"电池电量百分比未知。"</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"已连接到<xliff:g id="BLUETOOTH">%s</xliff:g>。"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"已连接到 <xliff:g id="CAST">%s</xliff:g>。"</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"展开群组。"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"打开应用。"</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"未连接。"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"漫游"</string>
@@ -332,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"输入"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"助听器"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"正在开启…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"亮度无法调整，因为它正在被顶层应用控制"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"自动屏幕旋转"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"自动旋转屏幕"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"位置信息"</string>
@@ -901,10 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"多任务处理"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"使用分屏模式，并将应用置于右侧"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"使用分屏模式，并将应用置于左侧"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"使用全屏"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"使用桌面版视图"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"使用分屏模式时，切换到右侧或下方的应用"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"使用分屏模式时，切换到左侧或上方的应用"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"在分屏期间：将一个应用替换为另一个应用"</string>
@@ -1507,8 +1507,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"查看最近用过的应用"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"切换应用"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"完成"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"继续"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"再试一次！"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"返回"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"在触控板上用三根手指向左或向右滑动"</string>
diff --git a/packages/SystemUI/res/values-zh-rHK/strings.xml b/packages/SystemUI/res/values-zh-rHK/strings.xml
index 472f531..c5a81fb2 100644
--- a/packages/SystemUI/res/values-zh-rHK/strings.xml
+++ b/packages/SystemUI/res/values-zh-rHK/strings.xml
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"已連線至<xliff:g id="BLUETOOTH">%s</xliff:g>。"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"已連接至 <xliff:g id="CAST">%s</xliff:g>。"</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"展開群組。"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"開啟應用程式。"</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"未連線。"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"漫遊"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"輸入"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"助聽器"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"正在開啟…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"無法調整亮度，因為目前是由上層應用程式控制亮度"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"自動旋轉"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"自動旋轉螢幕"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"位置"</string>
@@ -337,7 +342,7 @@
     <string name="quick_settings_camera_label" msgid="5612076679385269339">"相機存取權"</string>
     <string name="quick_settings_mic_label" msgid="8392773746295266375">"麥克風存取權"</string>
     <string name="quick_settings_camera_mic_available" msgid="1453719768420394314">"允許"</string>
-    <string name="quick_settings_camera_mic_blocked" msgid="4710884905006788281">"已禁用"</string>
+    <string name="quick_settings_camera_mic_blocked" msgid="4710884905006788281">"已封鎖"</string>
     <string name="quick_settings_media_device_label" msgid="8034019242363789941">"媒體裝置"</string>
     <string name="quick_settings_user_title" msgid="8673045967216204537">"使用者"</string>
     <string name="quick_settings_wifi_label" msgid="2879507532983487244">"Wi-Fi"</string>
@@ -898,8 +903,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"多工處理"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"使用分割螢幕，並在右側顯示應用程式"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"使用分割螢幕，並在左側顯示應用程式"</string>
-    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"使用全螢幕模式"</string>
-    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"使用電腦檢視畫面"</string>
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"使用全螢幕"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"使用桌面電腦檢視模式"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"使用分割螢幕時，切換至右邊或下方的應用程式"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"使用分割螢幕時，切換至左邊或上方的應用程式"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"使用分割螢幕期間：更換應用程式"</string>
@@ -986,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"顯示低優先順序通知圖示"</string>
     <string name="other" msgid="429768510980739978">"其他"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"切換圖塊大小"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"移除圖塊"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"加圖塊去上一個位置"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"移動圖塊"</string>
@@ -1540,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"如要查看最近使用的應用程式，請用三隻手指在觸控板上向上滑動並按住"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"如要查看所有應用程式，請在鍵盤上按下快捷操作鍵"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"已剔除"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"解鎖即可查看"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"解鎖即可查看驗證碼"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"內容教學"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"使用觸控板返回"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"用三隻手指向左或向右滑動。輕按即可瞭解更多手勢。"</string>
diff --git a/packages/SystemUI/res/values-zh-rTW/strings.xml b/packages/SystemUI/res/values-zh-rTW/strings.xml
index a56fc03..24a15a1 100644
--- a/packages/SystemUI/res/values-zh-rTW/strings.xml
+++ b/packages/SystemUI/res/values-zh-rTW/strings.xml
@@ -252,6 +252,10 @@
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"已連線至<xliff:g id="BLUETOOTH">%s</xliff:g>。"</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"已連線至 <xliff:g id="CAST">%s</xliff:g>。"</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"展開群組。"</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"開啟應用程式。"</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"尚未連線。"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"漫遊"</string>
@@ -329,7 +333,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"輸入"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"助聽器"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"開啟中…"</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"無法調整亮度，因為目前是由上層應用程式控制亮度"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"自動旋轉"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"自動旋轉螢幕"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"定位"</string>
@@ -581,7 +586,7 @@
     <string name="media_projection_entry_cast_permission_dialog_option_text_single_app" msgid="6073353940838561981">"投放一個應用程式"</string>
     <string name="media_projection_entry_cast_permission_dialog_option_text_entire_screen" msgid="8389508187954155307">"投放整個畫面"</string>
     <string name="media_projection_entry_cast_permission_dialog_warning_entire_screen" msgid="4040447861037324017">"當你投放整個畫面時，畫面上的所有內容都會顯示出來。因此，請謹慎處理密碼、付款資料、訊息、相片和影音內容等資訊。"</string>
-    <string name="media_projection_entry_cast_permission_dialog_warning_single_app" msgid="7487834861348460736">"當你投放應用程式畫面時，該應用程式呈現或播放的所有內容都會顯示出來。因此，請謹慎處理密碼、付款資料、訊息、相片和影音內容等資訊。"</string>
+    <string name="media_projection_entry_cast_permission_dialog_warning_single_app" msgid="7487834861348460736">"投放應用程式畫面時，該應用程式呈現或播放的所有內容都會投放出來。因此，請謹慎處理密碼、付款資料、訊息、相片和影音內容等資訊。"</string>
     <string name="media_projection_entry_cast_permission_dialog_continue_entire_screen" msgid="3261124185304676483">"投放螢幕"</string>
     <string name="media_projection_entry_cast_app_selector_title" msgid="6323062146661922387">"選擇要投放的應用程式"</string>
     <string name="media_projection_entry_generic_permission_dialog_title" msgid="4519802931547483628">"要開始分享嗎？"</string>
@@ -986,8 +991,7 @@
   </string-array>
     <string name="tuner_low_priority" msgid="8412666814123009820">"顯示低優先順序通知圖示"</string>
     <string name="other" msgid="429768510980739978">"其他"</string>
-    <!-- no translation found for accessibility_qs_edit_toggle_tile_size_action (1485194410119733586) -->
-    <skip />
+    <string name="accessibility_qs_edit_toggle_tile_size_action" msgid="1485194410119733586">"切換設定方塊大小"</string>
     <string name="accessibility_qs_edit_remove_tile_action" msgid="775511891457193480">"移除圖塊"</string>
     <string name="accessibility_qs_edit_tile_add_action" msgid="8311378984458545661">"將設定方塊新增到最後一個位置"</string>
     <string name="accessibility_qs_edit_tile_start_move" msgid="2009373939914517817">"移動圖塊"</string>
@@ -1540,10 +1544,8 @@
     <string name="overview_edu_toast_content" msgid="5797030644017804518">"如要查看最近使用的應用程式，請在觸控板上向上滑動並按住"</string>
     <string name="all_apps_edu_toast_content" msgid="8807496014667211562">"如要查看所有應用程式，請按下鍵盤上的快捷操作鍵"</string>
     <string name="redacted_notification_single_line_title" msgid="212019960919261670">"已遮蓋"</string>
-    <!-- no translation found for public_notification_single_line_text (3576190291791654933) -->
-    <skip />
-    <!-- no translation found for redacted_otp_notification_single_line_text (5179964116354454118) -->
-    <skip />
+    <string name="public_notification_single_line_text" msgid="3576190291791654933">"解鎖即可查看"</string>
+    <string name="redacted_otp_notification_single_line_text" msgid="5179964116354454118">"解鎖即可查看驗證碼"</string>
     <string name="contextual_education_dialog_title" msgid="4630392552837487324">"內容教學"</string>
     <string name="back_edu_notification_title" msgid="5624780717751357278">"使用觸控板返回"</string>
     <string name="back_edu_notification_content" msgid="2497557451540954068">"用三指向左或向右滑動。輕觸即可進一步瞭解手勢。"</string>
diff --git a/packages/SystemUI/res/values-zu/strings.xml b/packages/SystemUI/res/values-zu/strings.xml
index 20be43b..9188648 100644
--- a/packages/SystemUI/res/values-zu/strings.xml
+++ b/packages/SystemUI/res/values-zu/strings.xml
@@ -247,16 +247,17 @@
     <string name="accessibility_bluetooth_connected" msgid="4745196874551115205">"Bluetooth ixhunyiwe"</string>
     <string name="accessibility_bluetooth_device_icon" msgid="9163840051642587982">"Isithonjana sedivayisi ye-Bluetooth"</string>
     <string name="accessibility_bluetooth_device_settings_gear" msgid="3314916468105272540">"Chofoza ukuze ulungiselele imininingwane yedivayisi"</string>
-    <!-- no translation found for accessibility_bluetooth_device_settings_gear_with_name (114373701123165491) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_see_all (5260390270128256620) -->
-    <skip />
-    <!-- no translation found for accessibility_bluetooth_device_settings_pair_new_device (7988547106800504256) -->
-    <skip />
+    <string name="accessibility_bluetooth_device_settings_gear_with_name" msgid="114373701123165491">"I-<xliff:g id="DEVICE_NAME">%s</xliff:g>. Lungiselela imininingwane yedivayisi"</string>
+    <string name="accessibility_bluetooth_device_settings_see_all" msgid="5260390270128256620">"Bona wonke amadivayisi"</string>
+    <string name="accessibility_bluetooth_device_settings_pair_new_device" msgid="7988547106800504256">"Bhangqa idivayisi entsha"</string>
     <string name="accessibility_battery_unknown" msgid="1807789554617976440">"Iphesenti lebhethri alaziwa."</string>
     <string name="accessibility_bluetooth_name" msgid="7300973230214067678">"Xhuma ku-<xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
     <string name="accessibility_cast_name" msgid="7344437925388773685">"Ixhumeke ku-<xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_expand_group" msgid="521237935987978624">"Nweba iqembu."</string>
+    <!-- no translation found for accessibility_add_device_to_group (5446422960697860806) -->
+    <skip />
+    <!-- no translation found for accessibility_remove_device_from_group (3114694270949142228) -->
+    <skip />
     <string name="accessibility_open_application" msgid="1749126077501259712">"Vula i-application."</string>
     <string name="accessibility_not_connected" msgid="4061305616351042142">"Akuxhunyiwe"</string>
     <string name="data_connection_roaming" msgid="375650836665414797">"Iyazulazula"</string>
@@ -334,7 +335,8 @@
     <string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Okokufaka"</string>
     <string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="5553051568867097111">"Imishini yendlebe"</string>
     <string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Iyavula..."</string>
-    <string name="quick_settings_brightness_unable_adjust_msg" msgid="786478497970492300">"Ayikwazi ukulungisa ukukhanya ngoba ilawulwa yi-app ephezulu"</string>
+    <!-- no translation found for quick_settings_brightness_unable_adjust_msg (4124028416057617517) -->
+    <skip />
     <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Ukuphenduka okuzenzakalelayo"</string>
     <string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Phendula iskrini ngokuzenzakalela"</string>
     <string name="quick_settings_location_label" msgid="2621868789013389163">"Indawo"</string>
@@ -903,10 +905,8 @@
     <string name="keyboard_shortcut_group_system_multitasking" msgid="6967816258924795558">"Ukwenza imisebenzi eminingi"</string>
     <string name="system_multitasking_rhs" msgid="8779289852395243004">"Sebenzisa ukuhlukanisa isikrini nge-app kwesokudla"</string>
     <string name="system_multitasking_lhs" msgid="7348595296208696452">"Sebenzisa ukuhlukanisa isikrini nge-app kwesokunxele"</string>
-    <!-- no translation found for system_multitasking_full_screen (4221409316059910349) -->
-    <skip />
-    <!-- no translation found for system_multitasking_desktop_view (8829838918507805921) -->
-    <skip />
+    <string name="system_multitasking_full_screen" msgid="4221409316059910349">"Sebenzisa isikrini esigcwele"</string>
+    <string name="system_multitasking_desktop_view" msgid="8829838918507805921">"Sebenzisa ukubuka kwedeskithophu"</string>
     <string name="system_multitasking_splitscreen_focus_rhs" msgid="3838578650313318508">"Shintshela ku-app ngakwesokudla noma ngezansi ngenkathi usebenzisa uhlukanisa isikrini"</string>
     <string name="system_multitasking_splitscreen_focus_lhs" msgid="3164261844398662518">"Shintshela ku-app ngakwesokunxele noma ngaphezulu ngenkathi usebenzisa ukuhlukanisa isikrini"</string>
     <string name="system_multitasking_replace" msgid="7410071959803642125">"Ngesikhathi sokuhlukaniswa kwesikrini: shintsha i-app ngenye"</string>
@@ -1509,8 +1509,7 @@
     <string name="touchpad_tutorial_recent_apps_gesture_button" msgid="8919227647650347359">"Buka ama-app akamuva"</string>
     <string name="touchpad_tutorial_switch_apps_gesture_button" msgid="7768255095423767779">"Shintsha ama-app"</string>
     <string name="touchpad_tutorial_done_button" msgid="176168488821755503">"Kwenziwe"</string>
-    <!-- no translation found for touchpad_tutorial_next_button (9169718126626806688) -->
-    <skip />
+    <string name="touchpad_tutorial_next_button" msgid="9169718126626806688">"Okulandelayo"</string>
     <string name="gesture_error_title" msgid="469064941635578511">"Zama futhi!"</string>
     <string name="touchpad_back_gesture_action_title" msgid="7199067250654332735">"Buyela emuva"</string>
     <string name="touchpad_back_gesture_guidance" msgid="5352221087725906542">"Swayiphela kwesokunxele noma kwesokudla usebenzisa iminwe emithathu kuphedi yokuthinta"</string>
diff --git a/packages/SystemUI/res/values/bools.xml b/packages/SystemUI/res/values/bools.xml
index 234c6df..76e9e37 100644
--- a/packages/SystemUI/res/values/bools.xml
+++ b/packages/SystemUI/res/values/bools.xml
@@ -66,4 +66,6 @@
 
     <!--  True when small screen (<sw600dp) is landscape. -->
     <bool name="is_small_screen_landscape">false</bool>
+
+    <bool name="volume_dialog_ringer_drawer_should_open_to_the_side">false</bool>
 </resources>
diff --git a/packages/SystemUI/res/values/config.xml b/packages/SystemUI/res/values/config.xml
index 8d10e39..4995858 100644
--- a/packages/SystemUI/res/values/config.xml
+++ b/packages/SystemUI/res/values/config.xml
@@ -501,7 +501,16 @@
     <!-- Smartspace trampoline activity that is used when the user taps smartspace. -->
     <string name="config_smartspaceTrampolineActivityComponent" translatable="false">com.google.android.apps.gsa.staticplugins.opa.smartspace.ExportedSmartspaceTrampolineActivity</string>
 
-    <!-- Screenshot editing default activity.  Must handle ACTION_EDIT image/png intents.
+    <!-- Screenshot editing default activity. Will only be used if the provided component exists and
+      is enabled.
+
+      Must handle ACTION_EDIT image/png intents.
+      Blank falls back to config_screenshotEditor.
+      This name is in the ComponentName flattened format (package/class)  -->
+    <string name="config_preferredScreenshotEditor" translatable="false"></string>
+
+    <!-- Screenshot editing activity used if config_preferredScreenshotEditor is not available.
+     Must handle ACTION_EDIT image/png intents.
          Blank sends the user to the Chooser first.
          This name is in the ComponentName flattened format (package/class)  -->
     <string name="config_screenshotEditor" translatable="false"></string>
@@ -1116,4 +1125,7 @@
 
     <!-- Configuration to swipe to open glanceable hub -->
     <bool name="config_swipeToOpenGlanceableHub">false</bool>
+
+    <!-- Whether or not to show the UMO on the glanceable hub when media is playing. -->
+    <bool name="config_showUmoOnHub">false</bool>
 </resources>
diff --git a/packages/SystemUI/res/values/dimens.xml b/packages/SystemUI/res/values/dimens.xml
index 640e1fa..7c370d3 100644
--- a/packages/SystemUI/res/values/dimens.xml
+++ b/packages/SystemUI/res/values/dimens.xml
@@ -390,6 +390,12 @@
     <!-- Extra space for guts bundle feedback button -->
     <dimen name="notification_guts_bundle_feedback_size">48dp</dimen>
 
+    <!-- Size of icon buttons in notification info. -->
+    <!-- 24dp for the icon itself + 16dp * 2 for top and bottom padding -->
+    <dimen name="notification_2025_guts_button_size">56dp</dimen>
+
+    <dimen name="notification_2025_min_tap_target_size">48dp</dimen>
+
     <dimen name="notification_importance_toggle_size">48dp</dimen>
     <dimen name="notification_importance_button_separation">8dp</dimen>
     <dimen name="notification_importance_drawable_padding">8dp</dimen>
@@ -402,6 +408,10 @@
     <dimen name="notification_importance_button_description_top_margin">12dp</dimen>
     <dimen name="rect_button_radius">8dp</dimen>
 
+    <!-- Padding for importance selection buttons in notification info, 2025 redesign version -->
+    <dimen name="notification_2025_importance_button_padding_vertical">12dp</dimen>
+    <dimen name="notification_2025_importance_button_padding_horizontal">16dp</dimen>
+
     <!-- The minimum height for the snackbar shown after the snooze option has been chosen. -->
     <dimen name="snooze_snackbar_min_height">56dp</dimen>
 
diff --git a/packages/SystemUI/res/values/ids.xml b/packages/SystemUI/res/values/ids.xml
index 47a9bd6..2d0f0f9 100644
--- a/packages/SystemUI/res/values/ids.xml
+++ b/packages/SystemUI/res/values/ids.xml
@@ -294,4 +294,7 @@
     <item type="id" name="brightness_dialog_slider" />
 
     <item type="id" name="aod_promoted_notification_view_updater_tag" />
+
+    <!-- id for the composable battery meter (see UnifiedBattery.kt) -->
+    <item type="id" name="battery_meter_composable_view" />
 </resources>
diff --git a/packages/SystemUI/res/values/strings.xml b/packages/SystemUI/res/values/strings.xml
index 084495f..6ff1240 100644
--- a/packages/SystemUI/res/values/strings.xml
+++ b/packages/SystemUI/res/values/strings.xml
@@ -3176,8 +3176,8 @@
     <string name="controls_media_settings_button">Settings</string>
     <!-- Description for media control's playing media item, including information for the media's title, the artist, and source app [CHAR LIMIT=NONE]-->
     <string name="controls_media_playing_item_description"><xliff:g id="song_name" example="Daily mix">%1$s</xliff:g> by <xliff:g id="artist_name" example="Various artists">%2$s</xliff:g> is playing from <xliff:g id="app_label" example="Spotify">%3$s</xliff:g></string>
-    <!-- Content description for media controls progress bar [CHAR_LIMIT=NONE] -->
-    <string name="controls_media_seekbar_description"><xliff:g id="elapsed_time" example="1 hour 2 minutes 30 seconds">%1$s</xliff:g> of <xliff:g id="total_time" example="4 hours 5 seconds">%2$s</xliff:g></string>
+    <!-- Content description for media cotnrols progress bar [CHAR_LIMIT=NONE] -->
+    <string name="controls_media_seekbar_description"><xliff:g id="elapsed_time" example="1:30">%1$s</xliff:g> of <xliff:g id="total_time" example="3:00">%2$s</xliff:g></string>
     <!-- Placeholder title to inform user that an app has posted media controls [CHAR_LIMIT=NONE] -->
     <string name="controls_media_empty_title"><xliff:g id="app_name" example="Foo Music App">%1$s</xliff:g> is running</string>
 
@@ -4178,4 +4178,7 @@
     <string name="qs_edit_mode_reset_dialog_content">
         All Quick Settings tiles will reset to the device’s original settings
     </string>
+
+    <!-- Template that joins disabled message with the label for the voice over. [CHAR LIMIT=NONE] -->
+    <string name="volume_slider_disabled_message_template"><xliff:g example="Notification" id="stream_name">%1$s</xliff:g>, <xliff:g example="Disabled because ring is muted" id="disabled_message">%2$s</xliff:g></string>
 </resources>
diff --git a/packages/SystemUI/res/values/styles.xml b/packages/SystemUI/res/values/styles.xml
index 8a6b3af..5b96e50 100644
--- a/packages/SystemUI/res/values/styles.xml
+++ b/packages/SystemUI/res/values/styles.xml
@@ -21,6 +21,13 @@
         <item name="android:textSize">@dimen/status_bar_clock_size</item>
         <item name="android:fontFamily">@*android:string/config_headlineFontFamilyMedium</item>
         <item name="android:textColor">@color/status_bar_clock_color</item>
+        <item name="android:fontFeatureSettings">tnum</item>
+    </style>
+
+    <style name="TextAppearance.StatusBar.Carrier" parent="@*android:style/TextAppearance.StatusBar.Icon">
+        <item name="android:textSize">@dimen/status_bar_clock_size</item>
+        <item name="android:fontFamily">@*android:string/config_headlineFontFamilyMedium</item>
+        <item name="android:textColor">@color/status_bar_clock_color</item>
     </style>
 
     <style name="TextAppearance.StatusBar.UserChip" parent="@*android:style/TextAppearance.StatusBar.Icon">
@@ -557,7 +564,6 @@
         <item name="android:backgroundDimEnabled">false</item>
         <item name="android:showWhenLocked">true</item>
         <item name="android:windowBackground">@color/transparent</item>
-        <item name="android:windowContentOverlay">@null</item>
         <item name="android:windowFullscreen">true</item>
         <item name="android:windowIsFloating">false</item>
         <item name="android:windowNoTitle">true</item>
diff --git a/packages/SystemUI/shared/res/values/ids.xml b/packages/SystemUI/shared/res/values/ids.xml
index 1ff2f0e..e1a525d 100644
--- a/packages/SystemUI/shared/res/values/ids.xml
+++ b/packages/SystemUI/shared/res/values/ids.xml
@@ -21,4 +21,8 @@
     <item type="id" name="date_smartspace_view" />
     <!-- ID of the smartspace weather view. -->
     <item type="id" name="weather_smartspace_view" />
+    <!-- ID of the smartspace date view near the large clock. -->
+    <item type="id" name="date_smartspace_view_large" />
+    <!-- ID of the smartspace weather view near the large clock. -->
+    <item type="id" name="weather_smartspace_view_large" />
 </resources>
diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardPatternView.java b/packages/SystemUI/src/com/android/keyguard/KeyguardPatternView.java
index 4a4cb7a..8f8bcf2 100644
--- a/packages/SystemUI/src/com/android/keyguard/KeyguardPatternView.java
+++ b/packages/SystemUI/src/com/android/keyguard/KeyguardPatternView.java
@@ -239,7 +239,6 @@
                             R.dimen.keyguard_pattern_activated_dot_size));
             mLockPatternView.setPathWidth(
                     getResources().getDimensionPixelSize(R.dimen.keyguard_pattern_stroke_width));
-            mLockPatternView.setKeepDotActivated(true);
         }
 
         mEcaView = findViewById(R.id.keyguard_selector_fade_container);
diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardPatternViewController.java b/packages/SystemUI/src/com/android/keyguard/KeyguardPatternViewController.java
index 7fb6664..f6df425 100644
--- a/packages/SystemUI/src/com/android/keyguard/KeyguardPatternViewController.java
+++ b/packages/SystemUI/src/com/android/keyguard/KeyguardPatternViewController.java
@@ -36,6 +36,7 @@
 import com.android.internal.widget.LockscreenCredential;
 import com.android.keyguard.EmergencyButtonController.EmergencyButtonCallback;
 import com.android.keyguard.KeyguardSecurityModel.SecurityMode;
+import com.android.systemui.Flags;
 import com.android.systemui.bouncer.ui.helper.BouncerHapticPlayer;
 import com.android.systemui.classifier.FalsingClassifier;
 import com.android.systemui.classifier.FalsingCollector;
@@ -237,8 +238,12 @@
         super.onViewAttached();
         mLockPatternView.setOnPatternListener(new UnlockPatternListener());
         mLockPatternView.setSaveEnabled(false);
-        mLockPatternView.setInStealthMode(!mLockPatternUtils.isVisiblePatternEnabled(
-                mSelectedUserInteractor.getSelectedUserId()));
+        boolean visiblePatternEnabled = mLockPatternUtils.isVisiblePatternEnabled(
+                mSelectedUserInteractor.getSelectedUserId());
+        mLockPatternView.setInStealthMode(!visiblePatternEnabled);
+        if (Flags.bouncerUiRevamp2()) {
+            mLockPatternView.setKeepDotActivated(visiblePatternEnabled);
+        }
         mLockPatternView.setOnTouchListener((v, event) -> {
             if (event.getActionMasked() == MotionEvent.ACTION_DOWN) {
                 mFalsingCollector.avoidGesture();
diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java b/packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java
index 63101d4..bd09e39 100644
--- a/packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java
+++ b/packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java
@@ -199,7 +199,7 @@
  * to be updated.
  */
 @SysUISingleton
-public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpable, CoreStartable {
+public class KeyguardUpdateMonitor implements TrustManager.TrustListener, CoreStartable {
 
     private static final String TAG = "KeyguardUpdateMonitor";
     private static final int BIOMETRIC_LOCKOUT_RESET_DELAY_MS = 600;
diff --git a/packages/SystemUI/src/com/android/systemui/ScreenDecorations.java b/packages/SystemUI/src/com/android/systemui/ScreenDecorations.java
index e725353..19da5de 100644
--- a/packages/SystemUI/src/com/android/systemui/ScreenDecorations.java
+++ b/packages/SystemUI/src/com/android/systemui/ScreenDecorations.java
@@ -112,7 +112,7 @@
  */
 @SysUISingleton
 public class ScreenDecorations implements
-        CoreStartable, ConfigurationController.ConfigurationListener, Dumpable {
+        CoreStartable, ConfigurationController.ConfigurationListener {
     private static final boolean DEBUG_LOGGING = false;
     private static final String TAG = "ScreenDecorations";
 
diff --git a/packages/SystemUI/src/com/android/systemui/SwipeHelper.java b/packages/SystemUI/src/com/android/systemui/SwipeHelper.java
index 85f1880..c78f75a 100644
--- a/packages/SystemUI/src/com/android/systemui/SwipeHelper.java
+++ b/packages/SystemUI/src/com/android/systemui/SwipeHelper.java
@@ -54,6 +54,7 @@
 import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin;
 import com.android.systemui.res.R;
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
 import com.android.systemui.statusbar.notification.shared.NotificationContentAlphaOptimization;
 import com.android.wm.shell.animation.FlingAnimationUtils;
 import com.android.wm.shell.shared.animation.PhysicsAnimator;
@@ -890,12 +891,16 @@
         if (mFeatureFlags.isEnabled(Flags.NOTIFICATION_DRAG_TO_CONTENTS)) {
             if (v instanceof ExpandableNotificationRow) {
                 ExpandableNotificationRow enr = (ExpandableNotificationRow) v;
-                boolean canBubble = enr.getEntry().canBubble();
-                Notification notif = enr.getEntry().getSbn().getNotification();
-                PendingIntent dragIntent = notif.contentIntent != null ? notif.contentIntent
-                        : notif.fullScreenIntent;
-                if (dragIntent != null && dragIntent.isActivity() && !canBubble) {
-                    return true;
+                if (NotificationBundleUi.isEnabled()) {
+                    return enr.getEntryAdapter().canDragAndDrop();
+                } else {
+                    boolean canBubble = enr.getEntry().canBubble();
+                    Notification notif = enr.getEntry().getSbn().getNotification();
+                    PendingIntent dragIntent = notif.contentIntent != null ? notif.contentIntent
+                            : notif.fullScreenIntent;
+                    if (dragIntent != null && dragIntent.isActivity() && !canBubble) {
+                        return true;
+                    }
                 }
             }
         }
diff --git a/packages/SystemUI/src/com/android/systemui/accessibility/data/repository/AccessibilityRepository.kt b/packages/SystemUI/src/com/android/systemui/accessibility/data/repository/AccessibilityRepository.kt
index b33924c..a09e954 100644
--- a/packages/SystemUI/src/com/android/systemui/accessibility/data/repository/AccessibilityRepository.kt
+++ b/packages/SystemUI/src/com/android/systemui/accessibility/data/repository/AccessibilityRepository.kt
@@ -22,6 +22,8 @@
 import com.android.app.tracing.FlowTracing.tracedConflatedCallbackFlow
 import dagger.Module
 import dagger.Provides
+import kotlin.time.Duration
+import kotlin.time.Duration.Companion.milliseconds
 import kotlinx.coroutines.flow.Flow
 import kotlinx.coroutines.flow.distinctUntilChanged
 
@@ -32,6 +34,8 @@
     /** @see [AccessibilityManager.isEnabled] */
     val isEnabled: Flow<Boolean>
 
+    fun getRecommendedTimeout(originalTimeout: Duration, uiFlags: Int): Duration
+
     companion object {
         operator fun invoke(a11yManager: AccessibilityManager): AccessibilityRepository =
             AccessibilityRepositoryImpl(a11yManager)
@@ -40,9 +44,8 @@
 
 private const val TAG = "AccessibilityRepository"
 
-private class AccessibilityRepositoryImpl(
-    manager: AccessibilityManager,
-) : AccessibilityRepository {
+private class AccessibilityRepositoryImpl(private val manager: AccessibilityManager) :
+    AccessibilityRepository {
     override val isTouchExplorationEnabled: Flow<Boolean> =
         tracedConflatedCallbackFlow(TAG) {
                 val listener = TouchExplorationStateChangeListener(::trySend)
@@ -62,6 +65,12 @@
                 tracedAwaitClose(TAG) { manager.removeAccessibilityStateChangeListener(listener) }
             }
             .distinctUntilChanged()
+
+    override fun getRecommendedTimeout(originalTimeout: Duration, uiFlags: Int): Duration {
+        return manager
+            .getRecommendedTimeoutMillis(originalTimeout.inWholeMilliseconds.toInt(), uiFlags)
+            .milliseconds
+    }
 }
 
 @Module
diff --git a/packages/SystemUI/src/com/android/systemui/accessibility/hearingaid/HearingDevicesDialogDelegate.java b/packages/SystemUI/src/com/android/systemui/accessibility/hearingaid/HearingDevicesDialogDelegate.java
index 786d27a..b730c93 100644
--- a/packages/SystemUI/src/com/android/systemui/accessibility/hearingaid/HearingDevicesDialogDelegate.java
+++ b/packages/SystemUI/src/com/android/systemui/accessibility/hearingaid/HearingDevicesDialogDelegate.java
@@ -289,6 +289,8 @@
             List<DeviceItem> hearingDeviceItemList = getHearingDeviceItemList();
             CachedBluetoothDevice activeHearingDevice = getActiveHearingDevice(
                     hearingDeviceItemList);
+            mLocalBluetoothManager.getEventManager().registerCallback(this);
+
             mMainExecutor.execute(() -> {
                 setupDeviceListView(dialog, hearingDeviceItemList);
                 setupPairNewDeviceButton(dialog);
@@ -302,21 +304,6 @@
     }
 
     @Override
-    public void onStart(@NonNull SystemUIDialog dialog) {
-        mBgExecutor.execute(() -> {
-            if (mLocalBluetoothManager != null) {
-                mLocalBluetoothManager.getEventManager().registerCallback(this);
-            }
-            if (mPresetController != null) {
-                mPresetController.registerHapCallback();
-            }
-            if (mAmbientController != null) {
-                mAmbientController.start();
-            }
-        });
-    }
-
-    @Override
     public void onStop(@NonNull SystemUIDialog dialog) {
         mBgExecutor.execute(() -> {
             if (mLocalBluetoothManager != null) {
@@ -378,6 +365,7 @@
 
         mPresetLayout = dialog.requireViewById(R.id.preset_layout);
         mPresetLayout.setVisibility(mPresetController.isPresetControlAvailable() ? VISIBLE : GONE);
+        mBgExecutor.execute(() -> mPresetController.registerHapCallback());
     }
 
     private void setupAmbientControls(CachedBluetoothDevice activeHearingDevice) {
@@ -387,6 +375,7 @@
                 mDialog.getContext(), mLocalBluetoothManager, ambientLayout);
         mAmbientController.setShowUiWhenLocalDataExist(false);
         mAmbientController.loadDevice(activeHearingDevice);
+        mBgExecutor.execute(() -> mAmbientController.start());
     }
 
     private void setupPairNewDeviceButton(SystemUIDialog dialog) {
diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/ui/viewmodel/PromptViewModel.kt b/packages/SystemUI/src/com/android/systemui/biometrics/ui/viewmodel/PromptViewModel.kt
index 4dcf268..0902d19 100644
--- a/packages/SystemUI/src/com/android/systemui/biometrics/ui/viewmodel/PromptViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/biometrics/ui/viewmodel/PromptViewModel.kt
@@ -34,6 +34,7 @@
 import android.util.RotationUtils
 import android.view.HapticFeedbackConstants
 import android.view.MotionEvent
+import android.view.accessibility.AccessibilityManager
 import com.android.app.tracing.coroutines.launchTraced as launch
 import com.android.keyguard.AuthInteractionProperties
 import com.android.launcher3.icons.IconProvider
@@ -85,7 +86,17 @@
     private val udfpsUtils: UdfpsUtils,
     private val iconProvider: IconProvider,
     private val activityTaskManager: ActivityTaskManager,
+    private val accessibilityManager: AccessibilityManager,
 ) {
+    // When a11y enabled, increase message delay to ensure messages get read
+    private val messageDelay =
+        accessibilityManager
+            .getRecommendedTimeoutMillis(
+                BiometricPrompt.HIDE_DIALOG_DELAY,
+                AccessibilityManager.FLAG_CONTENT_CONTROLS or AccessibilityManager.FLAG_CONTENT_TEXT,
+            )
+            .toLong()
+
     /** The set of modalities available for this prompt */
     val modalities: Flow<BiometricModalities> =
         promptSelectorInteractor.prompt
@@ -692,7 +703,7 @@
 
         messageJob?.cancel()
         messageJob = launch {
-            delay(BiometricPrompt.HIDE_DIALOG_DELAY.toLong())
+            delay(messageDelay)
             if (authenticateAfterError) {
                 showAuthenticating(messageAfterError)
             } else {
@@ -754,7 +765,7 @@
 
         messageJob?.cancel()
         messageJob = launch {
-            delay(BiometricPrompt.HIDE_DIALOG_DELAY.toLong())
+            delay(messageDelay)
             showAuthenticating(messageAfterHelp)
         }
     }
diff --git a/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/BluetoothDetailsContent.kt b/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/BluetoothDetailsContent.kt
index c664456..8bdfd59 100644
--- a/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/BluetoothDetailsContent.kt
+++ b/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/BluetoothDetailsContent.kt
@@ -32,9 +32,9 @@
             val view =
                 LayoutInflater.from(context)
                     .inflate(R.layout.bluetooth_tile_dialog, /* root= */ null)
-            detailsContentViewModel.showDetailsContent(/* expandable= */ null, view)
+            detailsContentViewModel.bindDetailsView(view)
             view
         },
-        onRelease = { detailsContentViewModel.contentManager.releaseView() },
+        onRelease = { detailsContentViewModel.unbindDetailsView() },
     )
 }
diff --git a/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/BluetoothDetailsContentViewModel.kt b/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/BluetoothDetailsContentViewModel.kt
index 1c9cf8d..7ecd276 100644
--- a/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/BluetoothDetailsContentViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/BluetoothDetailsContentViewModel.kt
@@ -44,6 +44,7 @@
 import com.android.systemui.dagger.qualifiers.Background
 import com.android.systemui.dagger.qualifiers.Main
 import com.android.systemui.plugins.ActivityStarter
+import com.android.systemui.qs.flags.QsDetailedView
 import com.android.systemui.res.R
 import com.android.systemui.statusbar.phone.SystemUIDialog
 import javax.inject.Inject
@@ -52,6 +53,7 @@
 import kotlinx.coroutines.Job
 import kotlinx.coroutines.channels.awaitClose
 import kotlinx.coroutines.channels.produce
+import kotlinx.coroutines.coroutineScope
 import kotlinx.coroutines.flow.combine
 import kotlinx.coroutines.flow.emptyFlow
 import kotlinx.coroutines.flow.filterNotNull
@@ -91,223 +93,228 @@
     private var job: Job? = null
 
     /**
-     * Shows the details content.
+     * Binds the bluetooth details view with BluetoothDetailsContentManager.
      *
-     * @param view The view from which the dialog is shown. If view is null, it should show the
-     *   bluetooth tile details view.
-     *
-     * TODO: b/378513956 Refactor this method into 2. One is called by the dialog to show the
-     *   dialog, another is called by the details view model to bind the view.
+     * @param view The view from which the bluetooth details content is shown.
      */
-    fun showDetailsContent(expandable: Expandable?, view: View?) {
+    fun bindDetailsView(view: View) {
+        // If `QsDetailedView` is not enabled, it should show the dialog.
+        QsDetailedView.assertInNewMode()
+
         cancelJob()
 
         job =
             coroutineScope.launch(context = mainDispatcher) {
-                var updateDeviceItemJob: Job?
-                var updateDialogUiJob: Job? = null
-                val dialog: SystemUIDialog?
-                val context: Context
-
-                if (view == null) {
-                    // Render with dialog
-                    val dialogDelegate = createBluetoothTileDialog()
-                    dialog = dialogDelegate.createDialog()
-                    context = dialog.context
-
-                    val controller =
-                        expandable?.dialogTransitionController(
-                            DialogCuj(
-                                InteractionJankMonitor.CUJ_SHADE_DIALOG_OPEN,
-                                INTERACTION_JANK_TAG,
-                            )
-                        )
-                    controller?.let {
-                        dialogTransitionAnimator.show(
-                            dialog,
-                            it,
-                            animateBackgroundBoundsChange = true,
-                        )
-                    } ?: dialog.show()
-                    // contentManager is created after dialog.show
-                    contentManager = dialogDelegate.contentManager
-                } else {
-                    // Render with tile details view
-                    dialog = null
-                    context = view.context
-                    contentManager = createContentManager()
-                    contentManager.bind(view)
-                    contentManager.start()
-                }
-
-                updateDeviceItemJob = launch {
-                    deviceItemInteractor.updateDeviceItems(context, DeviceFetchTrigger.FIRST_LOAD)
-                }
-
-                // deviceItemUpdate is emitted when device item list is done fetching, update UI and
-                // stop the progress bar.
-                combine(
-                        deviceItemInteractor.deviceItemUpdate,
-                        deviceItemInteractor.showSeeAllUpdate,
-                    ) { deviceItem, showSeeAll ->
-                        updateDialogUiJob?.cancel()
-                        updateDialogUiJob = launch {
-                            contentManager.apply {
-                                onDeviceItemUpdated(
-                                    deviceItem,
-                                    showSeeAll,
-                                    showPairNewDevice =
-                                        bluetoothStateInteractor.isBluetoothEnabled(),
-                                )
-                                animateProgressBar(false)
-                            }
-                        }
-                    }
-                    .launchIn(this)
-
-                // deviceItemUpdateRequest is emitted when a bluetooth callback is called, re-fetch
-                // the device item list and animate the progress bar.
-                merge(
-                        deviceItemInteractor.deviceItemUpdateRequest,
-                        audioModeInteractor.isOngoingCall,
-                        bluetoothDeviceMetadataInteractor.metadataUpdate,
-                        if (
-                            audioSharingInteractor.audioSharingAvailable() &&
-                                audioSharingInteractor.qsDialogImprovementAvailable()
-                        ) {
-                            audioSharingInteractor.audioSourceStateUpdate
-                        } else {
-                            emptyFlow()
-                        },
-                    )
-                    .onEach {
-                        contentManager.animateProgressBar(true)
-                        updateDeviceItemJob?.cancel()
-                        updateDeviceItemJob = launch {
-                            deviceItemInteractor.updateDeviceItems(
-                                context,
-                                DeviceFetchTrigger.BLUETOOTH_CALLBACK_RECEIVED,
-                            )
-                        }
-                    }
-                    .launchIn(this)
-
-                if (audioSharingInteractor.audioSharingAvailable()) {
-                    if (audioSharingInteractor.qsDialogImprovementAvailable()) {
-                        launch { audioSharingInteractor.handleAudioSourceWhenReady() }
-                    }
-
-                    audioSharingButtonViewModelFactory.create().run {
-                        audioSharingButtonStateUpdate
-                            .onEach {
-                                when (it) {
-                                    is AudioSharingButtonState.Visible -> {
-                                        contentManager.onAudioSharingButtonUpdated(
-                                            VISIBLE,
-                                            context.getString(it.resId),
-                                            it.isActive,
-                                        )
-                                    }
-                                    is AudioSharingButtonState.Gone -> {
-                                        contentManager.onAudioSharingButtonUpdated(
-                                            GONE,
-                                            label = null,
-                                            isActive = false,
-                                        )
-                                    }
-                                }
-                            }
-                            .launchIn(this@launch)
-                        launch { activate() }
-                    }
-                }
-
-                // bluetoothStateUpdate is emitted when bluetooth on/off state is changed, re-fetch
-                // the device item list.
-                bluetoothStateInteractor.bluetoothStateUpdate
-                    .onEach {
-                        contentManager.onBluetoothStateUpdated(
-                            it,
-                            UiProperties.build(it, isAutoOnToggleFeatureAvailable()),
-                        )
-                        updateDeviceItemJob?.cancel()
-                        updateDeviceItemJob = launch {
-                            deviceItemInteractor.updateDeviceItems(
-                                context,
-                                DeviceFetchTrigger.BLUETOOTH_STATE_CHANGE_RECEIVED,
-                            )
-                        }
-                    }
-                    .launchIn(this)
-
-                // bluetoothStateToggle is emitted when user toggles the bluetooth state switch,
-                // send the new value to the bluetoothStateInteractor and animate the progress bar.
-                contentManager.bluetoothStateToggle
-                    .filterNotNull()
-                    .onEach {
-                        contentManager.animateProgressBar(true)
-                        bluetoothStateInteractor.setBluetoothEnabled(it)
-                    }
-                    .launchIn(this)
-
-                // deviceItemClick is emitted when user clicked on a device item.
-                contentManager.deviceItemClick
-                    .filterNotNull()
-                    .onEach {
-                        when (it.target) {
-                            DeviceItemClick.Target.ENTIRE_ROW -> {
-                                deviceItemActionInteractor.onClick(it.deviceItem, dialog)
-                                logger.logDeviceClick(
-                                    it.deviceItem.cachedBluetoothDevice.address,
-                                    it.deviceItem.type,
-                                )
-                            }
-
-                            DeviceItemClick.Target.ACTION_ICON -> {
-                                deviceItemActionInteractor.onActionIconClick(it.deviceItem) { intent
-                                    ->
-                                    startSettingsActivity(intent, it.clickedView)
-                                }
-                            }
-                        }
-                    }
-                    .launchIn(this)
-
-                // contentHeight is emitted when the dialog is dismissed.
-                contentManager.contentHeight
-                    .filterNotNull()
-                    .onEach {
-                        withContext(backgroundDispatcher) {
-                            sharedPreferences.edit().putInt(CONTENT_HEIGHT_PREF_KEY, it).apply()
-                        }
-                    }
-                    .launchIn(this)
-
-                if (isAutoOnToggleFeatureAvailable()) {
-                    // bluetoothAutoOnUpdate is emitted when bluetooth auto on on/off state is
-                    // changed.
-                    bluetoothAutoOnInteractor.isEnabled
-                        .onEach {
-                            contentManager.onBluetoothAutoOnUpdated(
-                                it,
-                                if (it) R.string.turn_on_bluetooth_auto_info_enabled
-                                else R.string.turn_on_bluetooth_auto_info_disabled,
-                            )
-                        }
-                        .launchIn(this)
-
-                    // bluetoothAutoOnToggle is emitted when user toggles the bluetooth auto on
-                    // switch, send the new value to the bluetoothAutoOnInteractor.
-                    contentManager.bluetoothAutoOnToggle
-                        .filterNotNull()
-                        .onEach { bluetoothAutoOnInteractor.setEnabled(it) }
-                        .launchIn(this)
-                }
-
-                produce<Unit> { awaitClose { dialog?.cancel() } }
+                contentManager = createContentManager()
+                contentManager.bind(view)
+                contentManager.start()
+                updateDetailsUI(context = view.context, dialog = null)
             }
     }
 
+    /** Shows the bluetooth dialog. */
+    fun showDialog(expandable: Expandable?) {
+        // If `QsDetailedView` is enabled, it should show the details view.
+        QsDetailedView.assertInLegacyMode()
+
+        cancelJob()
+
+        job =
+            coroutineScope.launch(context = mainDispatcher) {
+                val dialogDelegate = createBluetoothTileDialog()
+                val dialog = dialogDelegate.createDialog()
+
+                val controller =
+                    expandable?.dialogTransitionController(
+                        DialogCuj(
+                            InteractionJankMonitor.CUJ_SHADE_DIALOG_OPEN,
+                            INTERACTION_JANK_TAG,
+                        )
+                    )
+                controller?.let {
+                    dialogTransitionAnimator.show(dialog, it, animateBackgroundBoundsChange = true)
+                } ?: dialog.show()
+                // contentManager is created after dialog.show
+                contentManager = dialogDelegate.contentManager
+                updateDetailsUI(dialog.context, dialog)
+            }
+    }
+
+    /** Unbinds the details view when it goes away. */
+    fun unbindDetailsView() {
+        cancelJob()
+        contentManager.releaseView()
+    }
+
+    private suspend fun updateDetailsUI(context: Context, dialog: SystemUIDialog?) {
+        coroutineScope {
+            var updateDeviceItemJob: Job?
+            var updateDialogUiJob: Job? = null
+
+            updateDeviceItemJob = launch {
+                deviceItemInteractor.updateDeviceItems(context, DeviceFetchTrigger.FIRST_LOAD)
+            }
+
+            // deviceItemUpdate is emitted when device item list is done fetching, update UI and
+            // stop the progress bar.
+            combine(deviceItemInteractor.deviceItemUpdate, deviceItemInteractor.showSeeAllUpdate) {
+                    deviceItem,
+                    showSeeAll ->
+                    updateDialogUiJob?.cancel()
+                    updateDialogUiJob = launch {
+                        contentManager.apply {
+                            onDeviceItemUpdated(
+                                deviceItem,
+                                showSeeAll,
+                                showPairNewDevice = bluetoothStateInteractor.isBluetoothEnabled(),
+                            )
+                            animateProgressBar(false)
+                        }
+                    }
+                }
+                .launchIn(this)
+
+            // deviceItemUpdateRequest is emitted when a bluetooth callback is called, re-fetch
+            // the device item list and animate the progress bar.
+            merge(
+                    deviceItemInteractor.deviceItemUpdateRequest,
+                    audioModeInteractor.isOngoingCall,
+                    bluetoothDeviceMetadataInteractor.metadataUpdate,
+                    if (
+                        audioSharingInteractor.audioSharingAvailable() &&
+                            audioSharingInteractor.qsDialogImprovementAvailable()
+                    ) {
+                        audioSharingInteractor.audioSourceStateUpdate
+                    } else {
+                        emptyFlow()
+                    },
+                )
+                .onEach {
+                    contentManager.animateProgressBar(true)
+                    updateDeviceItemJob?.cancel()
+                    updateDeviceItemJob = launch {
+                        deviceItemInteractor.updateDeviceItems(
+                            context,
+                            DeviceFetchTrigger.BLUETOOTH_CALLBACK_RECEIVED,
+                        )
+                    }
+                }
+                .launchIn(this)
+
+            if (audioSharingInteractor.audioSharingAvailable()) {
+                if (audioSharingInteractor.qsDialogImprovementAvailable()) {
+                    launch { audioSharingInteractor.handleAudioSourceWhenReady() }
+                }
+
+                audioSharingButtonViewModelFactory.create().run {
+                    audioSharingButtonStateUpdate
+                        .onEach {
+                            when (it) {
+                                is AudioSharingButtonState.Visible -> {
+                                    contentManager.onAudioSharingButtonUpdated(
+                                        VISIBLE,
+                                        context.getString(it.resId),
+                                        it.isActive,
+                                    )
+                                }
+                                is AudioSharingButtonState.Gone -> {
+                                    contentManager.onAudioSharingButtonUpdated(
+                                        GONE,
+                                        label = null,
+                                        isActive = false,
+                                    )
+                                }
+                            }
+                        }
+                        .launchIn(this@coroutineScope)
+                    launch { activate() }
+                }
+            }
+
+            // bluetoothStateUpdate is emitted when bluetooth on/off state is changed, re-fetch
+            // the device item list.
+            bluetoothStateInteractor.bluetoothStateUpdate
+                .onEach {
+                    contentManager.onBluetoothStateUpdated(
+                        it,
+                        UiProperties.build(it, isAutoOnToggleFeatureAvailable()),
+                    )
+                    updateDeviceItemJob?.cancel()
+                    updateDeviceItemJob = launch {
+                        deviceItemInteractor.updateDeviceItems(
+                            context,
+                            DeviceFetchTrigger.BLUETOOTH_STATE_CHANGE_RECEIVED,
+                        )
+                    }
+                }
+                .launchIn(this)
+
+            // bluetoothStateToggle is emitted when user toggles the bluetooth state switch,
+            // send the new value to the bluetoothStateInteractor and animate the progress bar.
+            contentManager.bluetoothStateToggle
+                .filterNotNull()
+                .onEach {
+                    contentManager.animateProgressBar(true)
+                    bluetoothStateInteractor.setBluetoothEnabled(it)
+                }
+                .launchIn(this)
+
+            // deviceItemClick is emitted when user clicked on a device item.
+            contentManager.deviceItemClick
+                .filterNotNull()
+                .onEach {
+                    when (it.target) {
+                        DeviceItemClick.Target.ENTIRE_ROW -> {
+                            deviceItemActionInteractor.onClick(it.deviceItem, dialog)
+                            logger.logDeviceClick(
+                                it.deviceItem.cachedBluetoothDevice.address,
+                                it.deviceItem.type,
+                            )
+                        }
+
+                        DeviceItemClick.Target.ACTION_ICON -> {
+                            deviceItemActionInteractor.onActionIconClick(it.deviceItem) { intent ->
+                                startSettingsActivity(intent, it.clickedView)
+                            }
+                        }
+                    }
+                }
+                .launchIn(this)
+
+            // contentHeight is emitted when the dialog is dismissed.
+            contentManager.contentHeight
+                .filterNotNull()
+                .onEach {
+                    withContext(backgroundDispatcher) {
+                        sharedPreferences.edit().putInt(CONTENT_HEIGHT_PREF_KEY, it).apply()
+                    }
+                }
+                .launchIn(this)
+
+            if (isAutoOnToggleFeatureAvailable()) {
+                // bluetoothAutoOnUpdate is emitted when bluetooth auto on on/off state is
+                // changed.
+                bluetoothAutoOnInteractor.isEnabled
+                    .onEach {
+                        contentManager.onBluetoothAutoOnUpdated(
+                            it,
+                            if (it) R.string.turn_on_bluetooth_auto_info_enabled
+                            else R.string.turn_on_bluetooth_auto_info_disabled,
+                        )
+                    }
+                    .launchIn(this)
+
+                // bluetoothAutoOnToggle is emitted when user toggles the bluetooth auto on
+                // switch, send the new value to the bluetoothAutoOnInteractor.
+                contentManager.bluetoothAutoOnToggle
+                    .filterNotNull()
+                    .onEach { bluetoothAutoOnInteractor.setEnabled(it) }
+                    .launchIn(this)
+            }
+            produce<Unit> { awaitClose { dialog?.cancel() } }
+        }
+    }
+
     private suspend fun createBluetoothTileDialog(): BluetoothTileDialogDelegate {
         return bluetoothDialogDelegateFactory.create(
             getUiProperties(),
diff --git a/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/BluetoothTileDialogDelegate.kt b/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/BluetoothTileDialogDelegate.kt
index c55f605..bac6854 100644
--- a/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/BluetoothTileDialogDelegate.kt
+++ b/packages/SystemUI/src/com/android/systemui/bluetooth/qsdialog/BluetoothTileDialogDelegate.kt
@@ -51,7 +51,7 @@
             initialUiProperties: BluetoothDetailsContentViewModel.UiProperties,
             cachedContentHeight: Int,
             dialogCallback: BluetoothTileDialogCallback,
-            dimissListener: Runnable,
+            dismissListener: Runnable,
         ): BluetoothTileDialogDelegate
     }
 
diff --git a/packages/SystemUI/src/com/android/systemui/common/data/repository/PackageInstallerMonitor.kt b/packages/SystemUI/src/com/android/systemui/common/data/repository/PackageInstallerMonitor.kt
index 208adc2..5f7dca8 100644
--- a/packages/SystemUI/src/com/android/systemui/common/data/repository/PackageInstallerMonitor.kt
+++ b/packages/SystemUI/src/com/android/systemui/common/data/repository/PackageInstallerMonitor.kt
@@ -64,15 +64,14 @@
                         synchronized(sessions) {
                             sessions.putAll(
                                 packageInstaller.allSessions
-                                    .filter { !TextUtils.isEmpty(it.appPackageName) }
-                                    .map { session -> session.toModel() }
+                                    .mapNotNull { session -> session.toModel() }
                                     .associateBy { it.sessionId }
                             )
                             updateInstallerSessionsFlow()
                         }
                         packageInstaller.registerSessionCallback(
                             this@PackageInstallerMonitor,
-                            bgHandler
+                            bgHandler,
                         )
                     } else {
                         synchronized(sessions) {
@@ -130,7 +129,7 @@
             if (session == null) {
                 sessions.remove(sessionId)
             } else {
-                sessions[sessionId] = session.toModel()
+                session.toModel()?.apply { sessions[sessionId] = this }
             }
             updateInstallerSessionsFlow()
         }
@@ -144,7 +143,11 @@
     companion object {
         const val TAG = "PackageInstallerMonitor"
 
-        private fun PackageInstaller.SessionInfo.toModel(): PackageInstallSession {
+        private fun PackageInstaller.SessionInfo.toModel(): PackageInstallSession? {
+            if (TextUtils.isEmpty(this.appPackageName)) {
+                return null
+            }
+
             return PackageInstallSession(
                 sessionId = this.sessionId,
                 packageName = this.appPackageName,
diff --git a/packages/SystemUI/src/com/android/systemui/common/shared/colors/SurfaceEffectColors.kt b/packages/SystemUI/src/com/android/systemui/common/shared/colors/SurfaceEffectColors.kt
index 5e8c21f9..4451f07 100644
--- a/packages/SystemUI/src/com/android/systemui/common/shared/colors/SurfaceEffectColors.kt
+++ b/packages/SystemUI/src/com/android/systemui/common/shared/colors/SurfaceEffectColors.kt
@@ -16,23 +16,27 @@
 
 package com.android.systemui.common.shared.colors
 
-import android.content.res.Resources
+import android.content.Context
 
 object SurfaceEffectColors {
     @JvmStatic
-    fun surfaceEffect0(r: Resources): Int {
-        return r.getColor(com.android.internal.R.color.surface_effect_0)
+    fun surfaceEffect0(context: Context): Int {
+        return context.resources.getColor(
+            com.android.internal.R.color.surface_effect_0, context.theme)
     }
     @JvmStatic
-    fun surfaceEffect1(r: Resources): Int {
-        return r.getColor(com.android.internal.R.color.surface_effect_1)
+    fun surfaceEffect1(context: Context): Int {
+        return context.resources.getColor(
+            com.android.internal.R.color.surface_effect_1, context.theme)
     }
     @JvmStatic
-    fun surfaceEffect2(r: Resources): Int {
-        return r.getColor(com.android.internal.R.color.surface_effect_2)
+    fun surfaceEffect2(context: Context): Int {
+        return context.resources.getColor(
+            com.android.internal.R.color.surface_effect_2, context.theme)
     }
     @JvmStatic
-    fun surfaceEffect3(r: Resources): Int {
-        return r.getColor(com.android.internal.R.color.surface_effect_3)
+    fun surfaceEffect3(context: Context): Int {
+        return context.resources.getColor(
+            com.android.internal.R.color.surface_effect_3, context.theme)
     }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/communal/CommunalOngoingContentStartable.kt b/packages/SystemUI/src/com/android/systemui/communal/CommunalOngoingContentStartable.kt
index 48a6d9d..7765d00 100644
--- a/packages/SystemUI/src/com/android/systemui/communal/CommunalOngoingContentStartable.kt
+++ b/packages/SystemUI/src/com/android/systemui/communal/CommunalOngoingContentStartable.kt
@@ -16,7 +16,9 @@
 
 package com.android.systemui.communal
 
+import com.android.app.tracing.coroutines.launchTraced as launch
 import com.android.systemui.CoreStartable
+import com.android.systemui.communal.dagger.CommunalModule.Companion.SHOW_UMO
 import com.android.systemui.communal.data.repository.CommunalMediaRepository
 import com.android.systemui.communal.data.repository.CommunalSmartspaceRepository
 import com.android.systemui.communal.domain.interactor.CommunalInteractor
@@ -24,8 +26,8 @@
 import com.android.systemui.dagger.SysUISingleton
 import com.android.systemui.dagger.qualifiers.Background
 import javax.inject.Inject
+import javax.inject.Named
 import kotlinx.coroutines.CoroutineScope
-import com.android.app.tracing.coroutines.launchTraced as launch
 
 @SysUISingleton
 class CommunalOngoingContentStartable
@@ -36,6 +38,7 @@
     private val communalMediaRepository: CommunalMediaRepository,
     private val communalSettingsInteractor: CommunalSettingsInteractor,
     private val communalSmartspaceRepository: CommunalSmartspaceRepository,
+    @Named(SHOW_UMO) private val showUmoOnHub: Boolean,
 ) : CoreStartable {
 
     override fun start() {
@@ -46,10 +49,14 @@
         bgScope.launch {
             communalInteractor.isCommunalEnabled.collect { enabled ->
                 if (enabled) {
-                    communalMediaRepository.startListening()
+                    if (showUmoOnHub) {
+                        communalMediaRepository.startListening()
+                    }
                     communalSmartspaceRepository.startListening()
                 } else {
-                    communalMediaRepository.stopListening()
+                    if (showUmoOnHub) {
+                        communalMediaRepository.stopListening()
+                    }
                     communalSmartspaceRepository.stopListening()
                 }
             }
diff --git a/packages/SystemUI/src/com/android/systemui/communal/dagger/CommunalModule.kt b/packages/SystemUI/src/com/android/systemui/communal/dagger/CommunalModule.kt
index ff74162..bb3be53 100644
--- a/packages/SystemUI/src/com/android/systemui/communal/dagger/CommunalModule.kt
+++ b/packages/SystemUI/src/com/android/systemui/communal/dagger/CommunalModule.kt
@@ -105,6 +105,7 @@
         const val LOGGABLE_PREFIXES = "loggable_prefixes"
         const val LAUNCHER_PACKAGE = "launcher_package"
         const val SWIPE_TO_HUB = "swipe_to_hub"
+        const val SHOW_UMO = "show_umo"
 
         @Provides
         @Communal
@@ -150,5 +151,11 @@
         fun provideSwipeToHub(@Main resources: Resources): Boolean {
             return resources.getBoolean(R.bool.config_swipeToOpenGlanceableHub)
         }
+
+        @Provides
+        @Named(SHOW_UMO)
+        fun provideShowUmo(@Main resources: Resources): Boolean {
+            return resources.getBoolean(R.bool.config_showUmoOnHub)
+        }
     }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/communal/data/repository/CommunalSettingsRepositoryModule.kt b/packages/SystemUI/src/com/android/systemui/communal/data/repository/CommunalSettingsRepositoryModule.kt
index 0f25225..c6708d4 100644
--- a/packages/SystemUI/src/com/android/systemui/communal/data/repository/CommunalSettingsRepositoryModule.kt
+++ b/packages/SystemUI/src/com/android/systemui/communal/data/repository/CommunalSettingsRepositoryModule.kt
@@ -17,6 +17,7 @@
 package com.android.systemui.communal.data.repository
 
 import com.android.systemui.Flags.glanceableHubBlurredBackground
+import com.android.systemui.Flags.glanceableHubV2
 import com.android.systemui.communal.shared.model.CommunalBackgroundType
 import dagger.Binds
 import dagger.Module
@@ -35,6 +36,10 @@
                 return CommunalBackgroundType.BLUR
             }
 
+            if (glanceableHubV2()) {
+                return CommunalBackgroundType.SCRIM
+            }
+
             return CommunalBackgroundType.ANIMATED
         }
     }
diff --git a/packages/SystemUI/src/com/android/systemui/communal/shared/model/CommunalBackgroundType.kt b/packages/SystemUI/src/com/android/systemui/communal/shared/model/CommunalBackgroundType.kt
index e1128ed..a84fa79 100644
--- a/packages/SystemUI/src/com/android/systemui/communal/shared/model/CommunalBackgroundType.kt
+++ b/packages/SystemUI/src/com/android/systemui/communal/shared/model/CommunalBackgroundType.kt
@@ -17,10 +17,11 @@
 package com.android.systemui.communal.shared.model
 
 /** Models the types of background that can be shown on the hub. */
-enum class CommunalBackgroundType(val value: Int) {
-    STATIC(0),
-    STATIC_GRADIENT(1),
-    ANIMATED(2),
-    NONE(3),
-    BLUR(4),
+enum class CommunalBackgroundType(val value: Int, val opaque: Boolean) {
+    STATIC(value = 0, opaque = true),
+    STATIC_GRADIENT(value = 1, opaque = true),
+    ANIMATED(value = 2, opaque = true),
+    NONE(value = 3, opaque = false),
+    BLUR(value = 4, opaque = false),
+    SCRIM(value = 5, opaque = false),
 }
diff --git a/packages/SystemUI/src/com/android/systemui/communal/ui/viewmodel/CommunalTransitionViewModel.kt b/packages/SystemUI/src/com/android/systemui/communal/ui/viewmodel/CommunalTransitionViewModel.kt
index 0cbbfd4..db5c7eb 100644
--- a/packages/SystemUI/src/com/android/systemui/communal/ui/viewmodel/CommunalTransitionViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/communal/ui/viewmodel/CommunalTransitionViewModel.kt
@@ -19,6 +19,7 @@
 import android.graphics.Color
 import com.android.systemui.communal.domain.interactor.CommunalInteractor
 import com.android.systemui.communal.domain.interactor.CommunalSceneInteractor
+import com.android.systemui.communal.domain.interactor.CommunalSettingsInteractor
 import com.android.systemui.communal.shared.model.CommunalScenes
 import com.android.systemui.communal.util.CommunalColors
 import com.android.systemui.dagger.SysUISingleton
@@ -40,6 +41,7 @@
 import kotlinx.coroutines.flow.Flow
 import kotlinx.coroutines.flow.SharingStarted
 import kotlinx.coroutines.flow.combine
+import kotlinx.coroutines.flow.distinctUntilChanged
 import kotlinx.coroutines.flow.filter
 import kotlinx.coroutines.flow.flowOf
 import kotlinx.coroutines.flow.map
@@ -60,6 +62,7 @@
     glanceableHubToDreamTransitionViewModel: GlanceableHubToDreamingTransitionViewModel,
     communalInteractor: CommunalInteractor,
     private val communalSceneInteractor: CommunalSceneInteractor,
+    communalSettingsInteractor: CommunalSettingsInteractor,
     keyguardTransitionInteractor: KeyguardTransitionInteractor,
 ) {
     /**
@@ -146,13 +149,16 @@
             }
 
     val recentsBackgroundColor: Flow<Color?> =
-        combine(showCommunalFromOccluded, communalColors.backgroundColor) {
-            showCommunalFromOccluded,
-            backgroundColor ->
-            if (showCommunalFromOccluded) {
-                backgroundColor
-            } else {
-                null
+        combine(
+                showCommunalFromOccluded,
+                communalColors.backgroundColor,
+                communalSettingsInteractor.communalBackground,
+            ) { showCommunalFromOccluded, backgroundColor, backgroundType ->
+                if (showCommunalFromOccluded && backgroundType.opaque) {
+                    backgroundColor
+                } else {
+                    null
+                }
             }
-        }
+            .distinctUntilChanged()
 }
diff --git a/packages/SystemUI/src/com/android/systemui/display/data/repository/DisplayRepository.kt b/packages/SystemUI/src/com/android/systemui/display/data/repository/DisplayRepository.kt
index d464200..721d116 100644
--- a/packages/SystemUI/src/com/android/systemui/display/data/repository/DisplayRepository.kt
+++ b/packages/SystemUI/src/com/android/systemui/display/data/repository/DisplayRepository.kt
@@ -26,14 +26,16 @@
 import android.os.Handler
 import android.util.Log
 import android.view.Display
+import android.view.IWindowManager
 import com.android.app.tracing.FlowTracing.traceEach
 import com.android.app.tracing.traceSection
-import com.android.systemui.common.coroutine.ConflatedCallbackFlow.conflatedCallbackFlow
 import com.android.systemui.dagger.SysUISingleton
 import com.android.systemui.dagger.qualifiers.Background
 import com.android.systemui.display.data.DisplayEvent
+import com.android.systemui.statusbar.CommandQueue
 import com.android.systemui.util.Compile
 import com.android.systemui.util.kotlin.pairwiseBy
+import com.android.systemui.utils.coroutines.flow.conflatedCallbackFlow
 import javax.inject.Inject
 import kotlinx.coroutines.CoroutineDispatcher
 import kotlinx.coroutines.CoroutineScope
@@ -43,6 +45,7 @@
 import kotlinx.coroutines.flow.SharingStarted
 import kotlinx.coroutines.flow.StateFlow
 import kotlinx.coroutines.flow.asFlow
+import kotlinx.coroutines.flow.callbackFlow
 import kotlinx.coroutines.flow.combine
 import kotlinx.coroutines.flow.distinctUntilChanged
 import kotlinx.coroutines.flow.filter
@@ -50,12 +53,13 @@
 import kotlinx.coroutines.flow.flatMapLatest
 import kotlinx.coroutines.flow.flowOn
 import kotlinx.coroutines.flow.map
+import kotlinx.coroutines.flow.merge
 import kotlinx.coroutines.flow.onEach
 import kotlinx.coroutines.flow.onStart
 import kotlinx.coroutines.flow.scan
 import kotlinx.coroutines.flow.stateIn
 
-/** Provides a [Flow] of [Display] as returned by [DisplayManager]. */
+/** Repository for providing access to display related information and events. */
 interface DisplayRepository {
     /** Display change event indicating a change to the given displayId has occurred. */
     val displayChangeEvent: Flow<Int>
@@ -66,6 +70,9 @@
     /** Display removal event indicating a display has been removed. */
     val displayRemovalEvent: Flow<Int>
 
+    /** A [StateFlow] that maintains a set of display IDs that should have system decorations. */
+    val displayIdsWithSystemDecorations: StateFlow<Set<Int>>
+
     /**
      * Provides the current set of displays.
      *
@@ -124,6 +131,8 @@
 @Inject
 constructor(
     private val displayManager: DisplayManager,
+    private val commandQueue: CommandQueue,
+    private val windowManager: IWindowManager,
     @Background backgroundHandler: Handler,
     @Background bgApplicationScope: CoroutineScope,
     @Background backgroundCoroutineDispatcher: CoroutineDispatcher,
@@ -426,6 +435,56 @@
             .map { it.resultSet }
     }
 
+    private val decorationEvents: Flow<Event> = callbackFlow {
+        val callback =
+            object : CommandQueue.Callbacks {
+                override fun onDisplayAddSystemDecorations(displayId: Int) {
+                    trySend(Event.Add(displayId))
+                }
+
+                override fun onDisplayRemoveSystemDecorations(displayId: Int) {
+                    trySend(Event.Remove(displayId))
+                }
+            }
+        commandQueue.addCallback(callback)
+        awaitClose { commandQueue.removeCallback(callback) }
+    }
+
+    private val initialDisplayIdsWithDecorations: Set<Int> =
+        displayIds.value.filter { windowManager.shouldShowSystemDecors(it) }.toSet()
+
+    /**
+     * A [StateFlow] that maintains a set of display IDs that should have system decorations.
+     *
+     * Updates to the set are triggered by:
+     * - Adding displays via [CommandQueue.Callbacks.onDisplayAddSystemDecorations].
+     * - Removing displays via [CommandQueue.Callbacks.onDisplayRemoveSystemDecorations].
+     * - Removing displays via [displayRemovalEvent] emissions.
+     *
+     * The set is initialized with displays that qualify for system decorations based on
+     * [WindowManager.shouldShowSystemDecors].
+     */
+    override val displayIdsWithSystemDecorations: StateFlow<Set<Int>> =
+        merge(decorationEvents, displayRemovalEvent.map { Event.Remove(it) })
+            .scan(initialDisplayIdsWithDecorations) { displayIds: Set<Int>, event: Event ->
+                when (event) {
+                    is Event.Add -> displayIds + event.displayId
+                    is Event.Remove -> displayIds - event.displayId
+                }
+            }
+            .distinctUntilChanged()
+            .stateIn(
+                scope = bgApplicationScope,
+                started = SharingStarted.WhileSubscribed(),
+                initialValue = initialDisplayIdsWithDecorations,
+            )
+
+    private sealed class Event(val displayId: Int) {
+        class Add(displayId: Int) : Event(displayId)
+
+        class Remove(displayId: Int) : Event(displayId)
+    }
+
     private companion object {
         const val TAG = "DisplayRepository"
         val DEBUG = Log.isLoggable(TAG, Log.DEBUG) || Compile.IS_DEBUG
diff --git a/packages/SystemUI/src/com/android/systemui/flags/FlagDependencies.kt b/packages/SystemUI/src/com/android/systemui/flags/FlagDependencies.kt
index 2650159..15a4722 100644
--- a/packages/SystemUI/src/com/android/systemui/flags/FlagDependencies.kt
+++ b/packages/SystemUI/src/com/android/systemui/flags/FlagDependencies.kt
@@ -29,8 +29,6 @@
 import com.android.systemui.statusbar.notification.collection.SortBySectionTimeFlag
 import com.android.systemui.statusbar.notification.emptyshade.shared.ModesEmptyShadeFix
 import com.android.systemui.statusbar.notification.interruption.VisualInterruptionRefactor
-import com.android.systemui.statusbar.notification.promoted.PromotedNotificationUi
-import com.android.systemui.statusbar.notification.promoted.PromotedNotificationUiAod
 import com.android.systemui.statusbar.notification.shared.NotificationAvalancheSuppression
 import com.android.systemui.statusbar.notification.shared.NotificationMinimalism
 import com.android.systemui.statusbar.notification.shared.NotificationThrottleHun
@@ -52,8 +50,6 @@
         NotificationMinimalism.token dependsOn NotificationThrottleHun.token
         ModesEmptyShadeFix.token dependsOn modesUi
 
-        PromotedNotificationUiAod.token dependsOn PromotedNotificationUi.token
-
         // SceneContainer dependencies
         SceneContainerFlag.getFlagDependencies().forEach { (alpha, beta) -> alpha dependsOn beta }
     }
diff --git a/packages/SystemUI/src/com/android/systemui/flags/Flags.kt b/packages/SystemUI/src/com/android/systemui/flags/Flags.kt
index d9d3995..84bb231 100644
--- a/packages/SystemUI/src/com/android/systemui/flags/Flags.kt
+++ b/packages/SystemUI/src/com/android/systemui/flags/Flags.kt
@@ -160,9 +160,6 @@
     // TODO(b/291315866): Tracking Bug
     @JvmField val SIGNAL_CALLBACK_DEPRECATION = releasedFlag("signal_callback_deprecation")
 
-    // TODO(b/301610137): Tracking bug
-    @JvmField val NEW_NETWORK_SLICE_UI = releasedFlag("new_network_slice_ui")
-
     // TODO(b/311222557): Tracking bug
     val ROAMING_INDICATOR_VIA_DISPLAY_INFO = releasedFlag("roaming_indicator_via_display_info")
 
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java
index efa9c21..cc0efbc 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java
@@ -241,7 +241,7 @@
  * directly to the keyguard UI is posted to a {@link android.os.Handler} to ensure it is taken on the UI
  * thread of the keyguard.
  */
-public class KeyguardViewMediator implements CoreStartable, Dumpable,
+public class KeyguardViewMediator implements CoreStartable,
         StatusBarStateController.StateListener {
 
     private static final boolean ENABLE_NEW_KEYGUARD_SHELL_TRANSITIONS =
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromDozingTransitionInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromDozingTransitionInteractor.kt
index 0700ec6..6f5f662 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromDozingTransitionInteractor.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromDozingTransitionInteractor.kt
@@ -159,7 +159,6 @@
                     val isKeyguardOccludedLegacy = keyguardInteractor.isKeyguardOccluded.value
                     val primaryBouncerShowing = keyguardInteractor.primaryBouncerShowing.value
                     val isKeyguardGoingAway = keyguardInteractor.isKeyguardGoingAway.value
-                    val canStartDreaming = dreamManager.canStartDreaming(false)
 
                     if (!deviceEntryInteractor.isLockscreenEnabled()) {
                         if (!SceneContainerFlag.isEnabled) {
@@ -192,13 +191,6 @@
                         if (!SceneContainerFlag.isEnabled) {
                             transitionToGlanceableHub()
                         }
-                    } else if (canStartDreaming) {
-                        // If we're waking up to dream, transition directly to dreaming without
-                        // showing the lockscreen.
-                        startTransitionTo(
-                            KeyguardState.DREAMING,
-                            ownerReason = "moving from doze to dream",
-                        )
                     } else {
                         startTransitionTo(KeyguardState.LOCKSCREEN)
                     }
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardBlueprintViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardBlueprintViewBinder.kt
index 5c4e34e..fc5914b 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardBlueprintViewBinder.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardBlueprintViewBinder.kt
@@ -22,6 +22,7 @@
 import androidx.lifecycle.Lifecycle
 import androidx.lifecycle.repeatOnLifecycle
 import com.android.app.tracing.coroutines.launchTraced as launch
+import com.android.systemui.Flags
 import com.android.systemui.customization.R as customR
 import com.android.systemui.keyguard.shared.model.KeyguardBlueprint
 import com.android.systemui.keyguard.ui.view.layout.blueprints.transitions.IntraBlueprintTransition
@@ -81,6 +82,12 @@
 
                             logger.logConstraintSet(cs, clockViewModel)
                             cs.applyTo(constraintLayout)
+                            if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                                manuallySetDateWeatherConstraintsOnConstraintLayout(
+                                    cs,
+                                    constraintLayout,
+                                )
+                            }
                         }
                     }
                 }
@@ -104,6 +111,12 @@
                                 }
                             logger.logConstraintSet(cs, clockViewModel)
                             cs.applyTo(constraintLayout)
+                            if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                                manuallySetDateWeatherConstraintsOnConstraintLayout(
+                                    cs,
+                                    constraintLayout,
+                                )
+                            }
                         }
                     }
                 }
@@ -111,6 +124,24 @@
         }
     }
 
+    private fun manuallySetDateWeatherConstraintsOnConstraintLayout(
+        cs: ConstraintSet,
+        constraintLayout: ConstraintLayout,
+    ) {
+        val ids =
+            listOf(
+                sharedR.id.date_smartspace_view,
+                sharedR.id.date_smartspace_view_large,
+                sharedR.id.weather_smartspace_view,
+                sharedR.id.weather_smartspace_view_large,
+            )
+
+        for (i in ids) {
+            constraintLayout.getViewById(i)?.visibility = cs.getVisibility(i)
+            constraintLayout.getViewById(i)?.alpha = cs.getConstraint(i).propertySet.alpha
+        }
+    }
+
     private fun Logger.logConstraintSet(cs: ConstraintSet, viewModel: KeyguardClockViewModel) {
         val currentClock = viewModel.currentClock.value
         if (currentClock == null) return
@@ -137,6 +168,24 @@
             int1 = cs.getVisibility(smartspaceDateId)
             str1 = "${cs.getConstraint(smartspaceDateId).propertySet.alpha}"
         }
+
+        if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+            this.i({ "applyCsToSmartspaceWeather: vis=${getVisText(int1)}; alpha=$str1" }) {
+                val smartspaceDateId = sharedR.id.weather_smartspace_view
+                int1 = cs.getVisibility(smartspaceDateId)
+                str1 = "${cs.getConstraint(smartspaceDateId).propertySet.alpha}"
+            }
+            this.i({ "applyCsToSmartspaceDateLarge: vis=${getVisText(int1)}; alpha=$str1" }) {
+                val smartspaceDateId = sharedR.id.date_smartspace_view_large
+                int1 = cs.getVisibility(smartspaceDateId)
+                str1 = "${cs.getConstraint(smartspaceDateId).propertySet.alpha}"
+            }
+            this.i({ "applyCsToSmartspaceWeatherLarge: vis=${getVisText(int1)}; alpha=$str1" }) {
+                val smartspaceDateId = sharedR.id.weather_smartspace_view_large
+                int1 = cs.getVisibility(smartspaceDateId)
+                str1 = "${cs.getConstraint(smartspaceDateId).propertySet.alpha}"
+            }
+        }
     }
 
     private val TAG = "KeyguardBlueprintViewBinder"
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardClockViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardClockViewBinder.kt
index 0a958e9..a5b303a 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardClockViewBinder.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardClockViewBinder.kt
@@ -72,25 +72,25 @@
                     // When changing to new clock, we need to remove old views from burnInLayer
                     var lastClock: ClockController? = null
                     launch {
-                            viewModel.currentClock.collect { currentClock ->
-                                if (lastClock != currentClock) {
-                                    cleanupClockViews(
-                                        lastClock,
-                                        keyguardRootView,
-                                        viewModel.burnInLayer,
-                                    )
-                                    lastClock = currentClock
-                                }
-
-                                addClockViews(currentClock, keyguardRootView)
-                                updateBurnInLayer(
+                        viewModel.currentClock.collect { currentClock ->
+                            if (lastClock != currentClock) {
+                                cleanupClockViews(
+                                    lastClock,
                                     keyguardRootView,
-                                    viewModel,
-                                    viewModel.clockSize.value,
+                                    viewModel.burnInLayer,
                                 )
-                                applyConstraints(clockSection, keyguardRootView, true)
+                                lastClock = currentClock
                             }
+
+                            addClockViews(currentClock, keyguardRootView)
+                            updateBurnInLayer(
+                                keyguardRootView,
+                                viewModel,
+                                viewModel.clockSize.value,
+                            )
+                            applyConstraints(clockSection, keyguardRootView, true)
                         }
+                    }
                         .invokeOnCompletion {
                             cleanupClockViews(lastClock, keyguardRootView, viewModel.burnInLayer)
                             lastClock = null
@@ -106,12 +106,7 @@
                     launch {
                         viewModel.clockShouldBeCentered.collect {
                             viewModel.currentClock.value?.let {
-                                // TODO(b/301502635): remove "!it.config.useCustomClockScene" when
-                                // migrate clocks to blueprint is fully rolled out
-                                if (
-                                    it.largeClock.config.hasCustomPositionUpdatedAnimation &&
-                                        !it.config.useCustomClockScene
-                                ) {
+                                if (it.largeClock.config.hasCustomPositionUpdatedAnimation) {
                                     blueprintInteractor.refreshBlueprint(Type.DefaultClockStepping)
                                 } else {
                                     blueprintInteractor.refreshBlueprint(Type.DefaultTransition)
@@ -122,11 +117,11 @@
 
                     launch {
                         combine(
-                                viewModel.hasAodIcons,
-                                rootViewModel.isNotifIconContainerVisible.map { it.value },
-                            ) { hasIcon, isVisible ->
-                                hasIcon && isVisible
-                            }
+                            viewModel.hasAodIcons,
+                            rootViewModel.isNotifIconContainerVisible.map { it.value },
+                        ) { hasIcon, isVisible ->
+                            hasIcon && isVisible
+                        }
                             .distinctUntilChanged()
                             .collect { _ ->
                                 viewModel.currentClock.value?.let {
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardPreviewClockViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardPreviewClockViewBinder.kt
index d3b76a5..a42682b 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardPreviewClockViewBinder.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardPreviewClockViewBinder.kt
@@ -36,6 +36,7 @@
 import com.android.systemui.plugins.clocks.ClockController
 import com.android.systemui.plugins.clocks.ClockPreviewConfig
 import com.android.systemui.shared.clocks.ClockRegistry
+import kotlinx.coroutines.flow.combine
 
 /** Binder for the small clock view, large clock view. */
 object KeyguardPreviewClockViewBinder {
@@ -76,38 +77,39 @@
             repeatOnLifecycle(Lifecycle.State.STARTED) {
                 var lastClock: ClockController? = null
                 launch("$TAG#viewModel.previewClock") {
-                        viewModel.previewClock.collect { currentClock ->
-                            lastClock?.let { clock ->
-                                (clock.largeClock.layout.views + clock.smallClock.layout.views)
-                                    .forEach { rootView.removeView(it) }
-                            }
-                            lastClock = currentClock
-                            updateClockAppearance(
-                                currentClock,
-                                clockPreviewConfig.context.resources,
-                            )
+                        combine(viewModel.previewClock, viewModel.selectedClockSize, ::Pair)
+                            .collect { (currentClock, clockSize) ->
+                                lastClock?.let { clock ->
+                                    (clock.largeClock.layout.views + clock.smallClock.layout.views)
+                                        .forEach { rootView.removeView(it) }
+                                }
+                                lastClock = currentClock
+                                updateClockAppearance(
+                                    currentClock,
+                                    clockPreviewConfig.context.resources,
+                                )
 
-                            if (viewModel.shouldHighlightSelectedAffordance) {
-                                (currentClock.largeClock.layout.views +
-                                        currentClock.smallClock.layout.views)
-                                    .forEach { it.alpha = KeyguardPreviewRenderer.DIM_ALPHA }
-                            }
-                            currentClock.largeClock.layout.views.forEach {
-                                (it.parent as? ViewGroup)?.removeView(it)
-                                rootView.addView(it)
-                            }
+                                if (viewModel.shouldHighlightSelectedAffordance) {
+                                    (currentClock.largeClock.layout.views +
+                                            currentClock.smallClock.layout.views)
+                                        .forEach { it.alpha = KeyguardPreviewRenderer.DIM_ALPHA }
+                                }
+                                currentClock.largeClock.layout.views.forEach {
+                                    (it.parent as? ViewGroup)?.removeView(it)
+                                    rootView.addView(it)
+                                }
 
-                            currentClock.smallClock.layout.views.forEach {
-                                (it.parent as? ViewGroup)?.removeView(it)
-                                rootView.addView(it)
+                                currentClock.smallClock.layout.views.forEach {
+                                    (it.parent as? ViewGroup)?.removeView(it)
+                                    rootView.addView(it)
+                                }
+                                applyPreviewConstraints(
+                                    clockPreviewConfig,
+                                    rootView,
+                                    currentClock,
+                                    clockSize,
+                                )
                             }
-                            applyPreviewConstraints(
-                                clockPreviewConfig,
-                                rootView,
-                                currentClock,
-                                viewModel,
-                            )
-                        }
                     }
                     .invokeOnCompletion {
                         // recover seed color especially for Transit clock
@@ -133,7 +135,7 @@
         clockPreviewConfig: ClockPreviewConfig,
         rootView: ConstraintLayout,
         previewClock: ClockController,
-        viewModel: KeyguardPreviewClockViewModel,
+        clockSize: ClockSizeSetting?,
     ) {
         val cs = ConstraintSet().apply { clone(rootView) }
 
@@ -147,16 +149,15 @@
         previewClock.largeClock.layout.applyPreviewConstraints(configWithUpdatedLockId, cs)
         previewClock.smallClock.layout.applyPreviewConstraints(configWithUpdatedLockId, cs)
 
-        // When selectedClockSize is the initial value, make both clocks invisible to avoid
-        // flickering
+        // When selectedClockSize is the initial value, make both clocks invisible to avoid flicker
         val largeClockVisibility =
-            when (viewModel.selectedClockSize.value) {
+            when (clockSize) {
                 ClockSizeSetting.DYNAMIC -> VISIBLE
                 ClockSizeSetting.SMALL -> INVISIBLE
                 null -> INVISIBLE
             }
         val smallClockVisibility =
-            when (viewModel.selectedClockSize.value) {
+            when (clockSize) {
                 ClockSizeSetting.DYNAMIC -> INVISIBLE
                 ClockSizeSetting.SMALL -> VISIBLE
                 null -> INVISIBLE
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardRootViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardRootViewBinder.kt
index c7791cd..45801ba 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardRootViewBinder.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardRootViewBinder.kt
@@ -69,6 +69,7 @@
 import com.android.systemui.res.R
 import com.android.systemui.scene.shared.flag.SceneContainerFlag
 import com.android.systemui.shade.domain.interactor.ShadeInteractor
+import com.android.systemui.shared.R as sharedR
 import com.android.systemui.statusbar.CrossFadeHelper
 import com.android.systemui.statusbar.VibratorHelper
 import com.android.systemui.statusbar.phone.ScreenOffAnimationController
@@ -88,7 +89,6 @@
 import kotlinx.coroutines.CoroutineDispatcher
 import kotlinx.coroutines.DisposableHandle
 import kotlinx.coroutines.flow.MutableStateFlow
-import kotlinx.coroutines.flow.filterNotNull
 import kotlinx.coroutines.flow.stateIn
 import kotlinx.coroutines.flow.update
 
@@ -188,6 +188,10 @@
                         viewModel.translationY.collect { y ->
                             childViews[burnInLayerId]?.translationY = y
                             childViews[largeClockId]?.translationY = y
+                            if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                                childViews[largeClockDateId]?.translationY = y
+                                childViews[largeClockWeatherId]?.translationY = y
+                            }
                             childViews[aodPromotedNotificationId]?.translationY = y
                             childViews[aodNotificationIconContainerId]?.translationY = y
                         }
@@ -203,6 +207,7 @@
                                     childViews[aodPromotedNotificationId]?.translationX = px
                                     childViews[aodNotificationIconContainerId]?.translationX = px
                                 }
+
                                 state.isToOrFrom(KeyguardState.GLANCEABLE_HUB) -> {
                                     for ((key, childView) in childViews.entries) {
                                         when (key) {
@@ -212,6 +217,7 @@
                                             deviceEntryIcon -> {
                                                 // Do not move these views
                                             }
+
                                             else -> childView.translationX = px
                                         }
                                     }
@@ -374,17 +380,9 @@
                     if (wallpaperFocalAreaViewModel.hasFocalArea.value) {
                         launch {
                             wallpaperFocalAreaViewModel.wallpaperFocalAreaBounds.collect {
-                                wallpaperFocalAreaBounds ->
-                                wallpaperFocalAreaViewModel.setFocalAreaBounds(
-                                    wallpaperFocalAreaBounds
-                                )
+                                wallpaperFocalAreaViewModel.setFocalAreaBounds(it)
                             }
                         }
-                        launch {
-                            wallpaperFocalAreaViewModel.wallpaperFocalAreaBounds
-                                .filterNotNull()
-                                .collect { wallpaperFocalAreaViewModel.setFocalAreaBounds(it) }
-                        }
                     }
                 }
             }
@@ -582,6 +580,8 @@
     private val aodPromotedNotificationId = AodPromotedNotificationSection.viewId
     private val aodNotificationIconContainerId = R.id.aod_notification_icon_container
     private val largeClockId = customR.id.lockscreen_clock_view_large
+    private val largeClockDateId = sharedR.id.date_smartspace_view_large
+    private val largeClockWeatherId = sharedR.id.weather_smartspace_view_large
     private val smallClockId = customR.id.lockscreen_clock_view
     private val indicationArea = R.id.keyguard_indication_area
     private val startButton = R.id.start_button
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardSmartspaceViewBinder.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardSmartspaceViewBinder.kt
index 9c886b2..def1ac8 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardSmartspaceViewBinder.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardSmartspaceViewBinder.kt
@@ -26,6 +26,7 @@
 import com.android.systemui.keyguard.ui.view.layout.blueprints.transitions.IntraBlueprintTransition.Config
 import com.android.systemui.keyguard.ui.view.layout.blueprints.transitions.IntraBlueprintTransition.Type
 import com.android.systemui.keyguard.ui.viewmodel.KeyguardClockViewModel
+import com.android.systemui.keyguard.ui.viewmodel.KeyguardRootViewModel
 import com.android.systemui.keyguard.ui.viewmodel.KeyguardSmartspaceViewModel
 import com.android.systemui.lifecycle.repeatWhenAttached
 import com.android.systemui.res.R
@@ -37,6 +38,7 @@
     @JvmStatic
     fun bind(
         keyguardRootView: ConstraintLayout,
+        keyguardRootViewModel: KeyguardRootViewModel,
         clockViewModel: KeyguardClockViewModel,
         smartspaceViewModel: KeyguardSmartspaceViewModel,
         blueprintInteractor: KeyguardBlueprintInteractor,
@@ -77,6 +79,26 @@
                         )
                     }
                 }
+
+                if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                    launch("$TAG#smartspaceViewModel.burnInLayerVisibility") {
+                        keyguardRootViewModel.burnInLayerVisibility.collect { visibility ->
+                            if (clockViewModel.isLargeClockVisible.value) {
+                                // hide small clock date/weather
+                                val dateView =
+                                    keyguardRootView.requireViewById<View>(
+                                        sharedR.id.date_smartspace_view
+                                    )
+                                dateView.visibility = View.GONE
+                                val weatherView =
+                                    keyguardRootView.requireViewById<View>(
+                                        sharedR.id.weather_smartspace_view
+                                    )
+                                weatherView.visibility = View.GONE
+                            }
+                        }
+                    }
+                }
             }
         }
     }
@@ -125,6 +147,11 @@
                 val dateView =
                     constraintLayout.requireViewById<View>(sharedR.id.date_smartspace_view)
                 addView(dateView)
+                if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                    val weatherView =
+                        constraintLayout.requireViewById<View>(sharedR.id.weather_smartspace_view)
+                    addView(weatherView)
+                }
             }
         }
     }
@@ -142,6 +169,11 @@
                 val dateView =
                     constraintLayout.requireViewById<View>(sharedR.id.date_smartspace_view)
                 removeView(dateView)
+                if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                    val weatherView =
+                        constraintLayout.requireViewById<View>(sharedR.id.weather_smartspace_view)
+                    removeView(weatherView)
+                }
             }
         }
     }
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/preview/KeyguardPreviewRenderer.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/preview/KeyguardPreviewRenderer.kt
index 85eae6e..242926b 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/preview/KeyguardPreviewRenderer.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/preview/KeyguardPreviewRenderer.kt
@@ -292,7 +292,11 @@
             parentView.removeView(smartSpaceView)
         }
 
-        smartSpaceView = lockscreenSmartspaceController.buildAndConnectDateView(parentView)
+        smartSpaceView =
+            lockscreenSmartspaceController.buildAndConnectDateView(
+                parent = parentView,
+                isLargeClock = false,
+            )
 
         val topPadding: Int =
             smartspaceViewModel.getLargeClockSmartspaceTopPadding(
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/layout/sections/ClockSection.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/layout/sections/ClockSection.kt
index 738fb73..8a33c64 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/layout/sections/ClockSection.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/layout/sections/ClockSection.kt
@@ -54,13 +54,13 @@
 internal fun ConstraintSet.setVisibility(views: Iterable<View>, visibility: Int) =
     views.forEach { view -> this.setVisibility(view.id, visibility) }
 
-internal fun ConstraintSet.setAlpha(views: Iterable<View>, alpha: Float) =
+private fun ConstraintSet.setAlpha(views: Iterable<View>, alpha: Float) =
     views.forEach { view -> this.setAlpha(view.id, alpha) }
 
-internal fun ConstraintSet.setScaleX(views: Iterable<View>, scaleX: Float) =
+private fun ConstraintSet.setScaleX(views: Iterable<View>, scaleX: Float) =
     views.forEach { view -> this.setScaleX(view.id, scaleX) }
 
-internal fun ConstraintSet.setScaleY(views: Iterable<View>, scaleY: Float) =
+private fun ConstraintSet.setScaleY(views: Iterable<View>, scaleY: Float) =
     views.forEach { view -> this.setScaleY(view.id, scaleY) }
 
 @SysUISingleton
@@ -119,8 +119,23 @@
             setVisibility(getNonTargetClockFace(clock).views, GONE)
             setAlpha(getTargetClockFace(clock).views, 1F)
             setAlpha(getNonTargetClockFace(clock).views, 0F)
+
             if (!keyguardClockViewModel.isLargeClockVisible.value) {
-                connect(sharedR.id.bc_smartspace_view, TOP, sharedR.id.date_smartspace_view, BOTTOM)
+                if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                    connect(
+                        sharedR.id.bc_smartspace_view,
+                        TOP,
+                        customR.id.lockscreen_clock_view,
+                        BOTTOM,
+                    )
+                } else {
+                    connect(
+                        sharedR.id.bc_smartspace_view,
+                        TOP,
+                        sharedR.id.date_smartspace_view,
+                        BOTTOM,
+                    )
+                }
             } else {
                 setScaleX(getTargetClockFace(clock).views, aodBurnInViewModel.movement.value.scale)
                 setScaleY(getTargetClockFace(clock).views, aodBurnInViewModel.movement.value.scale)
@@ -136,7 +151,7 @@
         if (keyguardClockViewModel.isLargeClockVisible.value) clock.smallClock.layout
         else clock.largeClock.layout
 
-    fun constrainWeatherClockDateIconsBarrier(constraints: ConstraintSet) {
+    private fun constrainWeatherClockDateIconsBarrier(constraints: ConstraintSet) {
         constraints.apply {
             createBarrier(
                 R.id.weather_clock_bc_smartspace_bottom,
@@ -182,9 +197,14 @@
                 TOP,
             )
             val largeClockTopMargin =
-                keyguardClockViewModel.getLargeClockTopMargin() +
-                    getDimen(DATE_WEATHER_VIEW_HEIGHT) +
-                    getDimen(ENHANCED_SMARTSPACE_HEIGHT)
+                if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                    keyguardClockViewModel.getLargeClockTopMargin() +
+                        getDimen(ENHANCED_SMARTSPACE_HEIGHT)
+                } else {
+                    keyguardClockViewModel.getLargeClockTopMargin() +
+                        getDimen(DATE_WEATHER_VIEW_HEIGHT) +
+                        getDimen(ENHANCED_SMARTSPACE_HEIGHT)
+                }
             connect(
                 customR.id.lockscreen_clock_view_large,
                 TOP,
@@ -224,7 +244,6 @@
             val smallClockBottom =
                 keyguardClockViewModel.getSmallClockTopMargin() +
                     context.resources.getDimensionPixelSize(customR.dimen.small_clock_height)
-            val dateWeatherSmartspaceHeight = getDimen(context, DATE_WEATHER_VIEW_HEIGHT).toFloat()
             val marginBetweenSmartspaceAndNotification =
                 context.resources.getDimensionPixelSize(
                     R.dimen.keyguard_status_view_bottom_margin
@@ -235,11 +254,19 @@
                         0
                     }
 
-            clockInteractor.setNotificationStackDefaultTop(
-                smallClockBottom +
-                    dateWeatherSmartspaceHeight +
-                    marginBetweenSmartspaceAndNotification
-            )
+            if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                clockInteractor.setNotificationStackDefaultTop(
+                    (smallClockBottom + marginBetweenSmartspaceAndNotification).toFloat()
+                )
+            } else {
+                val dateWeatherSmartspaceHeight =
+                    getDimen(context, DATE_WEATHER_VIEW_HEIGHT).toFloat()
+                clockInteractor.setNotificationStackDefaultTop(
+                    smallClockBottom +
+                        dateWeatherSmartspaceHeight +
+                        marginBetweenSmartspaceAndNotification
+                )
+            }
         }
 
         constrainWeatherClockDateIconsBarrier(constraints)
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/layout/sections/SmartspaceSection.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/layout/sections/SmartspaceSection.kt
index d6d03c7..37cc852f 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/layout/sections/SmartspaceSection.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/layout/sections/SmartspaceSection.kt
@@ -33,6 +33,7 @@
 import com.android.systemui.keyguard.shared.model.KeyguardSection
 import com.android.systemui.keyguard.ui.binder.KeyguardSmartspaceViewBinder
 import com.android.systemui.keyguard.ui.viewmodel.KeyguardClockViewModel
+import com.android.systemui.keyguard.ui.viewmodel.KeyguardRootViewModel
 import com.android.systemui.keyguard.ui.viewmodel.KeyguardSmartspaceViewModel
 import com.android.systemui.res.R as R
 import com.android.systemui.shade.ShadeDisplayAware
@@ -53,10 +54,13 @@
     val smartspaceController: LockscreenSmartspaceController,
     val keyguardUnlockAnimationController: KeyguardUnlockAnimationController,
     private val blueprintInteractor: Lazy<KeyguardBlueprintInteractor>,
+    private val keyguardRootViewModel: KeyguardRootViewModel,
 ) : KeyguardSection() {
     private var smartspaceView: View? = null
     private var weatherView: View? = null
-    private var dateWeatherView: ViewGroup? = null
+    private var dateView: ViewGroup? = null
+    private var weatherViewLargeClock: View? = null
+    private var dateViewLargeClock: View? = null
 
     private var smartspaceVisibilityListener: OnGlobalLayoutListener? = null
     private var pastVisibility: Int = -1
@@ -73,16 +77,33 @@
     override fun addViews(constraintLayout: ConstraintLayout) {
         if (!keyguardSmartspaceViewModel.isSmartspaceEnabled) return
         smartspaceView = smartspaceController.buildAndConnectView(constraintLayout)
-        weatherView = smartspaceController.buildAndConnectWeatherView(constraintLayout)
-        dateWeatherView =
-            smartspaceController.buildAndConnectDateView(constraintLayout) as ViewGroup
+        weatherView = smartspaceController.buildAndConnectWeatherView(constraintLayout, false)
+        dateView =
+            smartspaceController.buildAndConnectDateView(constraintLayout, false) as? ViewGroup
+        if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+            weatherViewLargeClock =
+                smartspaceController.buildAndConnectWeatherView(constraintLayout, true)
+            dateViewLargeClock =
+                smartspaceController.buildAndConnectDateView(constraintLayout, true)
+        }
         pastVisibility = smartspaceView?.visibility ?: View.GONE
         constraintLayout.addView(smartspaceView)
-        if (keyguardSmartspaceViewModel.isDateWeatherDecoupled) {
-            constraintLayout.addView(dateWeatherView)
-            // Place weather right after the date, before the extras (alarm and dnd)
-            val index = if (dateWeatherView?.childCount == 0) 0 else 1
-            dateWeatherView?.addView(weatherView, index)
+        if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+            dateView?.visibility = View.GONE
+            weatherView?.visibility = View.GONE
+            dateViewLargeClock?.visibility = View.GONE
+            weatherViewLargeClock?.visibility = View.GONE
+            constraintLayout.addView(dateView)
+            constraintLayout.addView(weatherView)
+            constraintLayout.addView(weatherViewLargeClock)
+            constraintLayout.addView(dateViewLargeClock)
+        } else {
+            if (keyguardSmartspaceViewModel.isDateWeatherDecoupled) {
+                constraintLayout.addView(dateView)
+                // Place weather right after the date, before the extras (alarm and dnd)
+                val index = if (dateView?.childCount == 0) 0 else 1
+                dateView?.addView(weatherView, index)
+            }
         }
         keyguardUnlockAnimationController.lockscreenSmartspace = smartspaceView
         smartspaceVisibilityListener = OnGlobalLayoutListener {
@@ -103,6 +124,7 @@
         disposableHandle =
             KeyguardSmartspaceViewBinder.bind(
                 constraintLayout,
+                keyguardRootViewModel,
                 keyguardClockViewModel,
                 keyguardSmartspaceViewModel,
                 blueprintInteractor.get(),
@@ -117,13 +139,15 @@
         constraintSet.apply {
             constrainHeight(sharedR.id.date_smartspace_view, ConstraintSet.WRAP_CONTENT)
             constrainWidth(sharedR.id.date_smartspace_view, ConstraintSet.WRAP_CONTENT)
-            connect(
-                sharedR.id.date_smartspace_view,
-                ConstraintSet.START,
-                ConstraintSet.PARENT_ID,
-                ConstraintSet.START,
-                dateWeatherPaddingStart,
-            )
+            if (!com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                connect(
+                    sharedR.id.date_smartspace_view,
+                    ConstraintSet.START,
+                    ConstraintSet.PARENT_ID,
+                    ConstraintSet.START,
+                    dateWeatherPaddingStart,
+                )
+            }
 
             constrainHeight(sharedR.id.bc_smartspace_view, ConstraintSet.WRAP_CONTENT)
             constrainWidth(sharedR.id.bc_smartspace_view, ConstraintSet.MATCH_CONSTRAINT)
@@ -142,51 +166,222 @@
                 ConstraintSet.END,
                 smartspaceHorizontalPadding,
             )
-
             if (keyguardClockViewModel.hasCustomWeatherDataDisplay.value) {
-                clear(sharedR.id.date_smartspace_view, ConstraintSet.TOP)
-                connect(
-                    sharedR.id.date_smartspace_view,
-                    ConstraintSet.BOTTOM,
-                    sharedR.id.bc_smartspace_view,
-                    ConstraintSet.TOP,
-                )
+                if (!com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                    clear(sharedR.id.date_smartspace_view, ConstraintSet.TOP)
+                    connect(
+                        sharedR.id.date_smartspace_view,
+                        ConstraintSet.BOTTOM,
+                        sharedR.id.bc_smartspace_view,
+                        ConstraintSet.TOP,
+                    )
+                }
             } else {
                 clear(sharedR.id.date_smartspace_view, ConstraintSet.BOTTOM)
-                connect(
-                    sharedR.id.date_smartspace_view,
-                    ConstraintSet.TOP,
-                    customR.id.lockscreen_clock_view,
-                    ConstraintSet.BOTTOM,
-                )
-                connect(
-                    sharedR.id.bc_smartspace_view,
-                    ConstraintSet.TOP,
-                    sharedR.id.date_smartspace_view,
-                    ConstraintSet.BOTTOM,
-                )
+                if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                    connect(
+                        sharedR.id.bc_smartspace_view,
+                        ConstraintSet.TOP,
+                        customR.id.lockscreen_clock_view,
+                        ConstraintSet.BOTTOM,
+                    )
+                } else {
+                    connect(
+                        sharedR.id.date_smartspace_view,
+                        ConstraintSet.TOP,
+                        customR.id.lockscreen_clock_view,
+                        ConstraintSet.BOTTOM,
+                    )
+                    connect(
+                        sharedR.id.bc_smartspace_view,
+                        ConstraintSet.TOP,
+                        sharedR.id.date_smartspace_view,
+                        ConstraintSet.BOTTOM,
+                    )
+                }
             }
 
-            createBarrier(
-                R.id.smart_space_barrier_top,
-                Barrier.TOP,
-                0,
-                *intArrayOf(sharedR.id.bc_smartspace_view, sharedR.id.date_smartspace_view),
-            )
+            if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                if (keyguardClockViewModel.isLargeClockVisible.value) {
+                    setVisibility(sharedR.id.weather_smartspace_view, GONE)
+                    setVisibility(sharedR.id.date_smartspace_view, GONE)
+                    constrainHeight(
+                        sharedR.id.date_smartspace_view_large,
+                        ConstraintSet.WRAP_CONTENT,
+                    )
+                    constrainWidth(
+                        sharedR.id.date_smartspace_view_large,
+                        ConstraintSet.WRAP_CONTENT,
+                    )
+                    constrainHeight(
+                        sharedR.id.weather_smartspace_view_large,
+                        ConstraintSet.WRAP_CONTENT,
+                    )
+                    constrainWidth(
+                        sharedR.id.weather_smartspace_view_large,
+                        ConstraintSet.WRAP_CONTENT,
+                    )
+                    connect(
+                        sharedR.id.date_smartspace_view_large,
+                        ConstraintSet.TOP,
+                        customR.id.lockscreen_clock_view_large,
+                        ConstraintSet.BOTTOM,
+                        dateWeatherPaddingStart,
+                    )
 
-            createBarrier(
-                R.id.smart_space_barrier_bottom,
-                Barrier.BOTTOM,
-                0,
-                *intArrayOf(sharedR.id.bc_smartspace_view, sharedR.id.date_smartspace_view),
-            )
+                    connect(
+                        sharedR.id.date_smartspace_view_large,
+                        ConstraintSet.START,
+                        customR.id.lockscreen_clock_view_large,
+                        ConstraintSet.START,
+                    )
+                    connect(
+                        sharedR.id.date_smartspace_view_large,
+                        ConstraintSet.END,
+                        sharedR.id.weather_smartspace_view_large,
+                        ConstraintSet.START,
+                    )
+
+                    connect(
+                        sharedR.id.weather_smartspace_view_large,
+                        ConstraintSet.BOTTOM,
+                        sharedR.id.date_smartspace_view_large,
+                        ConstraintSet.BOTTOM,
+                    )
+
+                    connect(
+                        sharedR.id.weather_smartspace_view_large,
+                        ConstraintSet.TOP,
+                        sharedR.id.date_smartspace_view_large,
+                        ConstraintSet.TOP,
+                    )
+
+                    connect(
+                        sharedR.id.weather_smartspace_view_large,
+                        ConstraintSet.START,
+                        sharedR.id.date_smartspace_view_large,
+                        ConstraintSet.END,
+                    )
+
+                    connect(
+                        sharedR.id.weather_smartspace_view_large,
+                        ConstraintSet.END,
+                        customR.id.lockscreen_clock_view_large,
+                        ConstraintSet.END,
+                    )
+
+                    setHorizontalChainStyle(
+                        sharedR.id.weather_smartspace_view_large,
+                        ConstraintSet.CHAIN_PACKED,
+                    )
+                    setHorizontalChainStyle(
+                        sharedR.id.date_smartspace_view_large,
+                        ConstraintSet.CHAIN_PACKED,
+                    )
+                } else {
+                    setVisibility(sharedR.id.weather_smartspace_view_large, GONE)
+                    setVisibility(sharedR.id.date_smartspace_view_large, GONE)
+                    constrainHeight(sharedR.id.date_smartspace_view, ConstraintSet.WRAP_CONTENT)
+                    constrainWidth(sharedR.id.date_smartspace_view, ConstraintSet.WRAP_CONTENT)
+                    constrainHeight(sharedR.id.weather_smartspace_view, ConstraintSet.WRAP_CONTENT)
+                    constrainWidth(sharedR.id.weather_smartspace_view, ConstraintSet.WRAP_CONTENT)
+
+                    connect(
+                        sharedR.id.date_smartspace_view,
+                        ConstraintSet.START,
+                        customR.id.lockscreen_clock_view,
+                        ConstraintSet.END,
+                        20,
+                    )
+                    connect(
+                        sharedR.id.date_smartspace_view,
+                        ConstraintSet.TOP,
+                        customR.id.lockscreen_clock_view,
+                        ConstraintSet.TOP,
+                    )
+                    connect(
+                        sharedR.id.date_smartspace_view,
+                        ConstraintSet.BOTTOM,
+                        sharedR.id.weather_smartspace_view,
+                        ConstraintSet.TOP,
+                    )
+                    connect(
+                        sharedR.id.weather_smartspace_view,
+                        ConstraintSet.START,
+                        sharedR.id.date_smartspace_view,
+                        ConstraintSet.START,
+                    )
+                    connect(
+                        sharedR.id.weather_smartspace_view,
+                        ConstraintSet.TOP,
+                        sharedR.id.date_smartspace_view,
+                        ConstraintSet.BOTTOM,
+                    )
+                    connect(
+                        sharedR.id.weather_smartspace_view,
+                        ConstraintSet.BOTTOM,
+                        customR.id.lockscreen_clock_view,
+                        ConstraintSet.BOTTOM,
+                    )
+
+                    setVerticalChainStyle(
+                        sharedR.id.weather_smartspace_view,
+                        ConstraintSet.CHAIN_PACKED,
+                    )
+                    setVerticalChainStyle(
+                        sharedR.id.date_smartspace_view,
+                        ConstraintSet.CHAIN_PACKED,
+                    )
+                }
+            }
+
+            if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                createBarrier(
+                    R.id.smart_space_barrier_bottom,
+                    Barrier.BOTTOM,
+                    0,
+                    sharedR.id.bc_smartspace_view,
+                )
+                createBarrier(
+                    R.id.smart_space_barrier_top,
+                    Barrier.TOP,
+                    0,
+                    sharedR.id.bc_smartspace_view,
+                )
+            } else {
+                createBarrier(
+                    R.id.smart_space_barrier_bottom,
+                    Barrier.BOTTOM,
+                    0,
+                    *intArrayOf(sharedR.id.bc_smartspace_view, sharedR.id.date_smartspace_view),
+                )
+                createBarrier(
+                    R.id.smart_space_barrier_top,
+                    Barrier.TOP,
+                    0,
+                    *intArrayOf(sharedR.id.bc_smartspace_view, sharedR.id.date_smartspace_view),
+                )
+            }
         }
         updateVisibility(constraintSet)
     }
 
     override fun removeViews(constraintLayout: ConstraintLayout) {
         if (!keyguardSmartspaceViewModel.isSmartspaceEnabled) return
-        listOf(smartspaceView, dateWeatherView).forEach {
+
+        val list =
+            if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                listOf(
+                    smartspaceView,
+                    dateView,
+                    weatherView,
+                    weatherViewLargeClock,
+                    dateViewLargeClock,
+                )
+            } else {
+                listOf(smartspaceView, dateView)
+            }
+        list.forEach {
             it?.let {
                 if (it.parent == constraintLayout) {
                     constraintLayout.removeView(it)
@@ -200,17 +395,40 @@
     }
 
     private fun updateVisibility(constraintSet: ConstraintSet) {
+
         // This may update the visibility of the smartspace views
         smartspaceController.requestSmartspaceUpdate()
+        val weatherId: Int
+        val dateId: Int
+        if (
+            com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout() &&
+                keyguardClockViewModel.isLargeClockVisible.value
+        ) {
+            weatherId = sharedR.id.weather_smartspace_view_large
+            dateId = sharedR.id.date_smartspace_view_large
+        } else {
+            weatherId = sharedR.id.weather_smartspace_view
+            dateId = sharedR.id.date_smartspace_view
+        }
 
         constraintSet.apply {
             val showWeather = keyguardSmartspaceViewModel.isWeatherVisible.value
-            setVisibility(sharedR.id.weather_smartspace_view, if (showWeather) VISIBLE else GONE)
-            setAlpha(sharedR.id.weather_smartspace_view, if (showWeather) 1f else 0f)
+            setVisibility(weatherId, if (showWeather) VISIBLE else GONE)
+            setAlpha(weatherId, if (showWeather) 1f else 0f)
 
             val showDateView = !keyguardClockViewModel.hasCustomWeatherDataDisplay.value
-            setVisibility(sharedR.id.date_smartspace_view, if (showDateView) VISIBLE else GONE)
-            setAlpha(sharedR.id.date_smartspace_view, if (showDateView) 1f else 0f)
+            setVisibility(dateId, if (showDateView) VISIBLE else GONE)
+            setAlpha(dateId, if (showDateView) 1f else 0f)
+
+            if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                if (keyguardClockViewModel.isLargeClockVisible.value) {
+                    setVisibility(sharedR.id.weather_smartspace_view, GONE)
+                    setVisibility(sharedR.id.date_smartspace_view, GONE)
+                } else {
+                    setVisibility(sharedR.id.weather_smartspace_view_large, GONE)
+                    setVisibility(sharedR.id.date_smartspace_view_large, GONE)
+                }
+            }
         }
     }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/layout/sections/transitions/ClockSizeTransition.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/layout/sections/transitions/ClockSizeTransition.kt
index fdd9355..434d7ea 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/layout/sections/transitions/ClockSizeTransition.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/layout/sections/transitions/ClockSizeTransition.kt
@@ -59,6 +59,7 @@
             addTransition(ClockFaceOutTransition(config, clockViewModel, logBuffer))
             addTransition(ClockFaceInTransition(config, clockViewModel, logBuffer))
         }
+
         addTransition(SmartspaceMoveTransition(config, clockViewModel, logBuffer))
     }
 
@@ -210,7 +211,6 @@
                         str3 = "$bounds"
                     }
                 }
-
                 to.view.setVisibility(vis ?: View.VISIBLE)
                 to.view.setAlpha(alpha)
                 to.view.setRect(bounds)
@@ -297,9 +297,17 @@
                         logger.e("No large clock set, falling back")
                         addTarget(customR.id.lockscreen_clock_view_large)
                     }
+                if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                    addTarget(sharedR.id.date_smartspace_view_large)
+                    addTarget(sharedR.id.weather_smartspace_view_large)
+                }
             } else {
                 logger.i("Adding small clock")
                 addTarget(customR.id.lockscreen_clock_view)
+                if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                    addTarget(sharedR.id.date_smartspace_view)
+                    addTarget(sharedR.id.weather_smartspace_view)
+                }
             }
         }
 
@@ -378,7 +386,9 @@
             duration =
                 if (isLargeClock) STATUS_AREA_MOVE_UP_MILLIS else STATUS_AREA_MOVE_DOWN_MILLIS
             interpolator = Interpolators.EMPHASIZED
-            addTarget(sharedR.id.date_smartspace_view)
+            if (!com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+                addTarget(sharedR.id.date_smartspace_view)
+            }
             addTarget(sharedR.id.bc_smartspace_view)
 
             // Notifications normally and media on split shade needs to be moved
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/layout/sections/transitions/DefaultClockSteppingTransition.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/layout/sections/transitions/DefaultClockSteppingTransition.kt
index f601155..0874b6d 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/layout/sections/transitions/DefaultClockSteppingTransition.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/view/layout/sections/transitions/DefaultClockSteppingTransition.kt
@@ -23,14 +23,17 @@
 import android.view.ViewGroup
 import com.android.app.animation.Interpolators
 import com.android.systemui.plugins.clocks.ClockController
+import com.android.systemui.shared.R as sharedR
 
-class DefaultClockSteppingTransition(
-    private val clock: ClockController,
-) : Transition() {
+class DefaultClockSteppingTransition(private val clock: ClockController) : Transition() {
     init {
         interpolator = Interpolators.LINEAR
         duration = KEYGUARD_STATUS_VIEW_CUSTOM_CLOCK_MOVE_DURATION_MS
         addTarget(clock.largeClock.view)
+        if (com.android.systemui.shared.Flags.clockReactiveSmartspaceLayout()) {
+            addTarget(sharedR.id.date_smartspace_view_large)
+            addTarget(sharedR.id.weather_smartspace_view_large)
+        }
     }
 
     private fun captureValues(transitionValues: TransitionValues) {
@@ -51,7 +54,7 @@
     override fun createAnimator(
         sceneRoot: ViewGroup,
         startValues: TransitionValues?,
-        endValues: TransitionValues?
+        endValues: TransitionValues?,
     ): Animator? {
         if (startValues == null || endValues == null) {
             return null
@@ -67,7 +70,7 @@
             clock.largeClock.animations.onPositionUpdated(
                 fromLeft,
                 direction,
-                animation.animatedFraction
+                animation.animatedFraction,
             )
         }
         return anim
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/AlternateBouncerToPrimaryBouncerTransitionViewModel.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/AlternateBouncerToPrimaryBouncerTransitionViewModel.kt
index 74d471c..e119ec9 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/AlternateBouncerToPrimaryBouncerTransitionViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/AlternateBouncerToPrimaryBouncerTransitionViewModel.kt
@@ -101,7 +101,7 @@
                 if (Flags.notificationShadeBlur()) {
                     transitionAnimation.immediatelyTransitionTo(blurConfig.maxBlurRadiusPx)
                 } else {
-                    emptyFlow()
+                    transitionAnimation.immediatelyTransitionTo(blurConfig.minBlurRadiusPx)
                 },
             flowWhenShadeIsNotExpanded =
                 transitionAnimation.sharedFlow(
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/DozingToDreamingTransitionViewModel.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/DozingToDreamingTransitionViewModel.kt
index 9018c58..e6a85c6 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/DozingToDreamingTransitionViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/DozingToDreamingTransitionViewModel.kt
@@ -39,6 +39,4 @@
         )
 
     val lockscreenAlpha: Flow<Float> = transitionAnimation.immediatelyTransitionTo(0f)
-    // Notifications should not be shown while transitioning to dream.
-    val notificationAlpha = transitionAnimation.immediatelyTransitionTo(0f)
 }
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/OccludedToPrimaryBouncerTransitionViewModel.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/OccludedToPrimaryBouncerTransitionViewModel.kt
index 3c126aa..f14a5a2 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/OccludedToPrimaryBouncerTransitionViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/OccludedToPrimaryBouncerTransitionViewModel.kt
@@ -51,7 +51,7 @@
                 if (Flags.notificationShadeBlur()) {
                     transitionAnimation.immediatelyTransitionTo(blurConfig.maxBlurRadiusPx)
                 } else {
-                    emptyFlow()
+                    transitionAnimation.immediatelyTransitionTo(blurConfig.minBlurRadiusPx)
                 },
             flowWhenShadeIsNotExpanded =
                 transitionAnimation.immediatelyTransitionTo(blurConfig.maxBlurRadiusPx),
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/PrimaryBouncerToLockscreenTransitionViewModel.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/PrimaryBouncerToLockscreenTransitionViewModel.kt
index 5a111aa..4a39421 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/PrimaryBouncerToLockscreenTransitionViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/PrimaryBouncerToLockscreenTransitionViewModel.kt
@@ -32,7 +32,6 @@
 import javax.inject.Inject
 import kotlin.time.Duration.Companion.milliseconds
 import kotlinx.coroutines.flow.Flow
-import kotlinx.coroutines.flow.emptyFlow
 
 /**
  * Breaks down PRIMARY BOUNCER->LOCKSCREEN transition into discrete steps for corresponding views to
@@ -81,7 +80,7 @@
                 if (Flags.notificationShadeBlur()) {
                     transitionAnimation.immediatelyTransitionTo(blurConfig.maxBlurRadiusPx)
                 } else {
-                    emptyFlow()
+                    transitionAnimation.immediatelyTransitionTo(blurConfig.minBlurRadiusPx)
                 },
             flowWhenShadeIsNotExpanded =
                 transitionAnimation.sharedFlow(
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/PrimaryBouncerToOccludedTransitionViewModel.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/PrimaryBouncerToOccludedTransitionViewModel.kt
index 0f0e7b6..31b20a7 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/PrimaryBouncerToOccludedTransitionViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/PrimaryBouncerToOccludedTransitionViewModel.kt
@@ -27,7 +27,6 @@
 import com.android.systemui.keyguard.ui.transitions.PrimaryBouncerTransition
 import javax.inject.Inject
 import kotlinx.coroutines.flow.Flow
-import kotlinx.coroutines.flow.emptyFlow
 
 @SysUISingleton
 class PrimaryBouncerToOccludedTransitionViewModel
@@ -51,7 +50,7 @@
                 if (Flags.notificationShadeBlur()) {
                     transitionAnimation.immediatelyTransitionTo(blurConfig.maxBlurRadiusPx)
                 } else {
-                    emptyFlow()
+                    transitionAnimation.immediatelyTransitionTo(blurConfig.minBlurRadiusPx)
                 },
             flowWhenShadeIsNotExpanded =
                 transitionAnimation.immediatelyTransitionTo(blurConfig.minBlurRadiusPx),
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/data/repository/MediaFilterRepository.kt b/packages/SystemUI/src/com/android/systemui/media/controls/data/repository/MediaFilterRepository.kt
index 1b39d55..8ce901a 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/data/repository/MediaFilterRepository.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/data/repository/MediaFilterRepository.kt
@@ -16,22 +16,15 @@
 
 package com.android.systemui.media.controls.data.repository
 
-import android.content.Context
 import com.android.internal.logging.InstanceId
 import com.android.systemui.dagger.SysUISingleton
-import com.android.systemui.dagger.qualifiers.Application
 import com.android.systemui.media.controls.data.model.MediaSortKeyModel
 import com.android.systemui.media.controls.shared.model.MediaCommonModel
 import com.android.systemui.media.controls.shared.model.MediaData
 import com.android.systemui.media.controls.shared.model.MediaDataLoadingModel
 import com.android.systemui.media.controls.shared.model.SmartspaceMediaData
 import com.android.systemui.media.controls.shared.model.SmartspaceMediaLoadingModel
-import com.android.systemui.media.controls.util.MediaSmartspaceLogger
-import com.android.systemui.media.controls.util.MediaSmartspaceLogger.Companion.SMARTSPACE_CARD_DISMISS_EVENT
-import com.android.systemui.media.controls.util.MediaSmartspaceLogger.Companion.SMARTSPACE_CARD_SEEN_EVENT
-import com.android.systemui.media.controls.util.SmallHash
 import com.android.systemui.util.time.SystemClock
-import java.util.Locale
 import java.util.TreeMap
 import javax.inject.Inject
 import kotlinx.coroutines.flow.MutableStateFlow
@@ -40,13 +33,7 @@
 
 /** A repository that holds the state of filtered media data on the device. */
 @SysUISingleton
-class MediaFilterRepository
-@Inject
-constructor(
-    @Application private val applicationContext: Context,
-    private val systemClock: SystemClock,
-    private val smartspaceLogger: MediaSmartspaceLogger,
-) {
+class MediaFilterRepository @Inject constructor(private val systemClock: SystemClock) {
 
     /** Instance id of media control that recommendations card reactivated. */
     private val _reactivatedId: MutableStateFlow<InstanceId?> = MutableStateFlow(null)
@@ -86,7 +73,6 @@
 
     private var sortedMedia = TreeMap<MediaSortKeyModel, MediaCommonModel>(comparator)
     private var mediaFromRecPackageName: String? = null
-    private var locale: Locale = applicationContext.resources.configuration.locales.get(0)
 
     fun addMediaEntry(key: String, data: MediaData) {
         val entries = LinkedHashMap<String, MediaData>(_allUserEntries.value)
@@ -224,21 +210,6 @@
                 }
 
                 sortedMedia = sortedMap
-
-                if (!isUpdate) {
-                    val rank = sortedMedia.values.indexOf(newCommonModel)
-                    if (isSmartspaceLoggingEnabled(newCommonModel, rank)) {
-                        smartspaceLogger.logSmartspaceCardReceived(
-                            it.smartspaceId,
-                            it.appUid,
-                            cardinality = _currentMedia.value.size,
-                            isSsReactivated = mediaDataLoadingModel.isSsReactivated,
-                            rank = rank,
-                        )
-                    }
-                } else if (mediaDataLoadingModel.receivedSmartspaceCardLatency != 0) {
-                    logSmartspaceAllMediaCards(mediaDataLoadingModel.receivedSmartspaceCardLatency)
-                }
             }
         }
 
@@ -278,30 +249,6 @@
                 sortedMap[sortKey] = newCommonModel
                 _currentMedia.value = sortedMap.values.toList()
                 sortedMedia = sortedMap
-
-                if (isRecommendationActive()) {
-                    val hasActivatedExistedResumeMedia =
-                        !hasActiveMedia() &&
-                            hasAnyMedia() &&
-                            smartspaceMediaLoadingModel.isPrioritized
-                    if (hasActivatedExistedResumeMedia) {
-                        // Log resume card received if resumable media card is reactivated and
-                        // recommendation card is valid and ranked first
-                        logSmartspaceAllMediaCards(
-                            (systemClock.currentTimeMillis() -
-                                    _smartspaceMediaData.value.headphoneConnectionTimeMillis)
-                                .toInt()
-                        )
-                    }
-
-                    smartspaceLogger.logSmartspaceCardReceived(
-                        SmallHash.hash(_smartspaceMediaData.value.targetId),
-                        _smartspaceMediaData.value.getUid(applicationContext),
-                        cardinality = _currentMedia.value.size,
-                        isRecommendationCard = true,
-                        rank = _currentMedia.value.indexOf(newCommonModel),
-                    )
-                }
             }
             is SmartspaceMediaLoadingModel.Removed -> {
                 _currentMedia.value =
@@ -339,108 +286,6 @@
         return _smartspaceMediaData.value.isActive
     }
 
-    /** Log visible card given [visibleIndex]. */
-    fun logSmartspaceCardSeen(surface: Int, visibleIndex: Int, isMediaCardUpdate: Boolean) {
-        if (_currentMedia.value.size <= visibleIndex) return
-
-        when (val mediaCommonModel = _currentMedia.value[visibleIndex]) {
-            is MediaCommonModel.MediaControl -> {
-                if (
-                    !isMediaCardUpdate ||
-                        mediaCommonModel.mediaLoadedModel.receivedSmartspaceCardLatency != 0
-                ) {
-                    logSmartspaceMediaCardUserEvent(
-                        mediaCommonModel.mediaLoadedModel.instanceId,
-                        visibleIndex,
-                        SMARTSPACE_CARD_SEEN_EVENT,
-                        surface,
-                        mediaCommonModel.mediaLoadedModel.isSsReactivated,
-                    )
-                }
-            }
-            is MediaCommonModel.MediaRecommendations -> {
-                if (isRecommendationActive()) {
-                    logSmarspaceRecommendationCardUserEvent(
-                        SMARTSPACE_CARD_SEEN_EVENT,
-                        surface,
-                        visibleIndex,
-                    )
-                }
-            }
-        }
-    }
-
-    /** Log user event on media card if smartspace logging is enabled. */
-    fun logSmartspaceCardUserEvent(
-        eventId: Int,
-        surface: Int,
-        interactedSubCardRank: Int = 0,
-        interactedSubCardCardinality: Int = 0,
-        instanceId: InstanceId? = null,
-        isRec: Boolean = false,
-    ) {
-        _currentMedia.value.forEachIndexed { index, mediaCommonModel ->
-            when (mediaCommonModel) {
-                is MediaCommonModel.MediaControl -> {
-                    if (mediaCommonModel.mediaLoadedModel.instanceId == instanceId) {
-                        if (isSmartspaceLoggingEnabled(mediaCommonModel, index)) {
-                            logSmartspaceMediaCardUserEvent(
-                                instanceId,
-                                index,
-                                eventId,
-                                surface,
-                                mediaCommonModel.mediaLoadedModel.isSsReactivated,
-                                interactedSubCardRank,
-                                interactedSubCardCardinality,
-                            )
-                        }
-                        return
-                    }
-                }
-                is MediaCommonModel.MediaRecommendations -> {
-                    if (isRec) {
-                        if (isSmartspaceLoggingEnabled(mediaCommonModel, index)) {
-                            logSmarspaceRecommendationCardUserEvent(
-                                eventId,
-                                surface,
-                                index,
-                                interactedSubCardRank,
-                                interactedSubCardCardinality,
-                            )
-                        }
-                        return
-                    }
-                }
-            }
-        }
-    }
-
-    /** Log media and recommendation cards dismissal if smartspace logging is enabled for each. */
-    fun logSmartspaceCardsOnSwipeToDismiss(surface: Int) {
-        _currentMedia.value.forEachIndexed { index, mediaCommonModel ->
-            if (isSmartspaceLoggingEnabled(mediaCommonModel, index)) {
-                when (mediaCommonModel) {
-                    is MediaCommonModel.MediaControl ->
-                        logSmartspaceMediaCardUserEvent(
-                            mediaCommonModel.mediaLoadedModel.instanceId,
-                            index,
-                            SMARTSPACE_CARD_DISMISS_EVENT,
-                            surface,
-                            mediaCommonModel.mediaLoadedModel.isSsReactivated,
-                            isSwipeToDismiss = true,
-                        )
-                    is MediaCommonModel.MediaRecommendations ->
-                        logSmarspaceRecommendationCardUserEvent(
-                            SMARTSPACE_CARD_DISMISS_EVENT,
-                            surface,
-                            index,
-                            isSwipeToDismiss = true,
-                        )
-                }
-            }
-        }
-    }
-
     private fun canBeRemoved(data: MediaData): Boolean {
         return data.isPlaying?.let { !it } ?: data.isClearable && !data.active
     }
@@ -448,83 +293,4 @@
     private fun isMediaFromRec(data: MediaData): Boolean {
         return data.isPlaying == true && mediaFromRecPackageName == data.packageName
     }
-
-    /** Log all media cards if smartspace logging is enabled for each. */
-    private fun logSmartspaceAllMediaCards(receivedSmartspaceCardLatency: Int) {
-        sortedMedia.values.forEachIndexed { index, mediaCommonModel ->
-            if (mediaCommonModel is MediaCommonModel.MediaControl) {
-                _selectedUserEntries.value[mediaCommonModel.mediaLoadedModel.instanceId]?.let {
-                    it.smartspaceId =
-                        SmallHash.hash(it.appUid + systemClock.currentTimeMillis().toInt())
-                    it.isImpressed = false
-
-                    if (isSmartspaceLoggingEnabled(mediaCommonModel, index)) {
-                        smartspaceLogger.logSmartspaceCardReceived(
-                            it.smartspaceId,
-                            it.appUid,
-                            cardinality = _currentMedia.value.size,
-                            isSsReactivated = mediaCommonModel.mediaLoadedModel.isSsReactivated,
-                            rank = index,
-                            receivedLatencyMillis = receivedSmartspaceCardLatency,
-                        )
-                    }
-                }
-            }
-        }
-    }
-
-    private fun logSmartspaceMediaCardUserEvent(
-        instanceId: InstanceId,
-        index: Int,
-        eventId: Int,
-        surface: Int,
-        isReactivated: Boolean,
-        interactedSubCardRank: Int = 0,
-        interactedSubCardCardinality: Int = 0,
-        isSwipeToDismiss: Boolean = false,
-    ) {
-        _selectedUserEntries.value[instanceId]?.let {
-            smartspaceLogger.logSmartspaceCardUIEvent(
-                eventId,
-                it.smartspaceId,
-                it.appUid,
-                surface,
-                _currentMedia.value.size,
-                isSsReactivated = isReactivated,
-                interactedSubcardRank = interactedSubCardRank,
-                interactedSubcardCardinality = interactedSubCardCardinality,
-                rank = index,
-                isSwipeToDismiss = isSwipeToDismiss,
-            )
-        }
-    }
-
-    private fun logSmarspaceRecommendationCardUserEvent(
-        eventId: Int,
-        surface: Int,
-        index: Int,
-        interactedSubCardRank: Int = 0,
-        interactedSubCardCardinality: Int = 0,
-        isSwipeToDismiss: Boolean = false,
-    ) {
-        smartspaceLogger.logSmartspaceCardUIEvent(
-            eventId,
-            SmallHash.hash(_smartspaceMediaData.value.targetId),
-            _smartspaceMediaData.value.getUid(applicationContext),
-            surface,
-            _currentMedia.value.size,
-            isRecommendationCard = true,
-            interactedSubcardRank = interactedSubCardRank,
-            interactedSubcardCardinality = interactedSubCardCardinality,
-            rank = index,
-            isSwipeToDismiss = isSwipeToDismiss,
-        )
-    }
-
-    private fun isSmartspaceLoggingEnabled(commonModel: MediaCommonModel, index: Int): Boolean {
-        return sortedMedia.size > index &&
-            (_smartspaceMediaData.value.expiryTimeMs != 0L ||
-                isRecommendationActive() ||
-                commonModel is MediaCommonModel.MediaRecommendations)
-    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/LegacyMediaDataManagerImpl.kt b/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/LegacyMediaDataManagerImpl.kt
index ea5f81c..46cf0a6 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/LegacyMediaDataManagerImpl.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/LegacyMediaDataManagerImpl.kt
@@ -82,7 +82,6 @@
 import com.android.systemui.media.controls.util.MediaDataUtils
 import com.android.systemui.media.controls.util.MediaFlags
 import com.android.systemui.media.controls.util.MediaUiEventLogger
-import com.android.systemui.media.controls.util.SmallHash
 import com.android.systemui.res.R
 import com.android.systemui.statusbar.NotificationMediaManager.isPlayingState
 import com.android.systemui.statusbar.notification.row.HybridGroupManager
@@ -1085,7 +1084,6 @@
                 instanceId = instanceId,
                 appUid = appUid,
                 isExplicit = isExplicit,
-                smartspaceId = SmallHash.hash(appUid + systemClock.currentTimeMillis().toInt()),
             )
 
         if (isSameMediaData(context, mediaController, mediaData, currentEntry)) {
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/MediaDataFilterImpl.kt b/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/MediaDataFilterImpl.kt
index 4c0312f..2cd5016 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/MediaDataFilterImpl.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/MediaDataFilterImpl.kt
@@ -33,7 +33,6 @@
 import com.android.systemui.media.controls.shared.model.MediaDataLoadingModel
 import com.android.systemui.media.controls.shared.model.SmartspaceMediaData
 import com.android.systemui.media.controls.shared.model.SmartspaceMediaLoadingModel
-import com.android.systemui.media.controls.util.MediaFlags
 import com.android.systemui.media.controls.util.MediaUiEventLogger
 import com.android.systemui.settings.UserTracker
 import com.android.systemui.statusbar.NotificationLockscreenUserManager
@@ -69,7 +68,6 @@
     @Main private val executor: Executor,
     private val systemClock: SystemClock,
     private val logger: MediaUiEventLogger,
-    private val mediaFlags: MediaFlags,
     private val mediaFilterRepository: MediaFilterRepository,
     private val mediaLogger: MediaLogger,
 ) : MediaDataManager.Listener {
@@ -328,9 +326,8 @@
     }
 
     /** Invoked when the user has dismissed the media carousel */
-    fun onSwipeToDismiss(surface: Int) {
+    fun onSwipeToDismiss() {
         if (DEBUG) Log.d(TAG, "Media carousel swiped away")
-        mediaFilterRepository.logSmartspaceCardsOnSwipeToDismiss(surface)
         val mediaEntries = mediaFilterRepository.allUserEntries.value.entries
         mediaEntries.forEach { (key, data) ->
             if (mediaFilterRepository.selectedUserEntries.value.containsKey(data.instanceId)) {
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/MediaDataProcessor.kt b/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/MediaDataProcessor.kt
index 59f98d8..fe852ce 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/MediaDataProcessor.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/MediaDataProcessor.kt
@@ -83,7 +83,6 @@
 import com.android.systemui.media.controls.util.MediaDataUtils
 import com.android.systemui.media.controls.util.MediaFlags
 import com.android.systemui.media.controls.util.MediaUiEventLogger
-import com.android.systemui.media.controls.util.SmallHash
 import com.android.systemui.res.R
 import com.android.systemui.scene.shared.flag.SceneContainerFlag
 import com.android.systemui.statusbar.NotificationMediaManager.isPlayingState
@@ -758,7 +757,6 @@
                     appUid = appUid,
                     isExplicit = isExplicit,
                     resumeProgress = progress,
-                    smartspaceId = SmallHash.hash(appUid + systemClock.currentTimeMillis().toInt()),
                 ),
             )
         }
@@ -1010,7 +1008,6 @@
                 instanceId = instanceId,
                 appUid = appUid,
                 isExplicit = isExplicit,
-                smartspaceId = SmallHash.hash(appUid + systemClock.currentTimeMillis().toInt()),
             )
 
         if (isSameMediaData(context, mediaController, mediaData, oldEntry)) {
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/MediaProcessingHelper.kt b/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/MediaProcessingHelper.kt
index beb4d41..df0e1ad 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/MediaProcessingHelper.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/MediaProcessingHelper.kt
@@ -22,6 +22,7 @@
 import android.graphics.drawable.Icon
 import android.media.session.MediaController
 import android.media.session.PlaybackState
+import android.os.BadParcelableException
 import android.util.Log
 import com.android.systemui.Flags.mediaControlsPostsOptimization
 import com.android.systemui.biometrics.Utils.toBitmap
@@ -109,7 +110,12 @@
     }
     if (firstAction.extras != null) {
         firstAction.extras.keySet().forEach { key ->
-            if (firstAction.extras[key] != secondAction.extras[key]) {
+            try {
+                if (firstAction.extras[key] != secondAction.extras[key]) {
+                    return false
+                }
+            } catch (e: BadParcelableException) {
+                Log.e(TAG, "Cannot unparcel extras", e)
                 return false
             }
         }
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaCarouselInteractor.kt b/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaCarouselInteractor.kt
index 891b852..cd51a4b 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaCarouselInteractor.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaCarouselInteractor.kt
@@ -35,8 +35,6 @@
 import com.android.systemui.media.controls.domain.pipeline.MediaTimeoutListener
 import com.android.systemui.media.controls.domain.resume.MediaResumeListener
 import com.android.systemui.media.controls.shared.model.MediaCommonModel
-import com.android.systemui.media.controls.util.MediaFlags
-import com.android.systemui.media.controls.util.MediaSmartspaceLogger
 import com.android.systemui.scene.shared.flag.SceneContainerFlag
 import java.io.PrintWriter
 import javax.inject.Inject
@@ -60,7 +58,6 @@
     private val mediaDataCombineLatest: MediaDataCombineLatest,
     private val mediaDataFilter: MediaDataFilterImpl,
     private val mediaFilterRepository: MediaFilterRepository,
-    private val mediaFlags: MediaFlags,
 ) : MediaDataManager, CoreStartable {
 
     /** Are there any media notifications active, including the recommendations? */
@@ -197,10 +194,8 @@
         mediaDataProcessor.setMediaResumptionEnabled(isEnabled)
     }
 
-    override fun onSwipeToDismiss() = unsupported
-
-    fun onSwipeToDismiss(location: Int) {
-        mediaDataFilter.onSwipeToDismiss(MediaSmartspaceLogger.getSurface(location))
+    override fun onSwipeToDismiss() {
+        mediaDataFilter.onSwipeToDismiss()
     }
 
     override fun hasActiveMediaOrRecommendation() =
@@ -218,14 +213,6 @@
         mediaFilterRepository.setOrderedMedia()
     }
 
-    fun logSmartspaceSeenCard(visibleIndex: Int, location: Int, isMediaCardUpdate: Boolean) {
-        mediaFilterRepository.logSmartspaceCardSeen(
-            MediaSmartspaceLogger.getSurface(location),
-            visibleIndex,
-            isMediaCardUpdate,
-        )
-    }
-
     /** Add a listener for internal events. */
     private fun addInternalListener(listener: MediaDataManager.Listener) =
         mediaDataProcessor.addInternalListener(listener)
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaControlInteractor.kt b/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaControlInteractor.kt
index 09aa85b..f830a56 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaControlInteractor.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaControlInteractor.kt
@@ -36,7 +36,6 @@
 import com.android.systemui.media.controls.shared.MediaLogger
 import com.android.systemui.media.controls.shared.model.MediaControlModel
 import com.android.systemui.media.controls.shared.model.MediaData
-import com.android.systemui.media.controls.util.MediaSmartspaceLogger
 import com.android.systemui.media.dialog.MediaOutputDialogManager
 import com.android.systemui.plugins.ActivityStarter
 import com.android.systemui.statusbar.NotificationLockscreenUserManager
@@ -72,10 +71,7 @@
         token: MediaSession.Token?,
         instanceId: InstanceId,
         delayMs: Long,
-        eventId: Int,
-        location: Int,
     ): Boolean {
-        logSmartspaceUserEvent(eventId, location)
         val dismissed =
             mediaDataProcessor.dismissMediaData(instanceId, delayMs, userInitiated = true)
         if (!dismissed) {
@@ -116,13 +112,7 @@
         activityStarter.startActivity(SETTINGS_INTENT, /* dismissShade= */ true)
     }
 
-    fun startClickIntent(
-        expandable: Expandable,
-        clickIntent: PendingIntent,
-        eventId: Int,
-        location: Int,
-    ) {
-        logSmartspaceUserEvent(eventId, location)
+    fun startClickIntent(expandable: Expandable, clickIntent: PendingIntent) {
         if (!launchOverLockscreen(expandable, clickIntent)) {
             activityStarter.postStartActivityDismissingKeyguard(
                 clickIntent,
@@ -197,14 +187,6 @@
         )
     }
 
-    fun logSmartspaceUserEvent(eventId: Int, location: Int) {
-        repository.logSmartspaceCardUserEvent(
-            eventId,
-            MediaSmartspaceLogger.getSurface(location),
-            instanceId = instanceId,
-        )
-    }
-
     fun logMediaControlIsBound(artistName: CharSequence, songName: CharSequence) {
         mediaLogger.logMediaControlIsBound(instanceId, artistName, songName)
     }
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaRecommendationsInteractor.kt b/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaRecommendationsInteractor.kt
index 48ed391..0cb36ed 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaRecommendationsInteractor.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaRecommendationsInteractor.kt
@@ -31,7 +31,6 @@
 import com.android.systemui.media.controls.shared.model.MediaRecModel
 import com.android.systemui.media.controls.shared.model.MediaRecommendationsModel
 import com.android.systemui.media.controls.shared.model.SmartspaceMediaData
-import com.android.systemui.media.controls.util.MediaSmartspaceLogger
 import com.android.systemui.plugins.ActivityStarter
 import java.net.URISyntaxException
 import javax.inject.Inject
@@ -66,14 +65,7 @@
             .distinctUntilChanged()
             .stateIn(applicationScope, SharingStarted.WhileSubscribed(), false)
 
-    fun removeMediaRecommendations(
-        key: String,
-        dismissIntent: Intent?,
-        delayMs: Long,
-        eventId: Int,
-        location: Int,
-    ) {
-        logSmartspaceCardUserEvent(eventId, location)
+    fun removeMediaRecommendations(key: String, dismissIntent: Intent?, delayMs: Long) {
         mediaDataProcessor.dismissSmartspaceRecommendation(key, delayMs)
         if (dismissIntent == null) {
             Log.w(TAG, "Cannot create dismiss action click action: extras missing dismiss_intent.")
@@ -93,25 +85,7 @@
         activityStarter.startActivity(SETTINGS_INTENT, /* dismissShade= */ true)
     }
 
-    fun startClickIntent(
-        expandable: Expandable,
-        intent: Intent,
-        eventId: Int,
-        location: Int,
-        interactedSubCardRank: Int,
-        interactedSubCardCardinality: Int,
-    ) {
-        if (interactedSubCardRank == -1) {
-            logSmartspaceCardUserEvent(eventId, MediaSmartspaceLogger.getSurface(location))
-        } else {
-            repository.logSmartspaceCardUserEvent(
-                eventId,
-                MediaSmartspaceLogger.getSurface(location),
-                interactedSubCardRank = interactedSubCardRank,
-                interactedSubCardCardinality = interactedSubCardCardinality,
-                isRec = true,
-            )
-        }
+    fun startClickIntent(expandable: Expandable, intent: Intent) {
         if (shouldActivityOpenInForeground(intent)) {
             // Request to unlock the device if the activity needs to be opened in foreground.
             activityStarter.postStartActivityDismissingKeyguard(
@@ -127,14 +101,6 @@
         }
     }
 
-    private fun logSmartspaceCardUserEvent(eventId: Int, location: Int) {
-        repository.logSmartspaceCardUserEvent(
-            eventId,
-            MediaSmartspaceLogger.getSurface(location),
-            isRec = true,
-        )
-    }
-
     /** Returns if the action will open the activity in foreground. */
     private fun shouldActivityOpenInForeground(intent: Intent): Boolean {
         val intentString = intent.extras?.getString(EXTRAS_SMARTSPACE_INTENT) ?: return false
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/shared/model/MediaData.kt b/packages/SystemUI/src/com/android/systemui/media/controls/shared/model/MediaData.kt
index aed8609..90fa6fd 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/shared/model/MediaData.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/shared/model/MediaData.kt
@@ -99,12 +99,6 @@
 
     /** Track progress (0 - 1) to display for players where [resumption] is true */
     val resumeProgress: Double? = null,
-
-    /** Smartspace Id, used for logging. */
-    var smartspaceId: Int = -1,
-
-    /** If media card was visible to user, used for logging. */
-    var isImpressed: Boolean = false,
 ) {
     companion object {
         /** Media is playing on the local device */
@@ -135,7 +129,7 @@
     /** Whether to reserve the empty space when the nextOrCustom is null */
     val reserveNext: Boolean = false,
     /** Whether to reserve the empty space when the prevOrCustom is null */
-    val reservePrev: Boolean = false
+    val reservePrev: Boolean = false,
 ) {
     fun getActionById(id: Int): MediaAction? {
         return when (id) {
@@ -159,7 +153,7 @@
     // Rebind Id is used to detect identical rebinds and ignore them. It is intended
     // to prevent continuously looping animations from restarting due to the arrival
     // of repeated media notifications that are visually identical.
-    val rebindId: Int? = null
+    val rebindId: Int? = null,
 )
 
 /** State of a media action from notification. */
@@ -167,7 +161,7 @@
     val isAuthenticationRequired: Boolean,
     val actionIntent: PendingIntent?,
     val icon: Drawable?,
-    val contentDescription: CharSequence?
+    val contentDescription: CharSequence?,
 )
 
 /** State of the media device. */
@@ -190,7 +184,7 @@
     val id: String? = null,
 
     /** Whether or not to show the broadcast button */
-    val showBroadcastButton: Boolean
+    val showBroadcastButton: Boolean,
 ) {
     /**
      * Check whether [MediaDeviceData] objects are equal in all fields except the icon. The icon is
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/shared/model/SmartspaceMediaData.kt b/packages/SystemUI/src/com/android/systemui/media/controls/shared/model/SmartspaceMediaData.kt
index 96c3fa8..c0e1d95 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/shared/model/SmartspaceMediaData.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/shared/model/SmartspaceMediaData.kt
@@ -48,8 +48,6 @@
     val instanceId: InstanceId? = null,
     /** The timestamp in milliseconds indicating when the card should be removed */
     val expiryTimeMs: Long = 0L,
-    /** If recommendation card was visible to user, used for logging. */
-    var isImpressed: Boolean = false,
 ) {
     /**
      * Indicates if all the data is valid.
@@ -81,7 +79,7 @@
         Log.w(
             TAG,
             "Package $packageName does not have a main launcher activity. " +
-                "Fallback to full app name"
+                "Fallback to full app name",
         )
         return try {
             val applicationInfo = packageManager.getApplicationInfo(packageName, /* flags= */ 0)
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/ui/binder/SeekBarObserver.kt b/packages/SystemUI/src/com/android/systemui/media/controls/ui/binder/SeekBarObserver.kt
index c9716be..cedf661 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/ui/binder/SeekBarObserver.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/ui/binder/SeekBarObserver.kt
@@ -18,9 +18,6 @@
 
 import android.animation.Animator
 import android.animation.ObjectAnimator
-import android.icu.text.MeasureFormat
-import android.icu.util.Measure
-import android.icu.util.MeasureUnit
 import android.text.format.DateUtils
 import androidx.annotation.UiThread
 import androidx.lifecycle.Observer
@@ -31,11 +28,8 @@
 import com.android.systemui.media.controls.ui.view.MediaViewHolder
 import com.android.systemui.media.controls.ui.viewmodel.SeekBarViewModel
 import com.android.systemui.res.R
-import java.util.Locale
 
 private const val TAG = "SeekBarObserver"
-private const val MIN_IN_SEC = 60
-private const val HOUR_IN_SEC = MIN_IN_SEC * 60
 
 /**
  * Observer for changes from SeekBarViewModel.
@@ -133,7 +127,7 @@
         }
 
         holder.seekBar.setMax(data.duration)
-        val totalTimeDescription = formatTimeContentDescription(data.duration)
+        val totalTimeDescription = data.durationDescription
         if (data.scrubbing) {
             holder.scrubbingTotalTimeView.text = formatTimeLabel(data.duration)
         }
@@ -153,7 +147,7 @@
                 }
             }
 
-            val elapsedTimeDescription = formatTimeContentDescription(it)
+            val elapsedTimeDescription = data.elapsedTimeDescription
             if (data.scrubbing) {
                 holder.scrubbingElapsedTimeView.text = formatTimeLabel(it)
             }
@@ -172,43 +166,6 @@
         return DateUtils.formatElapsedTime(milliseconds / DateUtils.SECOND_IN_MILLIS)
     }
 
-    /**
-     * Returns a time string suitable for content description, e.g. "12 minutes 34 seconds"
-     *
-     * Follows same logic as Chronometer#formatDuration
-     */
-    private fun formatTimeContentDescription(milliseconds: Int): CharSequence {
-        var seconds = milliseconds / DateUtils.SECOND_IN_MILLIS
-
-        val hours =
-            if (seconds >= HOUR_IN_SEC) {
-                seconds / HOUR_IN_SEC
-            } else {
-                0
-            }
-        seconds -= hours * HOUR_IN_SEC
-
-        val minutes =
-            if (seconds >= MIN_IN_SEC) {
-                seconds / MIN_IN_SEC
-            } else {
-                0
-            }
-        seconds -= minutes * MIN_IN_SEC
-
-        val measures = arrayListOf<Measure>()
-        if (hours > 0) {
-            measures.add(Measure(hours, MeasureUnit.HOUR))
-        }
-        if (minutes > 0) {
-            measures.add(Measure(minutes, MeasureUnit.MINUTE))
-        }
-        measures.add(Measure(seconds, MeasureUnit.SECOND))
-
-        return MeasureFormat.getInstance(Locale.getDefault(), MeasureFormat.FormatWidth.WIDE)
-            .formatMeasures(*measures.toTypedArray())
-    }
-
     @VisibleForTesting
     open fun buildResetAnimator(targetTime: Int): Animator {
         val animator =
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/ui/controller/MediaCarouselController.kt b/packages/SystemUI/src/com/android/systemui/media/controls/ui/controller/MediaCarouselController.kt
index bfd48c8..7b1ae57e 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/ui/controller/MediaCarouselController.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/ui/controller/MediaCarouselController.kt
@@ -62,7 +62,6 @@
 import com.android.systemui.media.controls.shared.model.SmartspaceMediaData
 import com.android.systemui.media.controls.ui.binder.MediaControlViewBinder
 import com.android.systemui.media.controls.ui.binder.MediaRecommendationsViewBinder
-import com.android.systemui.media.controls.ui.controller.MediaControlPanel.SMARTSPACE_CARD_DISMISS_EVENT
 import com.android.systemui.media.controls.ui.util.MediaViewModelCallback
 import com.android.systemui.media.controls.ui.util.MediaViewModelListUpdateCallback
 import com.android.systemui.media.controls.ui.view.MediaCarouselScrollHandler
@@ -72,21 +71,13 @@
 import com.android.systemui.media.controls.ui.view.RecommendationViewHolder
 import com.android.systemui.media.controls.ui.viewmodel.MediaCarouselViewModel
 import com.android.systemui.media.controls.ui.viewmodel.MediaCommonViewModel
-import com.android.systemui.media.controls.util.MediaFlags
 import com.android.systemui.media.controls.util.MediaUiEventLogger
-import com.android.systemui.media.controls.util.SmallHash
 import com.android.systemui.plugins.ActivityStarter
 import com.android.systemui.plugins.FalsingManager
 import com.android.systemui.qs.PageIndicator
 import com.android.systemui.res.R
 import com.android.systemui.scene.shared.flag.SceneContainerFlag
 import com.android.systemui.scene.shared.model.Scenes
-import com.android.systemui.shared.system.SysUiStatsLog
-import com.android.systemui.shared.system.SysUiStatsLog.SMARTSPACE_CARD_REPORTED
-import com.android.systemui.shared.system.SysUiStatsLog.SMART_SPACE_CARD_REPORTED__CARD_TYPE__UNKNOWN_CARD
-import com.android.systemui.shared.system.SysUiStatsLog.SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__DREAM_OVERLAY as SSPACE_CARD_REPORTED__DREAM_OVERLAY
-import com.android.systemui.shared.system.SysUiStatsLog.SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__LOCKSCREEN as SSPACE_CARD_REPORTED__LOCKSCREEN
-import com.android.systemui.shared.system.SysUiStatsLog.SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__SHADE
 import com.android.systemui.statusbar.featurepods.media.domain.interactor.MediaControlChipInteractor
 import com.android.systemui.statusbar.notification.collection.provider.OnReorderingAllowedListener
 import com.android.systemui.statusbar.notification.collection.provider.VisualStabilityProvider
@@ -148,7 +139,6 @@
     dumpManager: DumpManager,
     private val logger: MediaUiEventLogger,
     private val debugLogger: MediaCarouselControllerLogger,
-    private val mediaFlags: MediaFlags,
     private val keyguardUpdateMonitor: KeyguardUpdateMonitor,
     private val keyguardTransitionInteractor: KeyguardTransitionInteractor,
     private val globalSettings: GlobalSettings,
@@ -359,7 +349,6 @@
                 this::updateSeekbarListening,
                 this::closeGuts,
                 falsingManager,
-                this::logSmartspaceImpression,
                 logger,
             )
         carouselLocale = context.resources.configuration.locales.get(0)
@@ -471,64 +460,7 @@
                         } else {
                             null
                         }
-                    if (addOrUpdatePlayer(key, oldKey, data, isSsReactivated, onUiExecutionEnd)) {
-                        // Log card received if a new resumable media card is added
-                        MediaPlayerData.getMediaPlayer(key)?.let {
-                            logSmartspaceCardReported(
-                                759, // SMARTSPACE_CARD_RECEIVED
-                                it.mSmartspaceId,
-                                it.mUid,
-                                surfaces =
-                                    intArrayOf(
-                                        SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__SHADE,
-                                        SSPACE_CARD_REPORTED__LOCKSCREEN,
-                                        SSPACE_CARD_REPORTED__DREAM_OVERLAY,
-                                    ),
-                                rank = MediaPlayerData.getMediaPlayerIndex(key),
-                            )
-                        }
-                        if (
-                            mediaCarouselScrollHandler.visibleToUser &&
-                                mediaCarouselScrollHandler.visibleMediaIndex ==
-                                    MediaPlayerData.getMediaPlayerIndex(key)
-                        ) {
-                            logSmartspaceImpression(mediaCarouselScrollHandler.qsExpanded)
-                        }
-                    } else if (receivedSmartspaceCardLatency != 0) {
-                        // Log resume card received if resumable media card is reactivated and
-                        // resume card is ranked first
-                        MediaPlayerData.players().forEachIndexed { index, it ->
-                            if (it.recommendationViewHolder == null) {
-                                it.mSmartspaceId =
-                                    SmallHash.hash(
-                                        it.mUid + systemClock.currentTimeMillis().toInt()
-                                    )
-                                it.mIsImpressed = false
-
-                                logSmartspaceCardReported(
-                                    759, // SMARTSPACE_CARD_RECEIVED
-                                    it.mSmartspaceId,
-                                    it.mUid,
-                                    surfaces =
-                                        intArrayOf(
-                                            SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__SHADE,
-                                            SSPACE_CARD_REPORTED__LOCKSCREEN,
-                                            SSPACE_CARD_REPORTED__DREAM_OVERLAY,
-                                        ),
-                                    rank = index,
-                                    receivedLatencyMillis = receivedSmartspaceCardLatency,
-                                )
-                            }
-                        }
-                        // If media container area already visible to the user, log impression for
-                        // reactivated card.
-                        if (
-                            mediaCarouselScrollHandler.visibleToUser &&
-                                !mediaCarouselScrollHandler.qsExpanded
-                        ) {
-                            logSmartspaceImpression(mediaCarouselScrollHandler.qsExpanded)
-                        }
-                    }
+                    addOrUpdatePlayer(key, oldKey, data, isSsReactivated, onUiExecutionEnd)
 
                     val canRemove = data.isPlaying?.let { !it } ?: data.isClearable && !data.active
                     if (canRemove && !Utils.useMediaResumption(context)) {
@@ -555,66 +487,7 @@
                     // Log the case where the hidden media carousel with the existed inactive resume
                     // media is shown by the Smartspace signal.
                     if (data.isActive) {
-                        val hasActivatedExistedResumeMedia =
-                            !mediaManager.hasActiveMedia() &&
-                                mediaManager.hasAnyMedia() &&
-                                shouldPrioritize
-                        if (hasActivatedExistedResumeMedia) {
-                            // Log resume card received if resumable media card is reactivated and
-                            // recommendation card is valid and ranked first
-                            MediaPlayerData.players().forEachIndexed { index, it ->
-                                if (it.recommendationViewHolder == null) {
-                                    it.mSmartspaceId =
-                                        SmallHash.hash(
-                                            it.mUid + systemClock.currentTimeMillis().toInt()
-                                        )
-                                    it.mIsImpressed = false
-
-                                    logSmartspaceCardReported(
-                                        759, // SMARTSPACE_CARD_RECEIVED
-                                        it.mSmartspaceId,
-                                        it.mUid,
-                                        surfaces =
-                                            intArrayOf(
-                                                SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__SHADE,
-                                                SSPACE_CARD_REPORTED__LOCKSCREEN,
-                                                SSPACE_CARD_REPORTED__DREAM_OVERLAY,
-                                            ),
-                                        rank = index,
-                                        receivedLatencyMillis =
-                                            (systemClock.currentTimeMillis() -
-                                                    data.headphoneConnectionTimeMillis)
-                                                .toInt(),
-                                    )
-                                }
-                            }
-                        }
                         addSmartspaceMediaRecommendations(key, data, shouldPrioritize)
-                        MediaPlayerData.getMediaPlayer(key)?.let {
-                            logSmartspaceCardReported(
-                                759, // SMARTSPACE_CARD_RECEIVED
-                                it.mSmartspaceId,
-                                it.mUid,
-                                surfaces =
-                                    intArrayOf(
-                                        SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__SHADE,
-                                        SSPACE_CARD_REPORTED__LOCKSCREEN,
-                                        SSPACE_CARD_REPORTED__DREAM_OVERLAY,
-                                    ),
-                                rank = MediaPlayerData.getMediaPlayerIndex(key),
-                                receivedLatencyMillis =
-                                    (systemClock.currentTimeMillis() -
-                                            data.headphoneConnectionTimeMillis)
-                                        .toInt(),
-                            )
-                        }
-                        if (
-                            mediaCarouselScrollHandler.visibleToUser &&
-                                mediaCarouselScrollHandler.visibleMediaIndex ==
-                                    MediaPlayerData.getMediaPlayerIndex(key)
-                        ) {
-                            logSmartspaceImpression(mediaCarouselScrollHandler.qsExpanded)
-                        }
                     } else {
                         // Handle update to inactive as a removal
                         onSmartspaceMediaDataRemoved(data.targetId, immediately = true)
@@ -799,7 +672,6 @@
                 controllerById[commonViewModel.key] = viewController
             }
         }
-        onAddOrUpdateVisibleToUserCard(position, isMediaCardUpdate = false)
         viewController.setListening(mediaCarouselScrollHandler.visibleToUser && currentlyExpanded)
         updateViewControllerToState(viewController, noAnimation = true)
         updatePageIndicator()
@@ -820,10 +692,6 @@
         commonViewModel.onUpdated(commonViewModel)
         updatePageIndicator()
         mediaCarouselScrollHandler.onPlayersChanged()
-        onAddOrUpdateVisibleToUserCard(
-            position,
-            commonViewModel is MediaCommonViewModel.MediaControl,
-        )
     }
 
     private fun onRemoved(commonViewModel: MediaCommonViewModel) {
@@ -870,20 +738,6 @@
         mediaCarouselScrollHandler.onPlayersChanged()
     }
 
-    private fun onAddOrUpdateVisibleToUserCard(position: Int, isMediaCardUpdate: Boolean) {
-        if (
-            mediaCarouselScrollHandler.visibleToUser &&
-                mediaCarouselScrollHandler.visibleMediaIndex == position
-        ) {
-            mediaCarouselViewModel.onCardVisibleToUser(
-                mediaCarouselScrollHandler.qsExpanded,
-                mediaCarouselScrollHandler.visibleMediaIndex,
-                currentEndLocation,
-                isMediaCardUpdate,
-            )
-        }
-    }
-
     private fun setNewViewModelsList(viewModels: List<MediaCommonViewModel>) {
         commonViewModels.clear()
         commonViewModels.addAll(viewModels)
@@ -978,8 +832,7 @@
             // In RTL, Scroll to the first player as it is the rightmost player in media carousel.
             mediaCarouselScrollHandler.scrollToPlayer(destIndex = 0)
         }
-        // Check postcondition: mediaContent should have the same number of children as there
-        // are
+        // Check postcondition: mediaContent should have the same number of children as there are
         // elements in mediaPlayers.
         if (MediaPlayerData.players().size != mediaContent.childCount) {
             Log.e(
@@ -1177,8 +1030,7 @@
             updatePageIndicator()
             mediaFrame.requiresRemeasuring = true
             // Check postcondition: mediaContent should have the same number of children as there
-            // are
-            // elements in mediaPlayers.
+            // are elements in mediaPlayers.
             if (MediaPlayerData.players().size != mediaContent.childCount) {
                 Log.e(
                     TAG,
@@ -1588,145 +1440,12 @@
         }
     }
 
-    /** Log the user impression for media card at visibleMediaIndex. */
-    fun logSmartspaceImpression(qsExpanded: Boolean) {
-        if (SceneContainerFlag.isEnabled) {
-            mediaCarouselViewModel.onCardVisibleToUser(
-                qsExpanded,
-                mediaCarouselScrollHandler.visibleMediaIndex,
-                currentEndLocation,
-            )
-            return
-        }
-        val visibleMediaIndex = mediaCarouselScrollHandler.visibleMediaIndex
-        if (MediaPlayerData.players().size > visibleMediaIndex) {
-            val mediaControlPanel = MediaPlayerData.getMediaControlPanel(visibleMediaIndex)
-            val hasActiveMediaOrRecommendationCard =
-                MediaPlayerData.hasActiveMediaOrRecommendationCard()
-            if (!hasActiveMediaOrRecommendationCard && !qsExpanded) {
-                // Skip logging if on LS or QQS, and there is no active media card
-                return
-            }
-            mediaControlPanel?.let {
-                logSmartspaceCardReported(
-                    800, // SMARTSPACE_CARD_SEEN
-                    it.mSmartspaceId,
-                    it.mUid,
-                    intArrayOf(it.surfaceForSmartspaceLogging),
-                )
-                it.mIsImpressed = true
-            }
-        }
-    }
-
-    /**
-     * Log Smartspace events
-     *
-     * @param eventId UI event id (e.g. 800 for SMARTSPACE_CARD_SEEN)
-     * @param instanceId id to uniquely identify a card, e.g. each headphone generates a new
-     *   instanceId
-     * @param uid uid for the application that media comes from
-     * @param surfaces list of display surfaces the media card is on (e.g. lockscreen, shade) when
-     *   the event happened
-     * @param interactedSubcardRank the rank for interacted media item for recommendation card, -1
-     *   for tapping on card but not on any media item, 0 for first media item, 1 for second, etc.
-     * @param interactedSubcardCardinality how many media items were shown to the user when there is
-     *   user interaction
-     * @param rank the rank for media card in the media carousel, starting from 0
-     * @param receivedLatencyMillis latency in milliseconds for card received events. E.g. latency
-     *   between headphone connection to sysUI displays media recommendation card
-     * @param isSwipeToDismiss whether is to log swipe-to-dismiss event
-     */
-    @JvmOverloads
-    fun logSmartspaceCardReported(
-        eventId: Int,
-        instanceId: Int,
-        uid: Int,
-        surfaces: IntArray,
-        interactedSubcardRank: Int = 0,
-        interactedSubcardCardinality: Int = 0,
-        rank: Int = mediaCarouselScrollHandler.visibleMediaIndex,
-        receivedLatencyMillis: Int = 0,
-        isSwipeToDismiss: Boolean = false,
-    ) {
-        if (MediaPlayerData.players().size <= rank) {
-            return
-        }
-
-        val mediaControlKey = MediaPlayerData.visiblePlayerKeys().elementAt(rank)
-        // Only log media resume card when Smartspace data is available
-        if (
-            !mediaControlKey.isSsMediaRec &&
-                !mediaManager.isRecommendationActive() &&
-                MediaPlayerData.smartspaceMediaData == null
-        ) {
-            return
-        }
-
-        val cardinality = mediaContent.getChildCount()
-        surfaces.forEach { surface ->
-            SysUiStatsLog.write(
-                SMARTSPACE_CARD_REPORTED,
-                eventId,
-                instanceId,
-                // Deprecated, replaced with AiAi feature type so we don't need to create logging
-                // card type for each new feature.
-                SMART_SPACE_CARD_REPORTED__CARD_TYPE__UNKNOWN_CARD,
-                surface,
-                // Use -1 as rank value to indicate user swipe to dismiss the card
-                if (isSwipeToDismiss) -1 else rank,
-                cardinality,
-                if (mediaControlKey.isSsMediaRec) {
-                    15 // MEDIA_RECOMMENDATION
-                } else if (mediaControlKey.isSsReactivated) {
-                    43 // MEDIA_RESUME_SS_ACTIVATED
-                } else {
-                    31
-                }, // MEDIA_RESUME
-                uid,
-                interactedSubcardRank,
-                interactedSubcardCardinality,
-                receivedLatencyMillis,
-                null, // Media cards cannot have subcards.
-                null, // Media cards don't have dimensions today.
-            )
-
-            if (DEBUG) {
-                Log.d(
-                    TAG,
-                    "Log Smartspace card event id: $eventId instance id: $instanceId" +
-                        " surface: $surface rank: $rank cardinality: $cardinality " +
-                        "isRecommendationCard: ${mediaControlKey.isSsMediaRec} " +
-                        "isSsReactivated: ${mediaControlKey.isSsReactivated}" +
-                        "uid: $uid " +
-                        "interactedSubcardRank: $interactedSubcardRank " +
-                        "interactedSubcardCardinality: $interactedSubcardCardinality " +
-                        "received_latency_millis: $receivedLatencyMillis",
-                )
-            }
-        }
-    }
-
     @VisibleForTesting
     fun onSwipeToDismiss() {
         if (SceneContainerFlag.isEnabled) {
-            mediaCarouselViewModel.onSwipeToDismiss(currentEndLocation)
+            mediaCarouselViewModel.onSwipeToDismiss()
             return
         }
-        MediaPlayerData.players().forEachIndexed { index, it ->
-            if (it.mIsImpressed) {
-                logSmartspaceCardReported(
-                    SMARTSPACE_CARD_DISMISS_EVENT,
-                    it.mSmartspaceId,
-                    it.mUid,
-                    intArrayOf(it.surfaceForSmartspaceLogging),
-                    rank = index,
-                    isSwipeToDismiss = true,
-                )
-                // Reset card impressed state when swipe to dismissed
-                it.mIsImpressed = false
-            }
-        }
         MediaPlayerData.isSwipedAway = true
         logger.logSwipeDismiss()
         mediaManager.onSwipeToDismiss()
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/ui/controller/MediaControlPanel.java b/packages/SystemUI/src/com/android/systemui/media/controls/ui/controller/MediaControlPanel.java
index 694a4c7..a6bf5f4 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/ui/controller/MediaControlPanel.java
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/ui/controller/MediaControlPanel.java
@@ -117,7 +117,6 @@
 import com.android.systemui.media.controls.ui.viewmodel.SeekBarViewModel;
 import com.android.systemui.media.controls.util.MediaDataUtils;
 import com.android.systemui.media.controls.util.MediaUiEventLogger;
-import com.android.systemui.media.controls.util.SmallHash;
 import com.android.systemui.media.dialog.MediaOutputDialogManager;
 import com.android.systemui.monet.ColorScheme;
 import com.android.systemui.monet.Style;
@@ -125,7 +124,6 @@
 import com.android.systemui.plugins.FalsingManager;
 import com.android.systemui.res.R;
 import com.android.systemui.scene.shared.flag.SceneContainerFlag;
-import com.android.systemui.shared.system.SysUiStatsLog;
 import com.android.systemui.statusbar.NotificationLockscreenUserManager;
 import com.android.systemui.statusbar.policy.KeyguardStateController;
 import com.android.systemui.surfaceeffects.PaintDrawCallback;
@@ -174,10 +172,6 @@
     private static final String KEY_SMARTSPACE_ARTIST_NAME = "artist_name";
     private static final String KEY_SMARTSPACE_OPEN_IN_FOREGROUND = "KEY_OPEN_IN_FOREGROUND";
 
-    // Event types logged by smartspace
-    private static final int SMARTSPACE_CARD_CLICK_EVENT = 760;
-    protected static final int SMARTSPACE_CARD_DISMISS_EVENT = 761;
-
     private static final float REC_MEDIA_COVER_SCALE_FACTOR = 1.25f;
     private static final float MEDIA_REC_SCRIM_START_ALPHA = 0.15f;
     private static final float MEDIA_REC_SCRIM_END_ALPHA = 1.0f;
@@ -247,11 +241,9 @@
     private final NotificationLockscreenUserManager mLockscreenUserManager;
 
     // Used for logging.
-    protected boolean mIsImpressed = false;
     private SystemClock mSystemClock;
     private MediaUiEventLogger mLogger;
     private InstanceId mInstanceId;
-    protected int mSmartspaceId = -1;
     private String mPackageName;
 
     private boolean mIsScrubbing = false;
@@ -350,7 +342,6 @@
             if (mPackageName != null && mInstanceId != null) {
                 mLogger.logSeek(mUid, mPackageName, mInstanceId);
             }
-            logSmartspaceCardReported(SMARTSPACE_CARD_CLICK_EVENT);
             return Unit.INSTANCE;
         });
 
@@ -565,10 +556,6 @@
         MediaSession.Token token = data.getToken();
         mPackageName = data.getPackageName();
         mUid = data.getAppUid();
-        // Only assigns instance id if it's unassigned.
-        if (mSmartspaceId == -1) {
-            mSmartspaceId = SmallHash.hash(mUid + (int) mSystemClock.currentTimeMillis());
-        }
         mInstanceId = data.getInstanceId();
 
         if (mToken == null || !mToken.equals(token)) {
@@ -588,7 +575,6 @@
                 if (mFalsingManager.isFalseTap(FalsingManager.LOW_PENALTY)) return;
                 if (mMediaViewController.isGutsVisible()) return;
                 mLogger.logTapContentView(mUid, mPackageName, mInstanceId);
-                logSmartspaceCardReported(SMARTSPACE_CARD_CLICK_EVENT);
 
                 boolean showOverLockscreen = mKeyguardStateController.isShowing()
                         && mActivityIntentHelper.wouldPendingShowOverLockscreen(clickIntent,
@@ -1289,7 +1275,6 @@
                 button.setOnClickListener(v -> {
                     if (!mFalsingManager.isFalseTap(FalsingManager.MODERATE_PENALTY)) {
                         mLogger.logTapAction(button.getId(), mUid, mPackageName, mInstanceId);
-                        logSmartspaceCardReported(SMARTSPACE_CARD_CLICK_EVENT);
                         // Used to determine whether to play turbulence noise.
                         mWasPlaying = isPlaying();
                         mButtonClicked = true;
@@ -1497,7 +1482,6 @@
         }
 
         mRecommendationData = data;
-        mSmartspaceId = SmallHash.hash(data.getTargetId());
         mPackageName = data.getPackageName();
         mInstanceId = data.getInstanceId();
 
@@ -1752,7 +1736,6 @@
         gutsViewHolder.getDismiss().setEnabled(isDismissible);
         gutsViewHolder.getDismiss().setOnClickListener(v -> {
             if (mFalsingManager.isFalseTap(FalsingManager.LOW_PENALTY)) return;
-            logSmartspaceCardReported(SMARTSPACE_CARD_DISMISS_EVENT);
             mLogger.logLongPressDismiss(mUid, mPackageName, mInstanceId);
 
             onDismissClickedRunnable.run();
@@ -1932,9 +1915,6 @@
             } else {
                 mLogger.logRecommendationItemTap(mPackageName, mInstanceId, interactedSubcardRank);
             }
-            logSmartspaceCardReported(SMARTSPACE_CARD_CLICK_EVENT,
-                    interactedSubcardRank,
-                    mSmartspaceMediaItemsCount);
 
             if (shouldSmartspaceRecItemOpenInForeground(action)) {
                 // Request to unlock the device if the activity needs to be opened in foreground.
@@ -1975,39 +1955,5 @@
 
         return false;
     }
-
-    /**
-     * Get the surface given the current end location for MediaViewController
-     *
-     * @return surface used for Smartspace logging
-     */
-    protected int getSurfaceForSmartspaceLogging() {
-        int currentEndLocation = mMediaViewController.getCurrentEndLocation();
-        if (currentEndLocation == MediaHierarchyManager.LOCATION_QQS
-                || currentEndLocation == MediaHierarchyManager.LOCATION_QS) {
-            return SysUiStatsLog.SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__SHADE;
-        } else if (currentEndLocation == MediaHierarchyManager.LOCATION_LOCKSCREEN) {
-            return SysUiStatsLog.SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__LOCKSCREEN;
-        } else if (currentEndLocation == MediaHierarchyManager.LOCATION_DREAM_OVERLAY) {
-            return SysUiStatsLog.SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__DREAM_OVERLAY;
-        }
-        return SysUiStatsLog.SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__DEFAULT_SURFACE;
-    }
-
-    private void logSmartspaceCardReported(int eventId) {
-        logSmartspaceCardReported(eventId,
-                /* interactedSubcardRank */ 0,
-                /* interactedSubcardCardinality */ 0);
-    }
-
-    private void logSmartspaceCardReported(int eventId,
-            int interactedSubcardRank, int interactedSubcardCardinality) {
-        mMediaCarouselController.logSmartspaceCardReported(eventId,
-                mSmartspaceId,
-                mUid,
-                new int[]{getSurfaceForSmartspaceLogging()},
-                interactedSubcardRank,
-                interactedSubcardCardinality);
-    }
 }
 
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/ui/controller/MediaHierarchyManager.kt b/packages/SystemUI/src/com/android/systemui/media/controls/ui/controller/MediaHierarchyManager.kt
index f06c4cc..c689408 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/ui/controller/MediaHierarchyManager.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/ui/controller/MediaHierarchyManager.kt
@@ -286,10 +286,6 @@
                 field = value
                 mediaCarouselController.mediaCarouselScrollHandler.qsExpanded = value
             }
-            // qs is expanded on LS shade and HS shade
-            if (value && (isLockScreenShadeVisibleToUser() || isHomeScreenShadeVisibleToUser())) {
-                mediaCarouselController.logSmartspaceImpression(value)
-            }
             updateUserVisibility()
         }
 
@@ -520,12 +516,6 @@
 
                 override fun onStateChanged(newState: Int) {
                     updateTargetState()
-                    // Enters shade from lock screen
-                    if (
-                        newState == StatusBarState.SHADE_LOCKED && isLockScreenShadeVisibleToUser()
-                    ) {
-                        mediaCarouselController.logSmartspaceImpression(qsExpanded)
-                    }
                     updateUserVisibility()
                 }
 
@@ -536,10 +526,6 @@
                 override fun onDozingChanged(isDozing: Boolean) {
                     if (!isDozing) {
                         dozeAnimationRunning = false
-                        // Enters lock screen from screen off
-                        if (isLockScreenVisibleToUser()) {
-                            mediaCarouselController.logSmartspaceImpression(qsExpanded)
-                        }
                     } else {
                         updateDesiredLocation()
                         qsExpanded = false
@@ -549,10 +535,6 @@
                 }
 
                 override fun onExpandedChanged(isExpanded: Boolean) {
-                    // Enters shade from home screen
-                    if (isHomeScreenShadeVisibleToUser()) {
-                        mediaCarouselController.logSmartspaceImpression(qsExpanded)
-                    }
                     updateUserVisibility()
                 }
             }
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/ui/view/MediaCarouselScrollHandler.kt b/packages/SystemUI/src/com/android/systemui/media/controls/ui/view/MediaCarouselScrollHandler.kt
index 0107a52..9cf4a7b 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/ui/view/MediaCarouselScrollHandler.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/ui/view/MediaCarouselScrollHandler.kt
@@ -64,7 +64,6 @@
     private var seekBarUpdateListener: (visibleToUser: Boolean) -> Unit,
     private val closeGuts: (immediate: Boolean) -> Unit,
     private val falsingManager: FalsingManager,
-    private val logSmartspaceImpression: (Boolean) -> Unit,
     private val logger: MediaUiEventLogger,
 ) {
     /** Trace state logger for media carousel visibility */
@@ -480,7 +479,6 @@
             val oldIndex = visibleMediaIndex
             visibleMediaIndex = newIndex
             if (oldIndex != visibleMediaIndex && visibleToUser) {
-                logSmartspaceImpression(qsExpanded)
                 logger.logMediaCarouselPage(newIndex)
             }
             closeGuts(false)
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/ui/viewmodel/MediaCarouselViewModel.kt b/packages/SystemUI/src/com/android/systemui/media/controls/ui/viewmodel/MediaCarouselViewModel.kt
index 4bdcfea6..e5f1766 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/ui/viewmodel/MediaCarouselViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/ui/viewmodel/MediaCarouselViewModel.kt
@@ -25,7 +25,6 @@
 import com.android.systemui.media.controls.domain.pipeline.interactor.factory.MediaControlInteractorFactory
 import com.android.systemui.media.controls.shared.MediaLogger
 import com.android.systemui.media.controls.shared.model.MediaCommonModel
-import com.android.systemui.media.controls.util.MediaFlags
 import com.android.systemui.media.controls.util.MediaUiEventLogger
 import com.android.systemui.statusbar.notification.collection.provider.VisualStabilityProvider
 import com.android.systemui.util.Utils
@@ -52,7 +51,6 @@
     private val controlInteractorFactory: MediaControlInteractorFactory,
     private val recommendationsViewModel: MediaRecommendationsViewModel,
     private val logger: MediaUiEventLogger,
-    private val mediaFlags: MediaFlags,
     private val mediaLogger: MediaLogger,
 ) {
 
@@ -103,9 +101,9 @@
 
     private var allowReorder = false
 
-    fun onSwipeToDismiss(location: Int) {
+    fun onSwipeToDismiss() {
         logger.logSwipeDismiss()
-        interactor.onSwipeToDismiss(location)
+        interactor.onSwipeToDismiss()
     }
 
     fun onReorderingAllowed() {
@@ -113,17 +111,6 @@
         interactor.reorderMedia()
     }
 
-    fun onCardVisibleToUser(
-        qsExpanded: Boolean,
-        visibleIndex: Int,
-        location: Int,
-        isUpdate: Boolean = false,
-    ) {
-        // Skip logging if on LS or QQS, and there is no active media card
-        if (!qsExpanded && !interactor.hasActiveMediaOrRecommendation()) return
-        interactor.logSmartspaceSeenCard(visibleIndex, location, isUpdate)
-    }
-
     private fun toViewModel(
         commonModel: MediaCommonModel.MediaControl
     ): MediaCommonViewModel.MediaControl {
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/ui/viewmodel/MediaControlViewModel.kt b/packages/SystemUI/src/com/android/systemui/media/controls/ui/viewmodel/MediaControlViewModel.kt
index bcda485..015274a 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/ui/viewmodel/MediaControlViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/ui/viewmodel/MediaControlViewModel.kt
@@ -35,8 +35,6 @@
 import com.android.systemui.media.controls.shared.model.MediaControlModel
 import com.android.systemui.media.controls.ui.controller.MediaHierarchyManager
 import com.android.systemui.media.controls.ui.controller.MediaLocation
-import com.android.systemui.media.controls.util.MediaSmartspaceLogger.Companion.SMARTSPACE_CARD_CLICK_EVENT
-import com.android.systemui.media.controls.util.MediaSmartspaceLogger.Companion.SMARTSPACE_CARD_DISMISS_EVENT
 import com.android.systemui.media.controls.util.MediaUiEventLogger
 import com.android.systemui.res.R
 import java.util.concurrent.Executor
@@ -90,13 +88,7 @@
         instanceId: InstanceId,
     ) {
         logger.logLongPressDismiss(uid, packageName, instanceId)
-        interactor.removeMediaControl(
-            token,
-            instanceId,
-            MEDIA_PLAYER_ANIMATION_DELAY,
-            SMARTSPACE_CARD_DISMISS_EVENT,
-            location,
-        )
+        interactor.removeMediaControl(token, instanceId, MEDIA_PLAYER_ANIMATION_DELAY)
     }
 
     private fun toViewModel(model: MediaControlModel): MediaPlayerViewModel {
@@ -141,21 +133,13 @@
             onClicked = { expandable ->
                 model.clickIntent?.let { clickIntent ->
                     logger.logTapContentView(model.uid, model.packageName, model.instanceId)
-                    interactor.startClickIntent(
-                        expandable,
-                        clickIntent,
-                        SMARTSPACE_CARD_CLICK_EVENT,
-                        location,
-                    )
+                    interactor.startClickIntent(expandable, clickIntent)
                 }
             },
             onLongClicked = {
                 logger.logLongPressOpen(model.uid, model.packageName, model.instanceId)
             },
-            onSeek = {
-                logger.logSeek(model.uid, model.packageName, model.instanceId)
-                interactor.logSmartspaceUserEvent(SMARTSPACE_CARD_CLICK_EVENT, location)
-            },
+            onSeek = { logger.logSeek(model.uid, model.packageName, model.instanceId) },
             onBindSeekbar = { seekBarViewModel ->
                 if (model.isResume && model.resumeProgress != null) {
                     seekBarViewModel.updateStaticProgress(model.resumeProgress)
@@ -366,7 +350,6 @@
         action: Runnable,
     ) {
         logger.logTapAction(id, uid, packageName, instanceId)
-        interactor.logSmartspaceUserEvent(SMARTSPACE_CARD_CLICK_EVENT, location)
         isAnyButtonClicked = true
         action.run()
     }
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/ui/viewmodel/MediaRecommendationsViewModel.kt b/packages/SystemUI/src/com/android/systemui/media/controls/ui/viewmodel/MediaRecommendationsViewModel.kt
index 88cfbaf..90313dd 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/ui/viewmodel/MediaRecommendationsViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/ui/viewmodel/MediaRecommendationsViewModel.kt
@@ -30,13 +30,10 @@
 import com.android.systemui.media.controls.domain.pipeline.interactor.MediaRecommendationsInteractor
 import com.android.systemui.media.controls.shared.model.MediaRecModel
 import com.android.systemui.media.controls.shared.model.MediaRecommendationsModel
-import com.android.systemui.media.controls.shared.model.NUM_REQUIRED_RECOMMENDATIONS
 import com.android.systemui.media.controls.ui.controller.MediaHierarchyManager
 import com.android.systemui.media.controls.ui.controller.MediaLocation
 import com.android.systemui.media.controls.ui.controller.MediaViewController.Companion.GUTS_ANIMATION_DURATION
 import com.android.systemui.media.controls.util.MediaDataUtils
-import com.android.systemui.media.controls.util.MediaSmartspaceLogger.Companion.SMARTSPACE_CARD_CLICK_EVENT
-import com.android.systemui.media.controls.util.MediaSmartspaceLogger.Companion.SMARTSPACE_CARD_DISMISS_EVENT
 import com.android.systemui.media.controls.util.MediaUiEventLogger
 import com.android.systemui.res.R
 import javax.inject.Inject
@@ -77,13 +74,7 @@
         instanceId: InstanceId?,
     ) {
         logger.logLongPressDismiss(uid, packageName, instanceId)
-        interactor.removeMediaRecommendations(
-            key,
-            dismissIntent,
-            GUTS_DISMISS_DELAY_MS_DURATION,
-            SMARTSPACE_CARD_DISMISS_EVENT,
-            location,
-        )
+        interactor.removeMediaRecommendations(key, dismissIntent, GUTS_DISMISS_DELAY_MS_DURATION)
     }
 
     private fun onClicked(
@@ -107,14 +98,7 @@
         // set the package name of the player added by recommendation once the media is loaded.
         interactor.switchToMediaControl(packageName)
 
-        interactor.startClickIntent(
-            expandable,
-            intent,
-            SMARTSPACE_CARD_CLICK_EVENT,
-            location,
-            index,
-            NUM_REQUIRED_RECOMMENDATIONS,
-        )
+        interactor.startClickIntent(expandable, intent)
     }
 
     private suspend fun toRecsViewModel(model: MediaRecommendationsModel): MediaRecsCardViewModel? {
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/ui/viewmodel/SeekBarViewModel.kt b/packages/SystemUI/src/com/android/systemui/media/controls/ui/viewmodel/SeekBarViewModel.kt
index 1e99697..a1f0cc3 100644
--- a/packages/SystemUI/src/com/android/systemui/media/controls/ui/viewmodel/SeekBarViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/controls/ui/viewmodel/SeekBarViewModel.kt
@@ -16,11 +16,15 @@
 
 package com.android.systemui.media.controls.ui.viewmodel
 
+import android.icu.text.MeasureFormat
+import android.icu.util.Measure
+import android.icu.util.MeasureUnit
 import android.media.MediaMetadata
 import android.media.session.MediaController
 import android.media.session.PlaybackState
 import android.os.SystemClock
 import android.os.Trace
+import android.text.format.DateUtils
 import android.view.GestureDetector
 import android.view.MotionEvent
 import android.view.View
@@ -38,11 +42,14 @@
 import com.android.systemui.plugins.FalsingManager
 import com.android.systemui.statusbar.NotificationMediaManager
 import com.android.systemui.util.concurrency.RepeatableExecutor
+import java.util.Locale
 import javax.inject.Inject
 import kotlin.math.abs
 
-private const val POSITION_UPDATE_INTERVAL_MILLIS = 100L
+private const val POSITION_UPDATE_INTERVAL_MILLIS = 500L
 private const val MIN_FLING_VELOCITY_SCALE_FACTOR = 10
+private const val MIN_IN_SEC = 60
+private const val HOUR_IN_SEC = MIN_IN_SEC * 60
 
 private const val TRACE_POSITION_NAME = "SeekBarPollingPosition"
 
@@ -97,11 +104,20 @@
         )
         set(value) {
             val enabledChanged = value.enabled != field.enabled
-            field = value
             if (enabledChanged) {
                 enabledChangeListener?.onEnabledChanged(value.enabled)
             }
-            _progress.postValue(value)
+            bgExecutor.execute {
+                val durationDescription = formatTimeContentDescription(value.duration)
+                val elapsedDescription =
+                    value.elapsedTime?.let { formatTimeContentDescription(it) } ?: ""
+                field =
+                    value.copy(
+                        durationDescription = durationDescription,
+                        elapsedTimeDescription = elapsedDescription,
+                    )
+                _progress.postValue(field)
+            }
         }
 
     private val _progress = MutableLiveData<Progress>().apply { postValue(_data) }
@@ -253,7 +269,8 @@
                 playbackState?.state ?: PlaybackState.STATE_NONE
             )
         _data = Progress(enabled, seekAvailable, playing, scrubbing, position, duration, listening)
-        checkIfPollingNeeded()
+        // No need to update since we just set the progress info
+        checkIfPollingNeeded(requireUpdate = false)
     }
 
     /**
@@ -311,8 +328,13 @@
         }
     }
 
+    /**
+     * Begin polling if needed given the current seekbar state
+     *
+     * @param requireUpdate If true, update the playback position without beginning polling
+     */
     @WorkerThread
-    private fun checkIfPollingNeeded() {
+    private fun checkIfPollingNeeded(requireUpdate: Boolean = true) {
         val needed = listening && !scrubbing && playbackState?.isInMotion() ?: false
         val traceCookie = controller?.sessionToken.hashCode()
         if (needed) {
@@ -329,7 +351,7 @@
                     Trace.endAsyncSection(TRACE_POSITION_NAME, traceCookie)
                 }
             }
-        } else {
+        } else if (requireUpdate) {
             checkPlaybackPosition()
             cancel?.run()
             cancel = null
@@ -399,6 +421,43 @@
             abs(firstMotionEvent!!.y - lastMotionEvent!!.y)
     }
 
+    /**
+     * Returns a time string suitable for content description, e.g. "12 minutes 34 seconds"
+     *
+     * Follows same logic as Chronometer#formatDuration
+     */
+    private fun formatTimeContentDescription(milliseconds: Int): CharSequence {
+        var seconds = milliseconds / DateUtils.SECOND_IN_MILLIS
+
+        val hours =
+            if (seconds >= HOUR_IN_SEC) {
+                seconds / HOUR_IN_SEC
+            } else {
+                0
+            }
+        seconds -= hours * HOUR_IN_SEC
+
+        val minutes =
+            if (seconds >= MIN_IN_SEC) {
+                seconds / MIN_IN_SEC
+            } else {
+                0
+            }
+        seconds -= minutes * MIN_IN_SEC
+
+        val measures = arrayListOf<Measure>()
+        if (hours > 0) {
+            measures.add(Measure(hours, MeasureUnit.HOUR))
+        }
+        if (minutes > 0) {
+            measures.add(Measure(minutes, MeasureUnit.MINUTE))
+        }
+        measures.add(Measure(seconds, MeasureUnit.SECOND))
+
+        return MeasureFormat.getInstance(Locale.getDefault(), MeasureFormat.FormatWidth.WIDE)
+            .formatMeasures(*measures.toTypedArray())
+    }
+
     /** Listener interface to be notified when the user starts or stops scrubbing. */
     interface ScrubbingChangeListener {
         fun onScrubbingChanged(scrubbing: Boolean)
@@ -580,5 +639,7 @@
         val duration: Int,
         /** whether seekBar is listening to progress updates */
         val listening: Boolean,
+        val elapsedTimeDescription: CharSequence = "",
+        val durationDescription: CharSequence = "",
     )
 }
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/util/MediaSmartspaceLogger.kt b/packages/SystemUI/src/com/android/systemui/media/controls/util/MediaSmartspaceLogger.kt
deleted file mode 100644
index 9c59aa2..0000000
--- a/packages/SystemUI/src/com/android/systemui/media/controls/util/MediaSmartspaceLogger.kt
+++ /dev/null
@@ -1,219 +0,0 @@
-/*
- * Copyright (C) 2024 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.systemui.media.controls.util
-
-import android.util.Log
-import com.android.systemui.dagger.SysUISingleton
-import com.android.systemui.media.controls.ui.controller.MediaHierarchyManager
-import com.android.systemui.scene.shared.flag.SceneContainerFlag
-import com.android.systemui.shared.system.SysUiStatsLog
-import javax.inject.Inject
-
-/** Logger class for Smartspace logging events. */
-@SysUISingleton
-class MediaSmartspaceLogger @Inject constructor() {
-    /**
-     * Log Smartspace card received event
-     *
-     * @param instanceId id to uniquely identify a card.
-     * @param uid uid for the application that media comes from.
-     * @param cardinality number of card in carousel.
-     * @param isRecommendationCard whether media card being logged is a recommendations card.
-     * @param isSsReactivated indicates resume media card is reactivated by Smartspace
-     *   recommendation signal
-     * @param rank the rank for media card in the media carousel, starting from 0
-     * @param receivedLatencyMillis latency in milliseconds for card received events.
-     */
-    fun logSmartspaceCardReceived(
-        instanceId: Int,
-        uid: Int,
-        cardinality: Int,
-        isRecommendationCard: Boolean = false,
-        isSsReactivated: Boolean = false,
-        rank: Int = 0,
-        receivedLatencyMillis: Int = 0,
-    ) {
-        logSmartspaceCardReported(
-            SMARTSPACE_CARD_RECEIVED_EVENT,
-            instanceId,
-            uid,
-            surfaces =
-                intArrayOf(
-                    SysUiStatsLog.SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__SHADE,
-                    SysUiStatsLog.SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__LOCKSCREEN,
-                    SysUiStatsLog.SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__DREAM_OVERLAY,
-                ),
-            cardinality,
-            isRecommendationCard,
-            isSsReactivated,
-            rank = rank,
-            receivedLatencyMillis = receivedLatencyMillis,
-        )
-    }
-
-    /**
-     * Log Smartspace card UI event
-     *
-     * @param eventId id of the event. eg: dismiss, click, or seen.
-     * @param instanceId id to uniquely identify a card.
-     * @param uid uid for the application that media comes from.
-     * @param surface location of media carousel holding media card.
-     * @param cardinality number of card in carousel.
-     * @param isRecommendationCard whether media card being logged is a recommendations card.
-     * @param isSsReactivated indicates resume media card is reactivated by Smartspace
-     *   recommendation signal
-     * @param rank the rank for media card in the media carousel, starting from 0
-     * @param isSwipeToDismiss whether is to log swipe-to-dismiss event
-     */
-    fun logSmartspaceCardUIEvent(
-        eventId: Int,
-        instanceId: Int,
-        uid: Int,
-        surface: Int,
-        cardinality: Int,
-        isRecommendationCard: Boolean = false,
-        isSsReactivated: Boolean = false,
-        interactedSubcardRank: Int = 0,
-        interactedSubcardCardinality: Int = 0,
-        rank: Int = 0,
-        isSwipeToDismiss: Boolean = false,
-    ) {
-        logSmartspaceCardReported(
-            eventId,
-            instanceId,
-            uid,
-            surfaces = intArrayOf(surface),
-            cardinality,
-            isRecommendationCard,
-            isSsReactivated,
-            interactedSubcardRank,
-            interactedSubcardCardinality,
-            rank = rank,
-            isSwipeToDismiss = isSwipeToDismiss,
-        )
-    }
-
-    /**
-     * Log Smartspace events
-     *
-     * @param eventId UI event id (e.g. 800 for SMARTSPACE_CARD_SEEN)
-     * @param instanceId id to uniquely identify a card, e.g. each headphone generates a new
-     *   instanceId
-     * @param uid uid for the application that media comes from
-     * @param surfaces list of display surfaces the media card is on (e.g. lockscreen, shade) when
-     *   the event happened
-     * @param cardinality number of card in carousel.
-     * @param isRecommendationCard whether media card being logged is a recommendations card.
-     * @param isSsReactivated indicates resume media card is reactivated by Smartspace
-     *   recommendation signal
-     * @param interactedSubcardRank the rank for interacted media item for recommendation card, -1
-     *   for tapping on card but not on any media item, 0 for first media item, 1 for second, etc.
-     * @param interactedSubcardCardinality how many media items were shown to the user when there is
-     *   user interaction
-     * @param rank the rank for media card in the media carousel, starting from 0
-     * @param receivedLatencyMillis latency in milliseconds for card received events. E.g. latency
-     *   between headphone connection to sysUI displays media recommendation card
-     * @param isSwipeToDismiss whether is to log swipe-to-dismiss event
-     */
-    private fun logSmartspaceCardReported(
-        eventId: Int,
-        instanceId: Int,
-        uid: Int,
-        surfaces: IntArray,
-        cardinality: Int,
-        isRecommendationCard: Boolean,
-        isSsReactivated: Boolean,
-        interactedSubcardRank: Int = 0,
-        interactedSubcardCardinality: Int = 0,
-        rank: Int = 0,
-        receivedLatencyMillis: Int = 0,
-        isSwipeToDismiss: Boolean = false,
-    ) {
-        surfaces.forEach { surface ->
-            SysUiStatsLog.write(
-                SysUiStatsLog.SMARTSPACE_CARD_REPORTED,
-                eventId,
-                instanceId,
-                // Deprecated, replaced with AiAi feature type so we don't need to create logging
-                // card type for each new feature.
-                SysUiStatsLog.SMART_SPACE_CARD_REPORTED__CARD_TYPE__UNKNOWN_CARD,
-                surface,
-                // Use -1 as rank value to indicate user swipe to dismiss the card
-                if (isSwipeToDismiss) -1 else rank,
-                cardinality,
-                if (isRecommendationCard) {
-                    15 // MEDIA_RECOMMENDATION
-                } else if (isSsReactivated) {
-                    43 // MEDIA_RESUME_SS_ACTIVATED
-                } else {
-                    31 // MEDIA_RESUME
-                },
-                uid,
-                interactedSubcardRank,
-                interactedSubcardCardinality,
-                receivedLatencyMillis,
-                null, // Media cards cannot have subcards.
-                null // Media cards don't have dimensions today.
-            )
-
-            if (DEBUG) {
-                Log.d(
-                    TAG,
-                    "Log Smartspace card event id: $eventId instance id: $instanceId" +
-                        " surface: $surface rank: $rank cardinality: $cardinality " +
-                        "isRecommendationCard: $isRecommendationCard " +
-                        "isSsReactivated: $isSsReactivated" +
-                        "uid: $uid " +
-                        "interactedSubcardRank: $interactedSubcardRank " +
-                        "interactedSubcardCardinality: $interactedSubcardCardinality " +
-                        "received_latency_millis: $receivedLatencyMillis"
-                )
-            }
-        }
-    }
-
-    companion object {
-        private const val TAG = "MediaSmartspaceLogger"
-        private val DEBUG = Log.isLoggable(TAG, Log.DEBUG)
-        private const val SMARTSPACE_CARD_RECEIVED_EVENT = 759
-        const val SMARTSPACE_CARD_CLICK_EVENT = 760
-        const val SMARTSPACE_CARD_DISMISS_EVENT = 761
-        const val SMARTSPACE_CARD_SEEN_EVENT = 800
-
-        /**
-         * Get the location of media view given [currentEndLocation]
-         *
-         * @return location used for Smartspace logging
-         */
-        fun getSurface(location: Int): Int {
-            SceneContainerFlag.isUnexpectedlyInLegacyMode()
-            return when (location) {
-                MediaHierarchyManager.LOCATION_QQS,
-                MediaHierarchyManager.LOCATION_QS -> {
-                    SysUiStatsLog.SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__SHADE
-                }
-                MediaHierarchyManager.LOCATION_LOCKSCREEN -> {
-                    SysUiStatsLog.SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__LOCKSCREEN
-                }
-                MediaHierarchyManager.LOCATION_DREAM_OVERLAY -> {
-                    SysUiStatsLog.SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__DREAM_OVERLAY
-                }
-                else -> SysUiStatsLog.SMART_SPACE_CARD_REPORTED__DISPLAY_SURFACE__DEFAULT_SURFACE
-            }
-        }
-    }
-}
diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/util/SmallHash.java b/packages/SystemUI/src/com/android/systemui/media/controls/util/SmallHash.java
deleted file mode 100644
index 97483a6..0000000
--- a/packages/SystemUI/src/com/android/systemui/media/controls/util/SmallHash.java
+++ /dev/null
@@ -1,44 +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.systemui.media.controls.util;
-
-import java.util.Objects;
-
-/**
- * A simple hash function for use in privacy-sensitive logging.
- */
-public final class SmallHash {
-    // Hashes will be in the range [0, MAX_HASH).
-    public static final int MAX_HASH = (1 << 13);
-
-    /** Return Small hash of the string, if non-null, or 0 otherwise. */
-    public static int hash(String in) {
-        return hash(Objects.hashCode(in));
-    }
-
-    /**
-     * Maps in to the range [0, MAX_HASH), keeping similar values distinct.
-     *
-     * @param in An arbitrary integer.
-     * @return in mod MAX_HASH, signs chosen to stay in the range [0, MAX_HASH).
-     */
-    public static int hash(int in) {
-        return Math.abs(Math.floorMod(in, MAX_HASH));
-    }
-
-    private SmallHash() {}
-}
diff --git a/packages/SystemUI/src/com/android/systemui/media/dialog/MediaSwitchingController.java b/packages/SystemUI/src/com/android/systemui/media/dialog/MediaSwitchingController.java
index 9d37580..1f2f571 100644
--- a/packages/SystemUI/src/com/android/systemui/media/dialog/MediaSwitchingController.java
+++ b/packages/SystemUI/src/com/android/systemui/media/dialog/MediaSwitchingController.java
@@ -648,6 +648,10 @@
             final MediaDevice connectedMediaDevice =
                     needToHandleMutingExpectedDevice ? null
                             : getCurrentConnectedMediaDevice();
+
+            Set<String> selectedDevicesIds = getSelectedMediaDevice().stream()
+                    .map(MediaDevice::getId)
+                    .collect(Collectors.toSet());
             if (oldMediaItems.isEmpty()) {
                 if (connectedMediaDevice == null) {
                     if (DEBUG) {
@@ -656,12 +660,14 @@
                     return categorizeMediaItemsLocked(
                             /* connectedMediaDevice */ null,
                             devices,
+                            selectedDevicesIds,
                             needToHandleMutingExpectedDevice);
                 } else {
                     // selected device exist
                     return categorizeMediaItemsLocked(
                             connectedMediaDevice,
                             devices,
+                            selectedDevicesIds,
                             /* needToHandleMutingExpectedDevice */ false);
                 }
             }
@@ -695,9 +701,20 @@
                 devices.removeAll(targetMediaDevices);
                 targetMediaDevices.addAll(devices);
             }
-            List<MediaItem> finalMediaItems = targetMediaDevices.stream()
-                    .map(MediaItem::createDeviceMediaItem)
-                    .collect(Collectors.toList());
+            List<MediaItem> finalMediaItems = new ArrayList<>();
+            boolean shouldAddFirstSeenSelectedDevice =
+                    com.android.media.flags.Flags.enableOutputSwitcherDeviceGrouping();
+            for (MediaDevice targetMediaDevice : targetMediaDevices) {
+                if (shouldAddFirstSeenSelectedDevice
+                        && selectedDevicesIds.contains(targetMediaDevice.getId())) {
+                    finalMediaItems.add(MediaItem.createDeviceMediaItem(
+                            targetMediaDevice, /* isFirstDeviceInGroup */ true));
+                    shouldAddFirstSeenSelectedDevice = false;
+                } else {
+                    finalMediaItems.add(MediaItem.createDeviceMediaItem(
+                            targetMediaDevice, /* isFirstDeviceInGroup */ false));
+                }
+            }
             dividerItems.forEach(finalMediaItems::add);
             attachConnectNewDeviceItemIfNeeded(finalMediaItems);
             return finalMediaItems;
@@ -724,11 +741,9 @@
     @GuardedBy("mMediaDevicesLock")
     private List<MediaItem> categorizeMediaItemsLocked(MediaDevice connectedMediaDevice,
             List<MediaDevice> devices,
+            Set<String> selectedDevicesIds,
             boolean needToHandleMutingExpectedDevice) {
         List<MediaItem> finalMediaItems = new ArrayList<>();
-        Set<String> selectedDevicesIds = getSelectedMediaDevice().stream()
-                .map(MediaDevice::getId)
-                .collect(Collectors.toSet());
         if (connectedMediaDevice != null) {
             selectedDevicesIds.add(connectedMediaDevice.getId());
         }
diff --git a/packages/SystemUI/src/com/android/systemui/media/taptotransfer/sender/MediaTttSenderCoordinator.kt b/packages/SystemUI/src/com/android/systemui/media/taptotransfer/sender/MediaTttSenderCoordinator.kt
index 6ca0471..469bec7 100644
--- a/packages/SystemUI/src/com/android/systemui/media/taptotransfer/sender/MediaTttSenderCoordinator.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/taptotransfer/sender/MediaTttSenderCoordinator.kt
@@ -24,7 +24,6 @@
 import com.android.internal.logging.UiEventLogger
 import com.android.internal.statusbar.IUndoMediaTransferCallback
 import com.android.systemui.CoreStartable
-import com.android.systemui.Dumpable
 import com.android.systemui.common.shared.model.Text
 import com.android.systemui.dagger.SysUISingleton
 import com.android.systemui.dump.DumpManager
@@ -53,7 +52,7 @@
     private val dumpManager: DumpManager,
     private val logger: MediaTttSenderLogger,
     private val uiEventLogger: MediaTttSenderUiEventLogger,
-) : CoreStartable, Dumpable {
+) : CoreStartable {
 
     // Since the media transfer display is similar to a heads-up notification, use the same timeout.
     private val defaultTimeout = context.resources.getInteger(R.integer.heads_up_notification_decay)
diff --git a/packages/SystemUI/src/com/android/systemui/model/SysUiState.java b/packages/SystemUI/src/com/android/systemui/model/SysUiState.java
deleted file mode 100644
index 1a5e605..0000000
--- a/packages/SystemUI/src/com/android/systemui/model/SysUiState.java
+++ /dev/null
@@ -1,151 +0,0 @@
-/*
- * 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.
- */
-
-package com.android.systemui.model;
-
-import android.annotation.NonNull;
-import android.util.Log;
-
-import com.android.systemui.Dumpable;
-import com.android.systemui.dagger.SysUISingleton;
-import com.android.systemui.settings.DisplayTracker;
-import com.android.systemui.shared.system.QuickStepContract;
-import com.android.systemui.shared.system.QuickStepContract.SystemUiStateFlags;
-
-import dalvik.annotation.optimization.NeverCompile;
-
-import java.io.PrintWriter;
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Contains sysUi state flags and notifies registered
- * listeners whenever changes happen.
- */
-@SysUISingleton
-public class SysUiState implements Dumpable {
-
-    private static final String TAG = SysUiState.class.getSimpleName();
-    public static final boolean DEBUG = false;
-
-    private final DisplayTracker mDisplayTracker;
-    private final SceneContainerPlugin mSceneContainerPlugin;
-    private @SystemUiStateFlags long mFlags;
-    private final List<SysUiStateCallback> mCallbacks = new ArrayList<>();
-    private long mFlagsToSet = 0;
-    private long mFlagsToClear = 0;
-
-    public SysUiState(DisplayTracker displayTracker, SceneContainerPlugin sceneContainerPlugin) {
-        mDisplayTracker = displayTracker;
-        mSceneContainerPlugin = sceneContainerPlugin;
-    }
-
-    /**
-     * Add listener to be notified of changes made to SysUI state.
-     * The callback will also be called as part of this function.
-     */
-    public void addCallback(@NonNull SysUiStateCallback callback) {
-        mCallbacks.add(callback);
-        callback.onSystemUiStateChanged(mFlags);
-    }
-
-    /** Callback will no longer receive events on state change */
-    public void removeCallback(@NonNull SysUiStateCallback callback) {
-        mCallbacks.remove(callback);
-    }
-
-    /** Returns the current sysui state flags. */
-    @SystemUiStateFlags
-    public long getFlags() {
-        return mFlags;
-    }
-
-    public boolean isFlagEnabled(@SystemUiStateFlags long flag) {
-        return (mFlags & flag) != 0;
-    }
-
-    /** Methods to this call can be chained together before calling {@link #commitUpdate(int)}. */
-    public SysUiState setFlag(@SystemUiStateFlags long flag, boolean enabled) {
-        final Boolean overrideOrNull = mSceneContainerPlugin != null
-                ? mSceneContainerPlugin.flagValueOverride(flag) : null;
-        if (overrideOrNull != null && enabled != overrideOrNull) {
-            if (DEBUG) {
-                Log.d(TAG, "setFlag for flag " + flag + " and value " + enabled + " overridden to "
-                        + overrideOrNull + " by scene container plugin");
-            }
-
-            enabled = overrideOrNull;
-        }
-
-        if (enabled) {
-            mFlagsToSet |= flag;
-        } else {
-            mFlagsToClear |= flag;
-        }
-        return this;
-    }
-
-    /** Call to save all the flags updated from {@link #setFlag(long, boolean)}. */
-    public void commitUpdate(int displayId) {
-        updateFlags(displayId);
-        mFlagsToSet = 0;
-        mFlagsToClear = 0;
-    }
-
-    private void updateFlags(int displayId) {
-        if (displayId != mDisplayTracker.getDefaultDisplayId()) {
-            // Ignore non-default displays for now
-            Log.w(TAG, "Ignoring flag update for display: " + displayId, new Throwable());
-            return;
-        }
-
-        long newState = mFlags;
-        newState |= mFlagsToSet;
-        newState &= ~mFlagsToClear;
-        notifyAndSetSystemUiStateChanged(newState, mFlags);
-    }
-
-    /** Notify all those who are registered that the state has changed. */
-    private void notifyAndSetSystemUiStateChanged(long newFlags, long oldFlags) {
-        if (DEBUG) {
-            Log.d(TAG, "SysUiState changed: old=" + oldFlags + " new=" + newFlags);
-        }
-        if (newFlags != oldFlags) {
-            mCallbacks.forEach(callback -> callback.onSystemUiStateChanged(newFlags));
-            mFlags = newFlags;
-        }
-    }
-
-    @NeverCompile
-    @Override
-    public void dump(PrintWriter pw, String[] args) {
-        pw.println("SysUiState state:");
-        pw.print("  mSysUiStateFlags="); pw.println(mFlags);
-        pw.println("    " + QuickStepContract.getSystemUiStateString(mFlags));
-        pw.print("    backGestureDisabled=");
-        pw.println(QuickStepContract.isBackGestureDisabled(mFlags, false /* forTrackpad */));
-        pw.print("    assistantGestureDisabled=");
-        pw.println(QuickStepContract.isAssistantGestureDisabled(mFlags));
-    }
-
-    /** Callback to be notified whenever system UI state flags are changed. */
-    public interface SysUiStateCallback{
-        /** To be called when any SysUiStateFlag gets updated */
-        void onSystemUiStateChanged(@SystemUiStateFlags long sysUiFlags);
-    }
-}
-
-
diff --git a/packages/SystemUI/src/com/android/systemui/model/SysUiState.kt b/packages/SystemUI/src/com/android/systemui/model/SysUiState.kt
new file mode 100644
index 0000000..ed190a1
--- /dev/null
+++ b/packages/SystemUI/src/com/android/systemui/model/SysUiState.kt
@@ -0,0 +1,140 @@
+/*
+ * Copyright (C) 2025 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.systemui.model
+
+import android.util.Log
+import com.android.systemui.Dumpable
+import com.android.systemui.dagger.SysUISingleton
+import com.android.systemui.settings.DisplayTracker
+import com.android.systemui.shared.system.QuickStepContract
+import com.android.systemui.shared.system.QuickStepContract.SystemUiStateFlags
+import dalvik.annotation.optimization.NeverCompile
+import java.io.PrintWriter
+
+/** Contains sysUi state flags and notifies registered listeners whenever changes happen. */
+@SysUISingleton
+class SysUiState(
+    private val displayTracker: DisplayTracker,
+    private val sceneContainerPlugin: SceneContainerPlugin?,
+) : Dumpable {
+    /** Returns the current sysui state flags. */
+    @get:SystemUiStateFlags
+    @SystemUiStateFlags
+    var flags: Long = 0
+        private set
+
+    private val callbacks: MutableList<SysUiStateCallback> = ArrayList()
+    private var flagsToSet: Long = 0
+    private var flagsToClear: Long = 0
+
+    /**
+     * Add listener to be notified of changes made to SysUI state. The callback will also be called
+     * as part of this function.
+     */
+    fun addCallback(callback: SysUiStateCallback) {
+        callbacks.add(callback)
+        callback.onSystemUiStateChanged(flags)
+    }
+
+    /** Callback will no longer receive events on state change */
+    fun removeCallback(callback: SysUiStateCallback) {
+        callbacks.remove(callback)
+    }
+
+    fun isFlagEnabled(@SystemUiStateFlags flag: Long): Boolean {
+        return (flags and flag) != 0L
+    }
+
+    /** Methods to this call can be chained together before calling [.commitUpdate]. */
+    fun setFlag(@SystemUiStateFlags flag: Long, enabled: Boolean): SysUiState {
+        var enabled = enabled
+        val overrideOrNull = sceneContainerPlugin?.flagValueOverride(flag)
+        if (overrideOrNull != null && enabled != overrideOrNull) {
+            if (DEBUG) {
+                Log.d(
+                    TAG,
+                    "setFlag for flag $flag and value $enabled overridden to $overrideOrNull by scene container plugin",
+                )
+            }
+
+            enabled = overrideOrNull
+        }
+
+        if (enabled) {
+            flagsToSet = flagsToSet or flag
+        } else {
+            flagsToClear = flagsToClear or flag
+        }
+        return this
+    }
+
+    /** Call to save all the flags updated from [.setFlag]. */
+    fun commitUpdate(displayId: Int) {
+        updateFlags(displayId)
+        flagsToSet = 0
+        flagsToClear = 0
+    }
+
+    private fun updateFlags(displayId: Int) {
+        if (displayId != displayTracker.defaultDisplayId) {
+            // Ignore non-default displays for now
+            Log.w(TAG, "Ignoring flag update for display: $displayId", Throwable())
+            return
+        }
+
+        var newState = flags
+        newState = newState or flagsToSet
+        newState = newState and flagsToClear.inv()
+        notifyAndSetSystemUiStateChanged(newState, flags)
+    }
+
+    /** Notify all those who are registered that the state has changed. */
+    private fun notifyAndSetSystemUiStateChanged(newFlags: Long, oldFlags: Long) {
+        if (DEBUG) {
+            Log.d(TAG, "SysUiState changed: old=$oldFlags new=$newFlags")
+        }
+        if (newFlags != oldFlags) {
+            callbacks.forEach { callback: SysUiStateCallback ->
+                callback.onSystemUiStateChanged(newFlags)
+            }
+
+            flags = newFlags
+        }
+    }
+
+    @NeverCompile
+    override fun dump(pw: PrintWriter, args: Array<String>) {
+        pw.println("SysUiState state:")
+        pw.print("  mSysUiStateFlags=")
+        pw.println(flags)
+        pw.println("    " + QuickStepContract.getSystemUiStateString(flags))
+        pw.print("    backGestureDisabled=")
+        pw.println(QuickStepContract.isBackGestureDisabled(flags, false /* forTrackpad */))
+        pw.print("    assistantGestureDisabled=")
+        pw.println(QuickStepContract.isAssistantGestureDisabled(flags))
+    }
+
+    /** Callback to be notified whenever system UI state flags are changed. */
+    interface SysUiStateCallback {
+        /** To be called when any SysUiStateFlag gets updated */
+        fun onSystemUiStateChanged(@SystemUiStateFlags sysUiFlags: Long)
+    }
+
+    companion object {
+        private val TAG: String = SysUiState::class.java.simpleName
+        const val DEBUG: Boolean = false
+    }
+}
diff --git a/packages/SystemUI/src/com/android/systemui/qs/composefragment/QSFragmentCompose.kt b/packages/SystemUI/src/com/android/systemui/qs/composefragment/QSFragmentCompose.kt
index 6ad8bae..44c8dc3 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/composefragment/QSFragmentCompose.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/composefragment/QSFragmentCompose.kt
@@ -21,6 +21,7 @@
 import android.graphics.PointF
 import android.graphics.Rect
 import android.os.Bundle
+import android.os.Trace
 import android.util.IndentingPrintWriter
 import android.view.LayoutInflater
 import android.view.MotionEvent
@@ -112,6 +113,7 @@
 import com.android.systemui.plugins.qs.QSContainerController
 import com.android.systemui.qs.composefragment.SceneKeys.QuickQuickSettings
 import com.android.systemui.qs.composefragment.SceneKeys.QuickSettings
+import com.android.systemui.qs.composefragment.SceneKeys.debugName
 import com.android.systemui.qs.composefragment.SceneKeys.toIdleSceneKey
 import com.android.systemui.qs.composefragment.ui.GridAnchor
 import com.android.systemui.qs.composefragment.ui.NotificationScrimClipParams
@@ -252,8 +254,12 @@
                     Box(
                         modifier =
                             Modifier.graphicsLayer { alpha = viewModel.viewAlpha }
+                                .thenIf(notificationScrimClippingParams.isEnabled) {
+                                    Modifier.notificationScrimClip {
+                                        notificationScrimClippingParams.params
+                                    }
+                                }
                                 .thenIf(!Flags.notificationShadeBlur()) {
-                                    // Clipping before translation to match QSContainerImpl.onDraw
                                     Modifier.offset {
                                         IntOffset(
                                             x = 0,
@@ -261,11 +267,6 @@
                                         )
                                     }
                                 }
-                                .thenIf(notificationScrimClippingParams.isEnabled) {
-                                    Modifier.notificationScrimClip {
-                                        notificationScrimClippingParams.params
-                                    }
-                                }
                                 // Disable touches in the whole composable while the mirror is
                                 // showing. While the mirror is showing, an ancestor of the
                                 // ComposeView is made alpha 0, but touches are still being captured
@@ -286,6 +287,12 @@
      */
     @Composable
     private fun CollapsableQuickSettingsSTL() {
+        val nextCookie = remember {
+            object {
+                var value = 0
+            }
+        }
+        val transitionToCookie = remember { mutableMapOf<TransitionState.Transition, Int>() }
         val sceneState =
             rememberMutableSceneTransitionLayoutState(
                 initialScene = remember { viewModel.expansionState.toIdleSceneKey() },
@@ -299,6 +306,20 @@
                             toEditMode()
                         }
                     },
+                onTransitionStart = { transition ->
+                    val cookie = nextCookie.value++
+                    transitionToCookie[transition] = cookie
+                    Trace.beginAsyncSection(
+                        "CollapsableQuickSettingsSTL ${transition.debugName}",
+                        cookie,
+                    )
+                },
+                onTransitionEnd = { transition ->
+                    Trace.endAsyncSection(
+                        "CollapsableQuickSettingsSTL ${transition.debugName}",
+                        transitionToCookie.remove(transition) ?: -1,
+                    )
+                },
             )
 
         LaunchedEffect(Unit) {
@@ -312,20 +333,18 @@
         SceneTransitionLayout(state = sceneState, modifier = Modifier.fillMaxSize()) {
             scene(QuickSettings) {
                 LaunchedEffect(Unit) { viewModel.onQSOpen() }
-                QuickSettingsElement(Modifier.element(QuickSettings.rootElementKey))
+                Element(QuickSettings.rootElementKey, Modifier) { QuickSettingsElement() }
             }
 
             scene(QuickQuickSettings) {
                 LaunchedEffect(Unit) { viewModel.onQQSOpen() }
                 // Cannot pass the element modifier in because the top element has a `testTag`
                 // and this would overwrite it.
-                Box(Modifier.element(QuickQuickSettings.rootElementKey)) {
-                    QuickQuickSettingsElement()
-                }
+                Element(QuickQuickSettings.rootElementKey, Modifier) { QuickQuickSettingsElement() }
             }
 
             scene(SceneKeys.EditMode) {
-                EditModeElement(Modifier.element(SceneKeys.EditMode.rootElementKey))
+                Element(SceneKeys.EditMode.rootElementKey, Modifier) { EditModeElement() }
             }
         }
     }
@@ -656,10 +675,7 @@
                 )
         ) {
             if (viewModel.isQsEnabled) {
-                Box(
-                    modifier =
-                        Modifier.element(ElementKeys.QuickSettingsContent).fillMaxSize().weight(1f)
-                ) {
+                Element(ElementKeys.QuickSettingsContent, modifier = Modifier.weight(1f)) {
                     DisposableEffect(Unit) {
                         lifecycleScope.launch { scrollState.scrollTo(0) }
                         onDispose { lifecycleScope.launch { scrollState.scrollTo(0) } }
@@ -667,7 +683,8 @@
 
                     Column(
                         modifier =
-                            Modifier.onPlaced { coordinates ->
+                            Modifier.fillMaxSize()
+                                .onPlaced { coordinates ->
                                     val positionOnScreen = coordinates.positionOnScreen()
                                     val left = positionOnScreen.x
                                     val right = left + coordinates.size.width
@@ -744,13 +761,15 @@
                     }
                 }
                 QuickSettingsTheme {
-                    FooterActions(
-                        viewModel = viewModel.footerActionsViewModel,
-                        qsVisibilityLifecycleOwner = this@QSFragmentCompose,
-                        modifier =
-                            Modifier.sysuiResTag(ResIdTags.qsFooterActions)
-                                .element(ElementKeys.FooterActions),
-                    )
+                    Element(
+                        ElementKeys.FooterActions,
+                        Modifier.sysuiResTag(ResIdTags.qsFooterActions),
+                    ) {
+                        FooterActions(
+                            viewModel = viewModel.footerActionsViewModel,
+                            qsVisibilityLifecycleOwner = this@QSFragmentCompose,
+                        )
+                    }
                 }
             }
         }
@@ -857,6 +876,9 @@
     val QuickSettings = SceneKey("QuickSettingsScene")
     val EditMode = SceneKey("EditModeScene")
 
+    val TransitionState.Transition.debugName: String
+        get() = "[from=${fromContent.debugName}, to=${toContent.debugName}]"
+
     fun QSFragmentComposeViewModel.QSExpansionState.toIdleSceneKey(): SceneKey {
         return when {
             progress < 0.5f -> QuickQuickSettings
diff --git a/packages/SystemUI/src/com/android/systemui/qs/composefragment/ui/GridAnchor.kt b/packages/SystemUI/src/com/android/systemui/qs/composefragment/ui/GridAnchor.kt
index 266e875..19ad9fc 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/composefragment/ui/GridAnchor.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/composefragment/ui/GridAnchor.kt
@@ -16,7 +16,6 @@
 
 package com.android.systemui.qs.composefragment.ui
 
-import androidx.compose.foundation.layout.Spacer
 import androidx.compose.runtime.Composable
 import androidx.compose.ui.Modifier
 import com.android.compose.animation.scene.ContentScope
@@ -29,5 +28,5 @@
 @Composable
 fun ContentScope.GridAnchor(modifier: Modifier = Modifier) {
     // The size of this anchor does not matter, as the tiles don't change size on expansion.
-    Spacer(modifier.element(ElementKeys.GridAnchor))
+    Element(ElementKeys.GridAnchor, modifier) {}
 }
diff --git a/packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/QuickQuickSettings.kt b/packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/QuickQuickSettings.kt
index b084f79..495870f 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/QuickQuickSettings.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/QuickQuickSettings.kt
@@ -71,17 +71,19 @@
             val it = sizedTiles[spanIndex]
             val column = cellIndex % columns
             cellIndex += it.width
-            Tile(
-                tile = it.tile,
-                iconOnly = it.isIcon,
-                modifier = Modifier.element(it.tile.spec.toElementKey(spanIndex)),
-                squishiness = { squishiness },
-                coroutineScope = scope,
-                bounceableInfo = bounceables.bounceableInfo(it, spanIndex, column, columns),
-                tileHapticsViewModelFactoryProvider = viewModel.tileHapticsViewModelFactoryProvider,
-                // There should be no QuickQuickSettings when the details view is enabled.
-                detailsViewModel = null,
-            )
+            Element(it.tile.spec.toElementKey(spanIndex), Modifier) {
+                Tile(
+                    tile = it.tile,
+                    iconOnly = it.isIcon,
+                    squishiness = { squishiness },
+                    coroutineScope = scope,
+                    bounceableInfo = bounceables.bounceableInfo(it, spanIndex, column, columns),
+                    tileHapticsViewModelFactoryProvider =
+                        viewModel.tileHapticsViewModelFactoryProvider,
+                    // There should be no QuickQuickSettings when the details view is enabled.
+                    detailsViewModel = null,
+                )
+            }
         }
     }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/infinitegrid/InfiniteGridLayout.kt b/packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/infinitegrid/InfiniteGridLayout.kt
index 1c540ee..dfee4976 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/infinitegrid/InfiniteGridLayout.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/infinitegrid/InfiniteGridLayout.kt
@@ -99,16 +99,17 @@
             val it = sizedTiles[spanIndex]
             val column = cellIndex % columns
             cellIndex += it.width
-            Tile(
-                tile = it.tile,
-                iconOnly = iconTilesViewModel.isIconTile(it.tile.spec),
-                modifier = Modifier.element(it.tile.spec.toElementKey(spanIndex)),
-                squishiness = { squishiness },
-                tileHapticsViewModelFactoryProvider = tileHapticsViewModelFactoryProvider,
-                coroutineScope = scope,
-                bounceableInfo = bounceables.bounceableInfo(it, spanIndex, column, columns),
-                detailsViewModel = detailsViewModel,
-            )
+            Element(it.tile.spec.toElementKey(spanIndex), Modifier) {
+                Tile(
+                    tile = it.tile,
+                    iconOnly = iconTilesViewModel.isIconTile(it.tile.spec),
+                    squishiness = { squishiness },
+                    tileHapticsViewModelFactoryProvider = tileHapticsViewModelFactoryProvider,
+                    coroutineScope = scope,
+                    bounceableInfo = bounceables.bounceableInfo(it, spanIndex, column, columns),
+                    detailsViewModel = detailsViewModel,
+                )
+            }
         }
     }
 
diff --git a/packages/SystemUI/src/com/android/systemui/qs/pipeline/domain/interactor/CurrentTilesInteractor.kt b/packages/SystemUI/src/com/android/systemui/qs/pipeline/domain/interactor/CurrentTilesInteractor.kt
index 609541b..c70a854 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/pipeline/domain/interactor/CurrentTilesInteractor.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/pipeline/domain/interactor/CurrentTilesInteractor.kt
@@ -20,6 +20,7 @@
 import android.content.Context
 import android.content.Intent
 import android.os.UserHandle
+import com.android.app.tracing.coroutines.launchTraced as launch
 import com.android.systemui.Dumpable
 import com.android.systemui.ProtoDumpable
 import com.android.systemui.dagger.SysUISingleton
@@ -62,7 +63,6 @@
 import kotlinx.coroutines.flow.first
 import kotlinx.coroutines.flow.flatMapLatest
 import kotlinx.coroutines.flow.flowOn
-import com.android.app.tracing.coroutines.launchTraced as launch
 import kotlinx.coroutines.withContext
 
 /**
@@ -245,7 +245,6 @@
                                         processExistingTile(
                                             tileSpec,
                                             specsToTiles.getValue(tileSpec),
-                                            userChanged,
                                             newUser,
                                         ) ?: createTile(tileSpec)
                                     } else {
@@ -378,7 +377,6 @@
     private fun processExistingTile(
         tileSpec: TileSpec,
         tileOrNotInstalled: TileOrNotInstalled,
-        userChanged: Boolean,
         user: Int,
     ): QSTile? {
         return when (tileOrNotInstalled) {
@@ -386,6 +384,10 @@
             is TileOrNotInstalled.Tile -> {
                 val qsTile = tileOrNotInstalled.tile
                 when {
+                    qsTile.isDestroyed -> {
+                        logger.logTileDestroyedIgnored(tileSpec)
+                        null
+                    }
                     !qsTile.isAvailable -> {
                         logger.logTileDestroyed(
                             tileSpec,
@@ -399,10 +401,11 @@
                     qsTile !is CustomTile -> {
                         // The tile is not a custom tile. Make sure they are reset to the correct
                         // user
-                        if (userChanged) {
+                        if (qsTile.currentTileUser != user) {
                             qsTile.userSwitch(user)
                             logger.logTileUserChanged(tileSpec, user)
                         }
+
                         qsTile
                     }
                     qsTile.user == user -> {
diff --git a/packages/SystemUI/src/com/android/systemui/qs/pipeline/shared/logging/QSPipelineLogger.kt b/packages/SystemUI/src/com/android/systemui/qs/pipeline/shared/logging/QSPipelineLogger.kt
index e237ca9..21a8ec6 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/pipeline/shared/logging/QSPipelineLogger.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/pipeline/shared/logging/QSPipelineLogger.kt
@@ -60,7 +60,7 @@
                 bool1 = usesDefault
                 int1 = user
             },
-            { "Parsed tiles (default=$bool1, user=$int1): $str1" }
+            { "Parsed tiles (default=$bool1, user=$int1): $str1" },
         )
     }
 
@@ -77,7 +77,7 @@
                 str2 = reconciledTiles.toString()
                 int1 = user
             },
-            { "Tiles restored and reconciled for user: $int1\nWas: $str1\nSet to: $str2" }
+            { "Tiles restored and reconciled for user: $int1\nWas: $str1\nSet to: $str2" },
         )
     }
 
@@ -94,7 +94,7 @@
                 str2 = newList.toString()
                 int1 = userId
             },
-            { "Processing $str1 for user $int1\nNew list: $str2" }
+            { "Processing $str1 for user $int1\nNew list: $str2" },
         )
     }
 
@@ -107,7 +107,16 @@
                 str1 = spec.toString()
                 str2 = reason.readable
             },
-            { "Tile $str1 destroyed. Reason: $str2" }
+            { "Tile $str1 destroyed. Reason: $str2" },
+        )
+    }
+
+    fun logTileDestroyedIgnored(spec: TileSpec) {
+        tileListLogBuffer.log(
+            TILE_LIST_TAG,
+            LogLevel.DEBUG,
+            { str1 = spec.toString() },
+            { "Tile $str1 ignored as it was already destroyed." },
         )
     }
 
@@ -117,7 +126,7 @@
             TILE_LIST_TAG,
             LogLevel.DEBUG,
             { str1 = spec.toString() },
-            { "Tile $str1 created" }
+            { "Tile $str1 created" },
         )
     }
 
@@ -127,7 +136,7 @@
             TILE_LIST_TAG,
             LogLevel.VERBOSE,
             { str1 = spec.toString() },
-            { "Tile $str1 not found in factory" }
+            { "Tile $str1 not found in factory" },
         )
     }
 
@@ -140,7 +149,7 @@
                 str1 = spec.toString()
                 int1 = user
             },
-            { "User changed to $int1 for tile $str1" }
+            { "User changed to $int1 for tile $str1" },
         )
     }
 
@@ -156,7 +165,7 @@
                 str1 = tiles.toString()
                 int1 = user
             },
-            { "Tiles kept for not installed packages for user $int1: $str1" }
+            { "Tiles kept for not installed packages for user $int1: $str1" },
         )
     }
 
@@ -168,7 +177,7 @@
                 str1 = tiles.toString()
                 int1 = userId
             },
-            { "Auto add tiles parsed for user $int1: $str1" }
+            { "Auto add tiles parsed for user $int1: $str1" },
         )
     }
 
@@ -180,7 +189,7 @@
                 str1 = tiles.toString()
                 int1 = userId
             },
-            { "Auto-add tiles reconciled for user $int1: $str1" }
+            { "Auto-add tiles reconciled for user $int1: $str1" },
         )
     }
 
@@ -193,7 +202,7 @@
                 int2 = position
                 str1 = spec.toString()
             },
-            { "Tile $str1 auto added for user $int1 at position $int2" }
+            { "Tile $str1 auto added for user $int1 at position $int2" },
         )
     }
 
@@ -205,7 +214,7 @@
                 int1 = userId
                 str1 = spec.toString()
             },
-            { "Tile $str1 auto removed for user $int1" }
+            { "Tile $str1 auto removed for user $int1" },
         )
     }
 
@@ -217,7 +226,7 @@
                 int1 = userId
                 str1 = spec.toString()
             },
-            { "Tile $str1 unmarked as auto-added for user $int1" }
+            { "Tile $str1 unmarked as auto-added for user $int1" },
         )
     }
 
@@ -226,7 +235,7 @@
             RESTORE_TAG,
             LogLevel.DEBUG,
             { int1 = userId },
-            { "Restored from single intent after user setup complete for user $int1" }
+            { "Restored from single intent after user setup complete for user $int1" },
         )
     }
 
@@ -243,7 +252,7 @@
                 "Restored settings data for user $int1\n" +
                     "\tRestored tiles: $str1\n" +
                     "\tRestored auto added tiles: $str2"
-            }
+            },
         )
     }
 
@@ -258,7 +267,7 @@
                 str1 = restoreProcessorClassName
                 str2 = step.name
             },
-            { "Restore $str2 processed by $str1" }
+            { "Restore $str2 processed by $str1" },
         )
     }
 
@@ -273,6 +282,6 @@
 
     enum class RestorePreprocessorStep {
         PREPROCESSING,
-        POSTPROCESSING
+        POSTPROCESSING,
     }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tileimpl/QSTileImpl.java b/packages/SystemUI/src/com/android/systemui/qs/tileimpl/QSTileImpl.java
index 1d1e991..c6fc868 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tileimpl/QSTileImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/tileimpl/QSTileImpl.java
@@ -74,6 +74,8 @@
 
 import java.io.PrintWriter;
 import java.util.Objects;
+import java.util.concurrent.atomic.AtomicBoolean;
+import java.util.concurrent.atomic.AtomicInteger;
 
 /**
  * Base quick-settings tile, extend this to create a new tile.
@@ -127,6 +129,8 @@
     private int mIsFullQs;
 
     private final LifecycleRegistry mLifecycle = new LifecycleRegistry(this);
+    private final AtomicBoolean mIsDestroyed = new AtomicBoolean(false);
+    private final AtomicInteger mCurrentTileUser = new AtomicInteger();
 
     /**
      * Provides a new {@link TState} of the appropriate type to use between this tile and the
@@ -203,6 +207,7 @@
         mMetricsLogger = metricsLogger;
         mStatusBarStateController = statusBarStateController;
         mActivityStarter = activityStarter;
+        mCurrentTileUser.set(host.getUserId());
 
         resetStates();
         mUiHandler.post(() -> mLifecycle.setCurrentState(CREATED));
@@ -352,11 +357,19 @@
     }
 
     public void userSwitch(int newUserId) {
+        mCurrentTileUser.set(newUserId);
         mHandler.obtainMessage(H.USER_SWITCH, newUserId, 0).sendToTarget();
         postStale();
     }
 
+    @Override
+    public int getCurrentTileUser() {
+        return mCurrentTileUser.get();
+    }
+
     public void destroy() {
+        // We mark it as soon as we start the destroy process, as nothing can interrupt it.
+        mIsDestroyed.set(true);
         mHandler.sendEmptyMessage(H.DESTROY);
     }
 
@@ -365,7 +378,7 @@
      *
      * Should be called upon creation of the tile, before performing other operations
      */
-    public void initialize() {
+    public final void initialize() {
         mHandler.sendEmptyMessage(H.INITIALIZE);
     }
 
@@ -525,6 +538,11 @@
         });
     }
 
+    @Override
+    public final boolean isDestroyed() {
+        return mIsDestroyed.get();
+    }
+
     protected void checkIfRestrictionEnforcedByAdminOnly(State state, String userRestriction) {
         EnforcedAdmin admin = RestrictedLockUtilsInternal.checkIfRestrictionEnforced(mContext,
                 userRestriction, mHost.getUserId());
@@ -799,7 +817,7 @@
      */
     @Override
     public void dump(PrintWriter pw, String[] args) {
-        pw.println(this.getClass().getSimpleName() + ":");
+        pw.print(this.getClass().getSimpleName() + ":");
         pw.print("    "); pw.println(getState().toString());
     }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/AirplaneModeTile.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/AirplaneModeTile.java
index bb818fa..88e7d80 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/AirplaneModeTile.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/AirplaneModeTile.java
@@ -38,7 +38,6 @@
 
 import com.android.internal.logging.MetricsLogger;
 import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.internal.telephony.flags.Flags;
 import com.android.settingslib.satellite.SatelliteDialogUtils;
 import com.android.systemui.animation.Expandable;
 import com.android.systemui.broadcast.BroadcastDispatcher;
@@ -122,21 +121,16 @@
             return;
         }
 
-        if (Flags.oemEnabledSatelliteFlag()) {
-            if (mClickJob != null && !mClickJob.isCompleted()) {
-                return;
-            }
-            mClickJob = SatelliteDialogUtils.mayStartSatelliteWarningDialog(
-                    mContext, this, TYPE_IS_AIRPLANE_MODE, isAllowClick -> {
-                        if (isAllowClick) {
-                            setEnabled(!airplaneModeEnabled);
-                        }
-                        return null;
-                    });
+        if (mClickJob != null && !mClickJob.isCompleted()) {
             return;
         }
-
-        setEnabled(!airplaneModeEnabled);
+        mClickJob = SatelliteDialogUtils.mayStartSatelliteWarningDialog(
+                mContext, this, TYPE_IS_AIRPLANE_MODE, isAllowClick -> {
+                    if (isAllowClick) {
+                        setEnabled(!airplaneModeEnabled);
+                    }
+                    return null;
+                });
     }
 
     private void setEnabled(boolean enabled) {
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/BluetoothTile.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/BluetoothTile.java
index 7daac45..4b1c90f 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/BluetoothTile.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/BluetoothTile.java
@@ -141,34 +141,28 @@
     }
 
     private void handleClickWithSatelliteCheck(Runnable clickCallback) {
-        if (com.android.internal.telephony.flags.Flags.oemEnabledSatelliteFlag()) {
-            if (mClickJob != null && !mClickJob.isCompleted()) {
-                return;
-            }
-            mClickJob = SatelliteDialogUtils.mayStartSatelliteWarningDialog(
-                    mContext, this, TYPE_IS_BLUETOOTH, isAllowClick -> {
-                        if (!isAllowClick) {
-                            return null;
-                        }
-                        clickCallback.run();
-                        return null;
-                    });
+        if (mClickJob != null && !mClickJob.isCompleted()) {
             return;
         }
-        clickCallback.run();
+        mClickJob = SatelliteDialogUtils.mayStartSatelliteWarningDialog(
+                mContext, this, TYPE_IS_BLUETOOTH, isAllowClick -> {
+                    if (!isAllowClick) {
+                        return null;
+                    }
+                    clickCallback.run();
+                    return null;
+                });
     }
 
     private void handleClickEvent(@Nullable Expandable expandable) {
         if (mFeatureFlags.isEnabled(Flags.BLUETOOTH_QS_TILE_DIALOG)) {
-            mDetailsContentViewModel.get().showDetailsContent(expandable, /* view= */ null);
+            mDetailsContentViewModel.get().showDialog(expandable);
         } else {
             // Secondary clicks are header clicks, just toggle.
             toggleBluetooth();
         }
     }
 
-
-
     @Override
     public Intent getLongClickIntent() {
         return new Intent(Settings.ACTION_BLUETOOTH_SETTINGS);
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/InternetTileNewImpl.kt b/packages/SystemUI/src/com/android/systemui/qs/tiles/InternetTileNewImpl.kt
index f80b8fb..e48e943 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/InternetTileNewImpl.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/InternetTileNewImpl.kt
@@ -99,7 +99,7 @@
     }
 
     override fun getDetailsViewModel(): TileDetailsViewModel {
-        return internetDetailsViewModelFactory.create { longClick(null) }
+        return internetDetailsViewModelFactory.create()
     }
 
     override fun handleUpdateState(state: QSTile.BooleanState, arg: Any?) {
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/UserDetailView.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/UserDetailView.java
index fed8b60..0d937cb 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/UserDetailView.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/UserDetailView.java
@@ -146,6 +146,7 @@
                 v.bind(name, drawable, item.info.id);
             }
             v.setActivated(item.isCurrent);
+            v.setSelected(item.isCurrent);
             v.setDisabledByAdmin(item.isDisabledByAdmin());
             v.setEnabled(item.isSwitchToEnabled);
             UserSwitcherController.setSelectableAlpha(v);
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/base/interactor/QSTileUserActionInteractor.kt b/packages/SystemUI/src/com/android/systemui/qs/tiles/base/interactor/QSTileUserActionInteractor.kt
index e8c4274..8ad4e16 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/base/interactor/QSTileUserActionInteractor.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/base/interactor/QSTileUserActionInteractor.kt
@@ -28,17 +28,4 @@
      * It's safe to run long running computations inside this function.
      */
     @WorkerThread suspend fun handleInput(input: QSTileInput<DATA_TYPE>)
-
-    /**
-     * Provides the [TileDetailsViewModel] for constructing the corresponding details view.
-     *
-     * This property is defined here to reuse the business logic. For example, reusing the user
-     * long-click as the go-to-settings callback in the details view.
-     * Subclasses can override this property to provide a specific [TileDetailsViewModel]
-     * implementation.
-     *
-     * @return The [TileDetailsViewModel] instance, or null if not implemented.
-     */
-    val detailsViewModel: TileDetailsViewModel?
-        get() = null
 }
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/base/viewmodel/QSTileViewModelFactory.kt b/packages/SystemUI/src/com/android/systemui/qs/tiles/base/viewmodel/QSTileViewModelFactory.kt
index 8c75cf0..7f475f3 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/base/viewmodel/QSTileViewModelFactory.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/base/viewmodel/QSTileViewModelFactory.kt
@@ -19,6 +19,7 @@
 import com.android.systemui.dagger.qualifiers.Background
 import com.android.systemui.dagger.qualifiers.UiBackground
 import com.android.systemui.plugins.FalsingManager
+import com.android.systemui.plugins.qs.TileDetailsViewModel
 import com.android.systemui.qs.pipeline.shared.TileSpec
 import com.android.systemui.qs.tiles.base.analytics.QSTileAnalytics
 import com.android.systemui.qs.tiles.base.interactor.DisabledByPolicyInteractor
@@ -70,9 +71,7 @@
          * Creates [QSTileViewModelImpl] based on the interactors obtained from [QSTileComponent].
          * Reference of that [QSTileComponent] is then stored along the view model.
          */
-        fun create(
-            tileSpec: TileSpec,
-        ): QSTileViewModel {
+        fun create(tileSpec: TileSpec): QSTileViewModel {
             val config = qsTileConfigProvider.getConfig(tileSpec.spec)
             val component =
                 customTileComponentBuilder.qsTileConfigModule(QSTileConfigModule(config)).build()
@@ -90,6 +89,7 @@
                 backgroundDispatcher,
                 uiBackgroundDispatcher,
                 component.coroutineScope(),
+                /* tileDetailsViewModel= */ null,
             )
         }
     }
@@ -127,6 +127,7 @@
             userActionInteractor: QSTileUserActionInteractor<T>,
             tileDataInteractor: QSTileDataInteractor<T>,
             mapper: QSTileDataToStateMapper<T>,
+            tileDetailsViewModel: TileDetailsViewModel? = null,
         ): QSTileViewModelImpl<T> =
             QSTileViewModelImpl(
                 qsTileConfigProvider.getConfig(tileSpec.spec),
@@ -142,6 +143,7 @@
                 backgroundDispatcher,
                 uiBackgroundDispatcher,
                 coroutineScopeFactory.create(),
+                tileDetailsViewModel,
             )
     }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/base/viewmodel/QSTileViewModelImpl.kt b/packages/SystemUI/src/com/android/systemui/qs/tiles/base/viewmodel/QSTileViewModelImpl.kt
index 30bf5b3..3866c17 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/base/viewmodel/QSTileViewModelImpl.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/base/viewmodel/QSTileViewModelImpl.kt
@@ -83,6 +83,7 @@
     private val backgroundDispatcher: CoroutineDispatcher,
     uiBackgroundDispatcher: CoroutineDispatcher,
     private val tileScope: CoroutineScope,
+    override val tileDetailsViewModel: TileDetailsViewModel? = null,
 ) : QSTileViewModel, Dumpable {
 
     private val users: MutableStateFlow<UserHandle> =
@@ -96,6 +97,9 @@
 
     private val tileData: SharedFlow<DATA_TYPE?> = createTileDataFlow()
 
+    override val currentTileUser: Int
+        get() = users.value.identifier
+
     override val state: StateFlow<QSTileState?> =
         tileData
             .map { data ->
@@ -114,9 +118,6 @@
             .flowOn(backgroundDispatcher)
             .stateIn(tileScope, SharingStarted.WhileSubscribed(), true)
 
-    override val detailsViewModel: TileDetailsViewModel?
-        get() = userActionInteractor().detailsViewModel
-
     override fun forceUpdate() {
         tileScope.launch(context = backgroundDispatcher) { forceUpdates.emit(Unit) }
     }
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDetailsContentManager.kt b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDetailsContentManager.kt
index 733159e..659488b 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDetailsContentManager.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDetailsContentManager.kt
@@ -51,7 +51,6 @@
 import androidx.recyclerview.widget.RecyclerView
 import com.android.internal.logging.UiEvent
 import com.android.internal.logging.UiEventLogger
-import com.android.internal.telephony.flags.Flags
 import com.android.settingslib.satellite.SatelliteDialogUtils.TYPE_IS_WIFI
 import com.android.settingslib.satellite.SatelliteDialogUtils.mayStartSatelliteWarningDialog
 import com.android.settingslib.wifi.WifiEnterpriseRestrictionUtils
@@ -456,22 +455,18 @@
     }
 
     private fun handleWifiToggleClicked(isChecked: Boolean) {
-        if (Flags.oemEnabledSatelliteFlag()) {
-            if (clickJob != null && !clickJob!!.isCompleted) {
-                return
-            }
-            clickJob =
-                mayStartSatelliteWarningDialog(contentView.context, coroutineScope, TYPE_IS_WIFI) {
-                    isAllowClick: Boolean ->
-                    if (isAllowClick) {
-                        setWifiEnabled(isChecked)
-                    } else {
-                        wifiToggle.isChecked = !isChecked
-                    }
-                }
+        if (clickJob != null && !clickJob!!.isCompleted) {
             return
         }
-        setWifiEnabled(isChecked)
+        clickJob =
+            mayStartSatelliteWarningDialog(contentView.context, coroutineScope, TYPE_IS_WIFI) {
+                isAllowClick: Boolean ->
+                if (isAllowClick) {
+                    setWifiEnabled(isChecked)
+                } else {
+                    wifiToggle.isChecked = !isChecked
+                }
+            }
     }
 
     private fun setWifiEnabled(isEnabled: Boolean) {
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDetailsViewModel.kt b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDetailsViewModel.kt
index 0ed56f6..6709fd2 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDetailsViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDetailsViewModel.kt
@@ -16,9 +16,11 @@
 
 package com.android.systemui.qs.tiles.dialog
 
+import android.content.Intent
+import android.provider.Settings
 import com.android.systemui.plugins.qs.TileDetailsViewModel
+import com.android.systemui.qs.tiles.base.actions.QSTileIntentUserInputHandler
 import com.android.systemui.statusbar.connectivity.AccessPointController
-import dagger.assisted.Assisted
 import dagger.assisted.AssistedFactory
 import dagger.assisted.AssistedInject
 
@@ -27,10 +29,13 @@
 constructor(
     private val accessPointController: AccessPointController,
     val contentManagerFactory: InternetDetailsContentManager.Factory,
-    @Assisted private val onLongClick: () -> Unit,
+    private val qsTileIntentUserActionHandler: QSTileIntentUserInputHandler,
 ) : TileDetailsViewModel() {
     override fun clickOnSettingsButton() {
-        onLongClick()
+        qsTileIntentUserActionHandler.handle(
+            /* expandable= */ null,
+            Intent(Settings.ACTION_WIFI_SETTINGS),
+        )
     }
 
     override fun getTitle(): String {
@@ -58,7 +63,7 @@
     }
 
     @AssistedFactory
-    interface Factory {
-        fun create(onLongClick: () -> Unit): InternetDetailsViewModel
+    fun interface Factory {
+        fun create(): InternetDetailsViewModel
     }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogDelegateLegacy.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogDelegateLegacy.java
index 75cb8dd..8d4a24e 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogDelegateLegacy.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogDelegateLegacy.java
@@ -62,7 +62,6 @@
 
 import com.android.internal.logging.UiEvent;
 import com.android.internal.logging.UiEventLogger;
-import com.android.internal.telephony.flags.Flags;
 import com.android.settingslib.satellite.SatelliteDialogUtils;
 import com.android.settingslib.wifi.WifiEnterpriseRestrictionUtils;
 import com.android.systemui.Prefs;
@@ -401,6 +400,9 @@
 
         mInternetDialogTitle.setText(internetContent.mInternetDialogTitleString);
         mInternetDialogSubTitle.setText(internetContent.mInternetDialogSubTitle);
+        if (!internetContent.mIsWifiEnabled) {
+            setProgressBarVisible(false);
+        }
         mAirplaneModeButton.setVisibility(
                 internetContent.mIsAirplaneModeEnabled ? View.VISIBLE : View.GONE);
 
@@ -489,22 +491,18 @@
     }
 
     private void handleWifiToggleClicked(boolean isChecked) {
-        if (Flags.oemEnabledSatelliteFlag()) {
-            if (mClickJob != null && !mClickJob.isCompleted()) {
-                return;
-            }
-            mClickJob = SatelliteDialogUtils.mayStartSatelliteWarningDialog(
-                    mDialog.getContext(), mCoroutineScope, TYPE_IS_WIFI, isAllowClick -> {
-                        if (isAllowClick) {
-                            setWifiEnable(isChecked);
-                        } else {
-                            mWiFiToggle.setChecked(!isChecked);
-                        }
-                        return null;
-                    });
+        if (mClickJob != null && !mClickJob.isCompleted()) {
             return;
         }
-        setWifiEnable(isChecked);
+        mClickJob = SatelliteDialogUtils.mayStartSatelliteWarningDialog(
+                mDialog.getContext(), mCoroutineScope, TYPE_IS_WIFI, isAllowClick -> {
+                    if (isAllowClick) {
+                        setWifiEnable(isChecked);
+                    } else {
+                        mWiFiToggle.setChecked(!isChecked);
+                    }
+                    return null;
+                });
     }
 
     private void setWifiEnable(boolean isChecked) {
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/impl/di/QSTileComponent.kt b/packages/SystemUI/src/com/android/systemui/qs/tiles/impl/di/QSTileComponent.kt
index 0ed46e7..5f692f2 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/impl/di/QSTileComponent.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/impl/di/QSTileComponent.kt
@@ -16,6 +16,7 @@
 
 package com.android.systemui.qs.tiles.impl.di
 
+import com.android.systemui.plugins.qs.TileDetailsViewModel
 import com.android.systemui.qs.tiles.base.interactor.QSTileDataInteractor
 import com.android.systemui.qs.tiles.base.interactor.QSTileDataToStateMapper
 import com.android.systemui.qs.tiles.base.interactor.QSTileUserActionInteractor
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/impl/internet/domain/interactor/InternetTileUserActionInteractor.kt b/packages/SystemUI/src/com/android/systemui/qs/tiles/impl/internet/domain/interactor/InternetTileUserActionInteractor.kt
index 8e48fe4..0431e36 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/impl/internet/domain/interactor/InternetTileUserActionInteractor.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/impl/internet/domain/interactor/InternetTileUserActionInteractor.kt
@@ -18,13 +18,10 @@
 
 import android.content.Intent
 import android.provider.Settings
-import com.android.systemui.animation.Expandable
 import com.android.systemui.dagger.qualifiers.Main
-import com.android.systemui.plugins.qs.TileDetailsViewModel
 import com.android.systemui.qs.tiles.base.actions.QSTileIntentUserInputHandler
 import com.android.systemui.qs.tiles.base.interactor.QSTileInput
 import com.android.systemui.qs.tiles.base.interactor.QSTileUserActionInteractor
-import com.android.systemui.qs.tiles.dialog.InternetDetailsViewModel
 import com.android.systemui.qs.tiles.dialog.InternetDialogManager
 import com.android.systemui.qs.tiles.impl.internet.domain.model.InternetTileModel
 import com.android.systemui.qs.tiles.viewmodel.QSTileUserAction
@@ -41,7 +38,6 @@
     private val internetDialogManager: InternetDialogManager,
     private val accessPointController: AccessPointController,
     private val qsTileIntentUserActionHandler: QSTileIntentUserInputHandler,
-    private val internetDetailsViewModelFactory: InternetDetailsViewModel.Factory,
 ) : QSTileUserActionInteractor<InternetTileModel> {
 
     override suspend fun handleInput(input: QSTileInput<InternetTileModel>): Unit =
@@ -58,16 +54,12 @@
                     }
                 }
                 is QSTileUserAction.LongClick -> {
-                    handleLongClick(action.expandable)
+                    qsTileIntentUserActionHandler.handle(
+                        action.expandable,
+                        Intent(Settings.ACTION_WIFI_SETTINGS),
+                    )
                 }
                 else -> {}
             }
         }
-
-    override val detailsViewModel: TileDetailsViewModel =
-        internetDetailsViewModelFactory.create { handleLongClick(null) }
-
-    private fun handleLongClick(expandable: Expandable?) {
-        qsTileIntentUserActionHandler.handle(expandable, Intent(Settings.ACTION_WIFI_SETTINGS))
-    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/viewmodel/QSTileViewModel.kt b/packages/SystemUI/src/com/android/systemui/qs/tiles/viewmodel/QSTileViewModel.kt
index e8b9926..7a53388 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/viewmodel/QSTileViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/viewmodel/QSTileViewModel.kt
@@ -39,9 +39,12 @@
     val isAvailable: StateFlow<Boolean>
 
     /** Specifies the [TileDetailsViewModel] for constructing the corresponding details view. */
-    val detailsViewModel: TileDetailsViewModel?
+    val tileDetailsViewModel: TileDetailsViewModel?
         get() = null
 
+    /** Returns the current user for this tile */
+    val currentTileUser: Int
+
     /**
      * Notifies about the user change. Implementations should avoid using 3rd party userId sources
      * and use this value instead. This is to maintain consistent and concurrency-free behaviour
@@ -65,8 +68,6 @@
     fun destroy()
 }
 
-/**
- * Returns the immediate state of the tile or null if the state haven't been collected yet.
- */
+/** Returns the immediate state of the tile or null if the state haven't been collected yet. */
 val QSTileViewModel.currentState: QSTileState?
     get() = state.value
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/viewmodel/QSTileViewModelAdapter.kt b/packages/SystemUI/src/com/android/systemui/qs/tiles/viewmodel/QSTileViewModelAdapter.kt
index 30d1f05..e607eae 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/viewmodel/QSTileViewModelAdapter.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/viewmodel/QSTileViewModelAdapter.kt
@@ -19,7 +19,6 @@
 import android.content.Context
 import android.os.UserHandle
 import android.util.Log
-import com.android.app.tracing.coroutines.launchTraced as launch
 import com.android.internal.logging.InstanceId
 import com.android.systemui.Dumpable
 import com.android.systemui.animation.Expandable
@@ -156,8 +155,12 @@
         qsTileViewModel.onUserChanged(UserHandle.of(currentUser))
     }
 
+    override fun getCurrentTileUser(): Int {
+        return qsTileViewModel.currentTileUser
+    }
+
     override fun getDetailsViewModel(): TileDetailsViewModel? {
-        return qsTileViewModel.detailsViewModel
+        return qsTileViewModel.tileDetailsViewModel
     }
 
     @Deprecated(
@@ -213,6 +216,10 @@
         qsTileViewModel.destroy()
     }
 
+    override fun isDestroyed(): Boolean {
+        return !(tileAdapterJob?.isActive ?: false)
+    }
+
     override fun getState(): QSTile.AdapterState =
         qsTileViewModel.currentState?.let { mapState(context, it, qsTileViewModel.config) }
             ?: QSTile.AdapterState()
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/viewmodel/StubQSTileViewModel.kt b/packages/SystemUI/src/com/android/systemui/qs/tiles/viewmodel/StubQSTileViewModel.kt
index 00b7e61..bdd5c73 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/viewmodel/StubQSTileViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/viewmodel/StubQSTileViewModel.kt
@@ -37,4 +37,7 @@
     override fun onActionPerformed(userAction: QSTileUserAction) = error("Don't call stubs")
 
     override fun destroy() = error("Don't call stubs")
+
+    override val currentTileUser: Int
+        get() = error("Don't call stubs")
 }
diff --git a/packages/SystemUI/src/com/android/systemui/scene/domain/startable/ScrimStartable.kt b/packages/SystemUI/src/com/android/systemui/scene/domain/startable/ScrimStartable.kt
index 305dcfb..c0d9326 100644
--- a/packages/SystemUI/src/com/android/systemui/scene/domain/startable/ScrimStartable.kt
+++ b/packages/SystemUI/src/com/android/systemui/scene/domain/startable/ScrimStartable.kt
@@ -36,7 +36,7 @@
 import com.android.systemui.scene.shared.flag.SceneContainerFlag
 import com.android.systemui.scene.shared.model.Overlays
 import com.android.systemui.scene.shared.model.Scenes
-import com.android.systemui.settings.brightness.domain.interactor.BrightnessMirrorShowingInteractor
+import com.android.systemui.settings.brightness.domain.interactor.BrightnessMirrorShowingInteractorPassThrough
 import com.android.systemui.statusbar.phone.DozeServiceHost
 import com.android.systemui.statusbar.phone.ScrimController
 import com.android.systemui.statusbar.phone.ScrimState
@@ -64,7 +64,7 @@
     biometricUnlockInteractor: BiometricUnlockInteractor,
     private val statusBarKeyguardViewManager: StatusBarKeyguardViewManager,
     private val alternateBouncerInteractor: AlternateBouncerInteractor,
-    brightnessMirrorShowingInteractor: BrightnessMirrorShowingInteractor,
+    brightnessMirrorShowingInteractor: BrightnessMirrorShowingInteractorPassThrough,
     private val dozeServiceHost: DozeServiceHost,
 ) : CoreStartable {
 
diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/ActionIntentCreator.kt b/packages/SystemUI/src/com/android/systemui/screenshot/ActionIntentCreator.kt
index 15638d3..9208fc3 100644
--- a/packages/SystemUI/src/com/android/systemui/screenshot/ActionIntentCreator.kt
+++ b/packages/SystemUI/src/com/android/systemui/screenshot/ActionIntentCreator.kt
@@ -22,12 +22,19 @@
 import android.content.ContentProvider
 import android.content.Context
 import android.content.Intent
+import android.content.pm.PackageManager
 import android.net.Uri
 import android.os.UserHandle
+import com.android.systemui.dagger.SysUISingleton
 import com.android.systemui.res.R
 import com.android.systemui.screenshot.scroll.LongScreenshotActivity
+import com.android.systemui.shared.Flags.usePreferredImageEditor
+import javax.inject.Inject
 
-object ActionIntentCreator {
+@SysUISingleton
+class ActionIntentCreator
+@Inject
+constructor(private val context: Context, private val packageManager: PackageManager) {
     /** @return a chooser intent to share the given URI. */
     fun createShare(uri: Uri): Intent = createShare(uri, subject = null, text = null)
 
@@ -54,7 +61,7 @@
                 clipData =
                     ClipData(
                         ClipDescription("content", arrayOf(ClipDescription.MIMETYPE_TEXT_PLAIN)),
-                        ClipData.Item(uri)
+                        ClipData.Item(uri),
                     )
 
                 subject?.let { putExtra(Intent.EXTRA_SUBJECT, subject) }
@@ -70,16 +77,21 @@
     }
 
     /**
-     * @return an ACTION_EDIT intent for the given URI, directed to config_screenshotEditor if
-     *   available.
+     * @return an ACTION_EDIT intent for the given URI, directed to config_preferredScreenshotEditor
+     *   if enabled, falling back to config_screenshotEditor if that's non-empty.
      */
-    fun createEdit(rawUri: Uri, context: Context): Intent {
+    fun createEdit(rawUri: Uri): Intent {
         val uri = uriWithoutUserId(rawUri)
         val editIntent = Intent(Intent.ACTION_EDIT)
 
-        val editor = context.getString(R.string.config_screenshotEditor)
-        if (editor.isNotEmpty()) {
-            editIntent.component = ComponentName.unflattenFromString(editor)
+        if (usePreferredImageEditor()) {
+            // Use the preferred editor if it's available, otherwise fall back to the default editor
+            editIntent.component = preferredEditor() ?: defaultEditor()
+        } else {
+            val editor = context.getString(R.string.config_screenshotEditor)
+            if (editor.isNotEmpty()) {
+                editIntent.component = ComponentName.unflattenFromString(editor)
+            }
         }
 
         return editIntent
@@ -92,7 +104,7 @@
     }
 
     /** @return an Intent to start the LongScreenshotActivity */
-    fun createLongScreenshotIntent(owner: UserHandle, context: Context): Intent {
+    fun createLongScreenshotIntent(owner: UserHandle): Intent {
         return Intent(context, LongScreenshotActivity::class.java)
             .putExtra(LongScreenshotActivity.EXTRA_SCREENSHOT_USER_HANDLE, owner)
             .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
@@ -100,8 +112,35 @@
             .addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION)
     }
 
-    private const val EXTRA_EDIT_SOURCE = "edit_source"
-    private const val EDIT_SOURCE_SCREENSHOT = "screenshot"
+    private fun preferredEditor(): ComponentName? =
+        runCatching {
+                val preferredEditor = context.getString(R.string.config_preferredScreenshotEditor)
+                val component = ComponentName.unflattenFromString(preferredEditor) ?: return null
+
+                val info =
+                    packageManager.getPackageInfo(
+                        component.packageName,
+                        PackageManager.GET_ACTIVITIES,
+                    )
+
+                return info.activities
+                    ?.firstOrNull { it.componentName.className.equals(component.className) }
+                    ?.componentName
+            }
+            .getOrNull()
+
+    private fun defaultEditor(): ComponentName? =
+        runCatching {
+                context.getString(R.string.config_screenshotEditor).let {
+                    ComponentName.unflattenFromString(it)
+                }
+            }
+            .getOrNull()
+
+    companion object {
+        private const val EXTRA_EDIT_SOURCE = "edit_source"
+        private const val EDIT_SOURCE_SCREENSHOT = "screenshot"
+    }
 }
 
 /**
diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/LegacyScreenshotController.java b/packages/SystemUI/src/com/android/systemui/screenshot/LegacyScreenshotController.java
index 2259b55..621bdd1 100644
--- a/packages/SystemUI/src/com/android/systemui/screenshot/LegacyScreenshotController.java
+++ b/packages/SystemUI/src/com/android/systemui/screenshot/LegacyScreenshotController.java
@@ -139,6 +139,7 @@
     private RequestCallback mCurrentRequestCallback;
     private String mPackageName = "";
     private final BroadcastReceiver mCopyBroadcastReceiver;
+    private final ActionIntentCreator mActionIntentCreator;
 
     /** Tracks config changes that require re-creating UI */
     private final InterestingConfigChanges mConfigChanges = new InterestingConfigChanges(
@@ -174,6 +175,7 @@
             MessageContainerController messageContainerController,
             Provider<ScreenshotSoundController> screenshotSoundController,
             AnnouncementResolver announcementResolver,
+            ActionIntentCreator actionIntentCreator,
             @Assisted Display display
     ) {
         mScreenshotSmartActions = screenshotSmartActions;
@@ -201,6 +203,7 @@
         mMessageContainerController = messageContainerController;
         mAssistContentRequester = assistContentRequester;
         mAnnouncementResolver = announcementResolver;
+        mActionIntentCreator = actionIntentCreator;
 
         mViewProxy = viewProxyFactory.getProxy(mContext, mDisplay.getDisplayId());
 
@@ -509,8 +512,7 @@
     private void executeBatchScrollCapture(ScrollCaptureResponse response, UserHandle owner) {
         mScrollCaptureExecutor.executeBatchScrollCapture(response,
                 () -> {
-                    final Intent intent = ActionIntentCreator.INSTANCE.createLongScreenshotIntent(
-                            owner, mContext);
+                    final Intent intent = mActionIntentCreator.createLongScreenshotIntent(owner);
                     mContext.startActivity(intent);
                 },
                 mViewProxy::restoreNonScrollingUi,
diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotActionsProvider.kt b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotActionsProvider.kt
index 3696b13..4373389 100644
--- a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotActionsProvider.kt
+++ b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotActionsProvider.kt
@@ -24,9 +24,6 @@
 import com.android.internal.logging.UiEventLogger
 import com.android.systemui.log.DebugLogger.debugLog
 import com.android.systemui.res.R
-import com.android.systemui.screenshot.ActionIntentCreator.createEdit
-import com.android.systemui.screenshot.ActionIntentCreator.createShareWithSubject
-import com.android.systemui.screenshot.ActionIntentCreator.createShareWithText
 import com.android.systemui.screenshot.ScreenshotEvent.SCREENSHOT_EDIT_TAPPED
 import com.android.systemui.screenshot.ScreenshotEvent.SCREENSHOT_PREVIEW_TAPPED
 import com.android.systemui.screenshot.ScreenshotEvent.SCREENSHOT_SHARE_TAPPED
@@ -70,6 +67,7 @@
 constructor(
     private val context: Context,
     private val uiEventLogger: UiEventLogger,
+    private val actionIntentCreator: ActionIntentCreator,
     @Assisted val requestId: UUID,
     @Assisted val request: ScreenshotData,
     @Assisted val actionExecutor: ActionExecutor,
@@ -88,7 +86,7 @@
                 uiEventLogger.log(SCREENSHOT_PREVIEW_TAPPED, 0, request.packageNameString)
                 onDeferrableActionTapped { result ->
                     actionExecutor.startSharedTransition(
-                        createEdit(result.uri, context),
+                        actionIntentCreator.createEdit(result.uri),
                         result.user,
                         true,
                     )
@@ -110,9 +108,12 @@
                 val uri = webUri
                 val shareIntent =
                     if (screenshotContextUrl() && uri != null) {
-                        createShareWithText(result.uri, extraText = uri.toString())
+                        actionIntentCreator.createShareWithText(
+                            result.uri,
+                            extraText = uri.toString(),
+                        )
                     } else {
-                        createShareWithSubject(result.uri, result.subject)
+                        actionIntentCreator.createShareWithSubject(result.uri, result.subject)
                     }
                 actionExecutor.startSharedTransition(shareIntent, result.user, false)
             }
@@ -130,7 +131,7 @@
             uiEventLogger.log(SCREENSHOT_EDIT_TAPPED, 0, request.packageNameString)
             onDeferrableActionTapped { result ->
                 actionExecutor.startSharedTransition(
-                    createEdit(result.uri, context),
+                    actionIntentCreator.createEdit(result.uri),
                     result.user,
                     true,
                 )
diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotController.kt b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotController.kt
index f5c6052..ea02b07 100644
--- a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotController.kt
+++ b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotController.kt
@@ -46,7 +46,6 @@
 import com.android.systemui.clipboardoverlay.ClipboardOverlayController
 import com.android.systemui.dagger.qualifiers.Main
 import com.android.systemui.res.R
-import com.android.systemui.screenshot.ActionIntentCreator.createLongScreenshotIntent
 import com.android.systemui.screenshot.ScreenshotShelfViewProxy.ScreenshotViewCallback
 import com.android.systemui.screenshot.scroll.ScrollCaptureController.LongScreenshot
 import com.android.systemui.screenshot.scroll.ScrollCaptureExecutor
@@ -84,6 +83,7 @@
     private val messageContainerController: MessageContainerController,
     private val announcementResolver: AnnouncementResolver,
     @Main private val mainExecutor: Executor,
+    private val actionIntentCreator: ActionIntentCreator,
     @Assisted private val display: Display,
 ) : InteractiveScreenshotHandler {
     private val context: WindowContext
@@ -408,7 +408,7 @@
         scrollCaptureExecutor.executeBatchScrollCapture(
             response,
             {
-                val intent = createLongScreenshotIntent(owner, context)
+                val intent = actionIntentCreator.createLongScreenshotIntent(owner)
                 context.startActivity(intent)
             },
             { viewProxy.restoreNonScrollingUi() },
diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/scroll/LongScreenshotActivity.java b/packages/SystemUI/src/com/android/systemui/screenshot/scroll/LongScreenshotActivity.java
index b43a1d2..48e08a0 100644
--- a/packages/SystemUI/src/com/android/systemui/screenshot/scroll/LongScreenshotActivity.java
+++ b/packages/SystemUI/src/com/android/systemui/screenshot/scroll/LongScreenshotActivity.java
@@ -87,6 +87,7 @@
     private final ImageExporter mImageExporter;
     private final LongScreenshotData mLongScreenshotHolder;
     private final ActionIntentExecutor mActionExecutor;
+    private final ActionIntentCreator mActionIntentCreator;
 
     private ImageView mPreview;
     private ImageView mTransitionView;
@@ -117,13 +118,15 @@
     @Inject
     public LongScreenshotActivity(UiEventLogger uiEventLogger, ImageExporter imageExporter,
             @Main Executor mainExecutor, @Background Executor bgExecutor,
-            LongScreenshotData longScreenshotHolder, ActionIntentExecutor actionExecutor) {
+            LongScreenshotData longScreenshotHolder, ActionIntentExecutor actionExecutor,
+            ActionIntentCreator actionIntentCreator) {
         mUiEventLogger = uiEventLogger;
         mUiExecutor = mainExecutor;
         mBackgroundExecutor = bgExecutor;
         mImageExporter = imageExporter;
         mLongScreenshotHolder = longScreenshotHolder;
         mActionExecutor = actionExecutor;
+        mActionIntentCreator = actionIntentCreator;
     }
 
 
@@ -348,7 +351,7 @@
         if (mScreenshotUserHandle != Process.myUserHandle()) {
             // TODO: Fix transition for work profile. Omitting it in the meantime.
             mActionExecutor.launchIntentAsync(
-                    ActionIntentCreator.INSTANCE.createEdit(uri, this),
+                    mActionIntentCreator.createEdit(uri),
                     mScreenshotUserHandle, false,
                     /* activityOptions */ null, /* transitionCoordinator */ null);
         } else {
@@ -376,7 +379,7 @@
     }
 
     private void doShare(Uri uri) {
-        Intent shareIntent = ActionIntentCreator.INSTANCE.createShare(uri);
+        Intent shareIntent = mActionIntentCreator.createShare(uri);
         mActionExecutor.launchIntentAsync(shareIntent, mScreenshotUserHandle, false,
                 /* activityOptions */ null, /* transitionCoordinator */ null);
     }
diff --git a/packages/SystemUI/src/com/android/systemui/settings/brightness/domain/interactor/BrightnessMirrorShowingInteractor.kt b/packages/SystemUI/src/com/android/systemui/settings/brightness/domain/interactor/BrightnessMirrorShowingInteractor.kt
index de068a0..f2cff9f 100644
--- a/packages/SystemUI/src/com/android/systemui/settings/brightness/domain/interactor/BrightnessMirrorShowingInteractor.kt
+++ b/packages/SystemUI/src/com/android/systemui/settings/brightness/domain/interactor/BrightnessMirrorShowingInteractor.kt
@@ -19,19 +19,28 @@
 import com.android.systemui.dagger.SysUISingleton
 import com.android.systemui.settings.brightness.data.repository.BrightnessMirrorShowingRepository
 import javax.inject.Inject
+import kotlinx.coroutines.flow.StateFlow
 
+interface BrightnessMirrorShowingInteractor {
+    val isShowing: StateFlow<Boolean>
+
+    fun setMirrorShowing(showing: Boolean)
+}
+
+/** This interactor is just a passthrough of the [BrightnessMirrorShowingRepository]. */
 @SysUISingleton
-class BrightnessMirrorShowingInteractor
+class BrightnessMirrorShowingInteractorPassThrough
 @Inject
-constructor(private val brightnessMirrorShowingRepository: BrightnessMirrorShowingRepository) {
+constructor(private val brightnessMirrorShowingRepository: BrightnessMirrorShowingRepository) :
+    BrightnessMirrorShowingInteractor {
     /**
      * Whether a brightness mirror is showing (either as a compose overlay or as a separate mirror).
      *
      * This can be used to determine whether other views/composables have to be hidden.
      */
-    val isShowing = brightnessMirrorShowingRepository.isShowing
+    override val isShowing = brightnessMirrorShowingRepository.isShowing
 
-    fun setMirrorShowing(showing: Boolean) {
+    override fun setMirrorShowing(showing: Boolean) {
         brightnessMirrorShowingRepository.setMirrorShowing(showing)
     }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java b/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java
index 131efaa..eea0470 100644
--- a/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java
+++ b/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java
@@ -42,6 +42,8 @@
 import static com.android.systemui.util.DumpUtilsKt.asIndenting;
 import static com.android.systemui.util.kotlin.JavaAdapterKt.collectFlow;
 
+import static kotlinx.coroutines.flow.StateFlowKt.MutableStateFlow;
+
 import static java.lang.Float.isNaN;
 
 import android.animation.Animator;
@@ -57,6 +59,7 @@
 import android.graphics.Region;
 import android.graphics.RenderEffect;
 import android.graphics.Shader;
+import android.os.Build;
 import android.os.Bundle;
 import android.os.Trace;
 import android.util.IndentingPrintWriter;
@@ -131,6 +134,7 @@
 import com.android.systemui.qs.flags.QSComposeFragment;
 import com.android.systemui.res.R;
 import com.android.systemui.scene.shared.flag.SceneContainerFlag;
+import com.android.systemui.settings.brightness.data.repository.BrightnessMirrorShowingRepository;
 import com.android.systemui.settings.brightness.domain.interactor.BrightnessMirrorShowingInteractor;
 import com.android.systemui.shade.data.repository.FlingInfo;
 import com.android.systemui.shade.data.repository.ShadeRepository;
@@ -201,6 +205,7 @@
 
 import kotlinx.coroutines.CoroutineDispatcher;
 import kotlinx.coroutines.flow.Flow;
+import kotlinx.coroutines.flow.MutableStateFlow;
 import kotlinx.coroutines.flow.StateFlow;
 
 import java.io.PrintWriter;
@@ -214,7 +219,8 @@
 import javax.inject.Provider;
 
 @SysUISingleton
-public final class NotificationPanelViewController implements ShadeSurface, Dumpable {
+public final class NotificationPanelViewController implements
+        ShadeSurface, Dumpable, BrightnessMirrorShowingInteractor {
 
     public static final String TAG = NotificationPanelView.class.getSimpleName();
     private static final boolean DEBUG_LOGCAT = Compile.IS_DEBUG && Log.isLoggable(TAG, Log.DEBUG);
@@ -241,6 +247,8 @@
     private static final String COUNTER_PANEL_OPEN_PEEK = "panel_open_peek";
     private static final Rect M_DUMMY_DIRTY_RECT = new Rect(0, 0, 1, 1);
     private static final Rect EMPTY_RECT = new Rect();
+    //TODO(b/394977231) delete this temporary workaround used only by tests
+    private static final boolean DISABLE_LONG_PRESS_EXPAND = Build.HARDWARE.equals("cutf_cvm");
     /**
      * Whether the Shade should animate to reflect Back gesture progress.
      * To minimize latency at runtime, we cache this, else we'd be reading it every time
@@ -403,6 +411,18 @@
             mTrackingHeadsUpListeners = new ArrayList<>();
     private HeadsUpAppearanceController mHeadsUpAppearanceController;
 
+    private final BrightnessMirrorShowingRepository mBrightnessMirrorShowingRepository;
+    /**
+     * This flow would track whether the brightness mirror should be showing, but aware of the
+     * alpha transitions of NPV.
+     *
+     * When the repository flow emits true, this will also emit true (and start the alpha animation
+     * of NPV to go to 0f). However, when the repository emits false, this will first animate the
+     * alpha to 1f, and then emit false. This guarantees that the mirror is always showing while
+     * the alpha of NPV is animating.
+     */
+    private final MutableStateFlow<Boolean> mIsBrightnessMirrorShowing = MutableStateFlow(false);
+
     private int mPanelAlpha;
     private Runnable mPanelAlphaEndAction;
     private final AnimatableProperty mPanelAlphaAnimator = AnimatableProperty.from("panelAlpha",
@@ -420,6 +440,9 @@
                 if (mPanelAlphaEndAction != null) {
                     mPanelAlphaEndAction.run();
                 }
+                // Once the animation for the alpha has finished (NPV is visible again), dismiss
+                // the mirror
+                postToView(() -> mIsBrightnessMirrorShowing.setValue(false));
             }).setCustomInterpolator(
                     mPanelAlphaAnimator.getProperty(), Interpolators.ALPHA_IN);
 
@@ -530,7 +553,6 @@
     };
 
     private final ActivityStarter mActivityStarter;
-    private final BrightnessMirrorShowingInteractor mBrightnessMirrorShowingInteractor;
 
     @Nullable
     private RenderEffect mBlurRenderEffect = null;
@@ -608,7 +630,7 @@
             PowerInteractor powerInteractor,
             KeyguardClockPositionAlgorithm keyguardClockPositionAlgorithm,
             MSDLPlayer msdlPlayer,
-            BrightnessMirrorShowingInteractor brightnessMirrorShowingInteractor,
+            BrightnessMirrorShowingRepository brightnessMirrorShowingRepository,
             BlurConfig blurConfig) {
         mBlurConfig = blurConfig;
         SceneContainerFlag.assertInLegacyMode();
@@ -765,7 +787,10 @@
                 },
                 mFalsingManager);
         mActivityStarter = activityStarter;
-        mBrightnessMirrorShowingInteractor = brightnessMirrorShowingInteractor;
+        mBrightnessMirrorShowingRepository = brightnessMirrorShowingRepository;
+        mIsBrightnessMirrorShowing.setValue(
+                mBrightnessMirrorShowingRepository.isShowing().getValue()
+        );
         onFinishInflate();
         keyguardUnlockAnimationController.addKeyguardUnlockAnimationListener(
                 new KeyguardUnlockAnimationController.KeyguardUnlockAnimationListener() {
@@ -893,12 +918,32 @@
                 mMainDispatcher);
         if (QSComposeFragment.isEnabled()) {
             collectFlow(mView,
-                    mBrightnessMirrorShowingInteractor.isShowing(),
-                    isShowing -> setAlpha(isShowing ? 0 : 255, true)
+                    mBrightnessMirrorShowingRepository.isShowing(),
+                    this::onBrightnessMirrorShowingChanged
             );
         }
     }
 
+    private void onBrightnessMirrorShowingChanged(boolean isShowing) {
+        if (!mIsBrightnessMirrorShowing.getValue()) {
+            // Immediately set the value of the mirror if we are not showing the mirror, and then
+            // start fading the shade.
+            mIsBrightnessMirrorShowing.setValue(isShowing);
+        }
+        setAlpha(isShowing ? 0 : 255, true);
+    }
+
+    @androidx.annotation.NonNull
+    @Override
+    public StateFlow<Boolean> isShowing() {
+        return mIsBrightnessMirrorShowing;
+    }
+
+    @Override
+    public void setMirrorShowing(boolean showing) {
+        mBrightnessMirrorShowingRepository.setMirrorShowing(showing);
+    }
+
     @VisibleForTesting
     void loadDimens() {
         final ViewConfiguration configuration = ViewConfiguration.get(this.mView.getContext());
@@ -1785,7 +1830,8 @@
         // height - which means user is swiping down. Otherwise shade QS will either not show at all
         // with HUN movement or it will blink when touching HUN initially
         boolean qsShouldExpandWithHeadsUp = !mSplitShadeEnabled
-                || (!mHeadsUpManager.isTrackingHeadsUp() || expandedHeight > mHeadsUpStartHeight);
+                || (!mHeadsUpManager.isTrackingHeadsUp().getValue()
+                || expandedHeight > mHeadsUpStartHeight);
         if (goingBetweenClosedShadeAndExpandedQs && qsShouldExpandWithHeadsUp) {
             float qsExpansionFraction;
             if (mSplitShadeEnabled) {
@@ -2045,7 +2091,7 @@
         // motion has the expected speed. We also only want this on non-lockscreen for now.
         if (mSplitShadeEnabled && mBarState == SHADE) {
             boolean transitionFromHeadsUp = (mHeadsUpManager != null
-                    && mHeadsUpManager.isTrackingHeadsUp()) || mExpandingFromHeadsUp;
+                    && mHeadsUpManager.isTrackingHeadsUp().getValue()) || mExpandingFromHeadsUp;
             // heads-up starting height is too close to mSplitShadeFullTransitionDistance and
             // when dragging HUN transition is already 90% complete. It makes shade become
             // immediately visible when starting to drag. We want to set distance so that
@@ -2202,6 +2248,11 @@
     @Deprecated
     public void onStatusBarLongPress(MotionEvent event) {
         Log.i(TAG, "Status Bar was long pressed.");
+        if (DISABLE_LONG_PRESS_EXPAND) {
+            //TODO(b/394977231) delete this temporary workaround used only by tests
+            Log.i(TAG, "Ignoring status Bar long press on virtualized test device.");
+            return;
+        }
         ShadeExpandsOnStatusBarLongPress.assertInNewMode();
         mStatusBarLongPressDowntime = event.getDownTime();
         if (isTracking()) {
diff --git a/packages/SystemUI/src/com/android/systemui/shade/QuickSettingsControllerImpl.java b/packages/SystemUI/src/com/android/systemui/shade/QuickSettingsControllerImpl.java
index d058372..42c63f9 100644
--- a/packages/SystemUI/src/com/android/systemui/shade/QuickSettingsControllerImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/shade/QuickSettingsControllerImpl.java
@@ -2158,6 +2158,8 @@
 
     /** */
     public final class QsFragmentListener implements FragmentHostManager.FragmentListener {
+        private boolean mPreviouslyVisibleMedia = false;
+
         /** */
         @Override
         public void onFragmentViewCreated(String tag, Fragment fragment) {
@@ -2183,7 +2185,12 @@
                     setAnimateNextNotificationBounds(
                             StackStateAnimator.ANIMATION_DURATION_STANDARD, 0);
                     mNotificationStackScrollLayoutController.animateNextTopPaddingChange();
+                    if (QSComposeFragment.isEnabled() && mPreviouslyVisibleMedia && !visible) {
+                        updateHeightsOnShadeLayoutChange();
+                        mPanelViewControllerLazy.get().positionClockAndNotifications();
+                    }
                 }
+                mPreviouslyVisibleMedia = visible;
             });
             mLockscreenShadeTransitionController.setQS(mQs);
             if (QSComposeFragment.isEnabled()) {
diff --git a/packages/SystemUI/src/com/android/systemui/shade/ShadeEmptyImplModule.kt b/packages/SystemUI/src/com/android/systemui/shade/ShadeEmptyImplModule.kt
index 99ff946..631f2ed 100644
--- a/packages/SystemUI/src/com/android/systemui/shade/ShadeEmptyImplModule.kt
+++ b/packages/SystemUI/src/com/android/systemui/shade/ShadeEmptyImplModule.kt
@@ -17,6 +17,8 @@
 package com.android.systemui.shade
 
 import com.android.systemui.dagger.SysUISingleton
+import com.android.systemui.settings.brightness.domain.interactor.BrightnessMirrorShowingInteractor
+import com.android.systemui.settings.brightness.domain.interactor.BrightnessMirrorShowingInteractorPassThrough
 import com.android.systemui.shade.data.repository.PrivacyChipRepository
 import com.android.systemui.shade.data.repository.PrivacyChipRepositoryImpl
 import com.android.systemui.shade.data.repository.ShadeRepository
@@ -81,4 +83,10 @@
     @Binds
     @SysUISingleton
     abstract fun bindShadeModeInteractor(impl: ShadeModeInteractorEmptyImpl): ShadeModeInteractor
+
+    @Binds
+    @SysUISingleton
+    abstract fun bindBrightnessMirrorInteractor(
+        impl: BrightnessMirrorShowingInteractorPassThrough
+    ): BrightnessMirrorShowingInteractor
 }
diff --git a/packages/SystemUI/src/com/android/systemui/shade/ShadeHeaderController.kt b/packages/SystemUI/src/com/android/systemui/shade/ShadeHeaderController.kt
index ce48c85..6670c04 100644
--- a/packages/SystemUI/src/com/android/systemui/shade/ShadeHeaderController.kt
+++ b/packages/SystemUI/src/com/android/systemui/shade/ShadeHeaderController.kt
@@ -366,6 +366,7 @@
             val batteryComposeView =
                 ComposeView(mView.context).apply {
                     setContent {
+                        id = R.id.battery_meter_composable_view
                         val showBatteryEstimate by showBatteryEstimate.collectAsStateWithLifecycle()
                         BatteryWithEstimate(
                             modifier = Modifier.height(17.dp).wrapContentWidth(),
diff --git a/packages/SystemUI/src/com/android/systemui/shade/ShadeModule.kt b/packages/SystemUI/src/com/android/systemui/shade/ShadeModule.kt
index c44e066..f7b998e 100644
--- a/packages/SystemUI/src/com/android/systemui/shade/ShadeModule.kt
+++ b/packages/SystemUI/src/com/android/systemui/shade/ShadeModule.kt
@@ -22,6 +22,8 @@
 import com.android.systemui.plugins.qs.QSContainerController
 import com.android.systemui.qs.ui.adapter.QSSceneAdapterImpl
 import com.android.systemui.scene.shared.flag.SceneContainerFlag
+import com.android.systemui.settings.brightness.domain.interactor.BrightnessMirrorShowingInteractor
+import com.android.systemui.settings.brightness.domain.interactor.BrightnessMirrorShowingInteractorPassThrough
 import com.android.systemui.shade.carrier.ShadeCarrierGroupControllerLog
 import com.android.systemui.shade.data.repository.PrivacyChipRepository
 import com.android.systemui.shade.data.repository.PrivacyChipRepositoryImpl
@@ -156,6 +158,19 @@
 
         @Provides
         @SysUISingleton
+        fun providesBrightnessMirrorInteractor(
+            sceneContainerOn: Provider<BrightnessMirrorShowingInteractorPassThrough>,
+            sceneContainerOff: Provider<NotificationPanelViewController>,
+        ): BrightnessMirrorShowingInteractor {
+            return if (SceneContainerFlag.isEnabled) {
+                sceneContainerOn.get()
+            } else {
+                sceneContainerOff.get()
+            }
+        }
+
+        @Provides
+        @SysUISingleton
         fun providesQSContainerController(impl: QSSceneAdapterImpl): QSContainerController {
             return impl
         }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/ActionClickLogger.kt b/packages/SystemUI/src/com/android/systemui/statusbar/ActionClickLogger.kt
index 5042f1b..e998a73 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/ActionClickLogger.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/ActionClickLogger.kt
@@ -30,26 +30,25 @@
     @NotifInteractionLog private val buffer: LogBuffer
 ) {
     fun logInitialClick(
-        entry: NotificationEntry?,
+        entry: String?,
         index: Integer?,
         pendingIntent: PendingIntent
     ) {
         buffer.log(TAG, LogLevel.DEBUG, {
-            str1 = entry?.key
-            str2 = entry?.ranking?.channel?.id
+            str1 = entry
             str3 = pendingIntent.toString()
             int1 = index?.toInt() ?: Int.MIN_VALUE
         }, {
-            "ACTION CLICK $str1 (channel=$str2) for pending intent $str3 at index $int1"
+            "ACTION CLICK $str1 for pending intent $str3 at index $int1"
         })
     }
 
     fun logRemoteInputWasHandled(
-        entry: NotificationEntry?,
+        entry: String?,
         index: Int?
     ) {
         buffer.log(TAG, LogLevel.DEBUG, {
-            str1 = entry?.key
+            str1 = entry
             int1 = index ?: Int.MIN_VALUE
         }, {
             "  [Action click] Triggered remote input (for $str1) at index $int1"
@@ -57,12 +56,12 @@
     }
 
     fun logStartingIntentWithDefaultHandler(
-        entry: NotificationEntry?,
+        entry: String?,
         pendingIntent: PendingIntent,
         index: Int?
     ) {
         buffer.log(TAG, LogLevel.DEBUG, {
-            str1 = entry?.key
+            str1 = entry
             str2 = pendingIntent.toString()
             int1 = index ?: Int.MIN_VALUE
         }, {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/CommandQueue.java b/packages/SystemUI/src/com/android/systemui/statusbar/CommandQueue.java
index 7dc2ae7..e44701d 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/CommandQueue.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/CommandQueue.java
@@ -580,7 +580,8 @@
         /**
          * @see IStatusBar#immersiveModeChanged
          */
-        default void immersiveModeChanged(int rootDisplayAreaId, boolean isImmersiveMode) {}
+        default void immersiveModeChanged(int rootDisplayAreaId, boolean isImmersiveMode,
+                int windowType) {}
 
         /**
          * @see IStatusBar#moveFocusedTaskToDesktop(int)
@@ -876,11 +877,13 @@
     }
 
     @Override
-    public void immersiveModeChanged(int rootDisplayAreaId, boolean isImmersiveMode) {
+    public void immersiveModeChanged(int rootDisplayAreaId, boolean isImmersiveMode,
+            int windowType) {
         synchronized (mLock) {
             final SomeArgs args = SomeArgs.obtain();
             args.argi1 = rootDisplayAreaId;
             args.argi2 = isImmersiveMode ? 1 : 0;
+            args.argi3 = windowType;
             mHandler.obtainMessage(MSG_IMMERSIVE_CHANGED, args).sendToTarget();
         }
     }
@@ -2030,8 +2033,10 @@
                     args = (SomeArgs) msg.obj;
                     int rootDisplayAreaId = args.argi1;
                     boolean isImmersiveMode = args.argi2 != 0;
+                    int windowType = args.argi3;
                     for (int i = 0; i < mCallbacks.size(); i++) {
-                        mCallbacks.get(i).immersiveModeChanged(rootDisplayAreaId, isImmersiveMode);
+                        mCallbacks.get(i).immersiveModeChanged(rootDisplayAreaId, isImmersiveMode,
+                                windowType);
                     }
                     break;
                 case MSG_ENTER_DESKTOP: {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/ImmersiveModeConfirmation.java b/packages/SystemUI/src/com/android/systemui/statusbar/ImmersiveModeConfirmation.java
index fed3f6e..97e62d7 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/ImmersiveModeConfirmation.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/ImmersiveModeConfirmation.java
@@ -23,6 +23,8 @@
 import static android.app.StatusBarManager.DISABLE_RECENT;
 import static android.view.Display.DEFAULT_DISPLAY;
 import static android.view.WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS;
+import static android.view.WindowManager.LayoutParams.TYPE_PRESENTATION;
+import static android.view.WindowManager.LayoutParams.TYPE_PRIVATE_PRESENTATION;
 import static android.window.DisplayAreaOrganizer.FEATURE_UNDEFINED;
 import static android.window.DisplayAreaOrganizer.KEY_ROOT_DISPLAY_AREA_ID;
 
@@ -208,7 +210,8 @@
     }
 
     @Override
-    public void immersiveModeChanged(int rootDisplayAreaId, boolean isImmersiveMode) {
+    public void immersiveModeChanged(int rootDisplayAreaId, boolean isImmersiveMode,
+            int windowType) {
         mHandler.removeMessages(H.SHOW);
         if (isImmersiveMode) {
             if (DEBUG) Log.d(TAG, "immersiveModeChanged() sConfirmed=" + sConfirmed);
@@ -221,7 +224,9 @@
                     && mCanSystemBarsBeShownByUser
                     && !mNavBarEmpty
                     && !UserManager.isDeviceInDemoMode(mDisplayContext)
-                    && (mLockTaskState != LOCK_TASK_MODE_LOCKED)) {
+                    && (mLockTaskState != LOCK_TASK_MODE_LOCKED)
+                    && windowType != TYPE_PRESENTATION
+                    && windowType != TYPE_PRIVATE_PRESENTATION) {
                 final Message msg = mHandler.obtainMessage(
                         H.SHOW);
                 msg.arg1 = rootDisplayAreaId;
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/LockscreenShadeTransitionController.kt b/packages/SystemUI/src/com/android/systemui/statusbar/LockscreenShadeTransitionController.kt
index 5b5058f..05ef164 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/LockscreenShadeTransitionController.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/LockscreenShadeTransitionController.kt
@@ -36,6 +36,7 @@
 import com.android.systemui.statusbar.notification.collection.NotificationEntry
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow
 import com.android.systemui.statusbar.notification.row.ExpandableView
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi
 import com.android.systemui.statusbar.notification.stack.AmbientState
 import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayoutController
 import com.android.systemui.statusbar.phone.CentralSurfaces
@@ -391,7 +392,9 @@
             }
             if (view is ExpandableNotificationRow) {
                 // Only drag down on sensitive views, otherwise the ExpandHelper will take this
-                return view.entry.isSensitive.value
+                return if (NotificationBundleUi.isEnabled)
+                    view.entryAdapter?.isSensitive?.value == true
+                else view.entry.isSensitive.value
             }
         }
         return false
@@ -559,12 +562,15 @@
         var userId: Int = lockScreenUserManager.getCurrentUserId()
         var entry: NotificationEntry? = null
         if (expandView is ExpandableNotificationRow) {
-            entry = expandView.entry
-            entry.setUserExpanded(/* userExpanded= */ true, /* allowChildExpansion= */ true)
+            expandView.setUserExpanded(/* userExpanded= */ true, /* allowChildExpansion= */ true)
             // Indicate that the group expansion is changing at this time -- this way the group
             // and children backgrounds / divider animations will look correct.
-            entry.setGroupExpansionChanging(true)
-            userId = entry.sbn.userId
+            expandView.isGroupExpansionChanging = true
+            if (NotificationBundleUi.isEnabled) {
+                userId = expandView.entryAdapter?.sbn?.userId!!
+            } else {
+                userId = expandView.entry.sbn.userId
+            }
         }
         var fullShadeNeedsBouncer =
             (!lockScreenUserManager.shouldShowLockscreenNotifications() ||
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationGroupingUtil.java b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationGroupingUtil.java
index 6ebe024..4bb12e5 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationGroupingUtil.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationGroupingUtil.java
@@ -57,12 +57,6 @@
     private static final VisibilityApplicator VISIBILITY_APPLICATOR = new VisibilityApplicator();
     private static final VisibilityApplicator APP_NAME_APPLICATOR = new AppNameApplicator();
     private static final ResultApplicator LEFT_ICON_APPLICATOR = new LeftIconApplicator();
-    private static final DataExtractor ICON_EXTRACTOR = new DataExtractor() {
-        @Override
-        public Object extractData(ExpandableNotificationRow row) {
-            return row.getEntry().getSbn().getNotification();
-        }
-    };
 
     private final ExpandableNotificationRow mRow;
     private final ArrayList<Processor> mProcessors = new ArrayList<>();
@@ -109,31 +103,26 @@
         // To hide the icons if they are the same and the color is the same
         mProcessors.add(new Processor(mRow,
                 com.android.internal.R.id.icon,
-                ICON_EXTRACTOR,
                 iconVisibilityComparator,
                 VISIBILITY_APPLICATOR));
         // To grey out the icons when they are not the same, or they have the same color
         mProcessors.add(new Processor(mRow,
                 com.android.internal.R.id.status_bar_latest_event_content,
-                ICON_EXTRACTOR,
                 greyComparator,
                 greyApplicator));
         // To show the large icon on the left side instead if all the small icons are the same
         mProcessors.add(new Processor(mRow,
                 com.android.internal.R.id.status_bar_latest_event_content,
-                ICON_EXTRACTOR,
                 iconVisibilityComparator,
                 LEFT_ICON_APPLICATOR));
         // To only show the work profile icon in the group header
         mProcessors.add(new Processor(mRow,
                 com.android.internal.R.id.profile_badge,
-                null /* Extractor */,
                 BADGE_COMPARATOR,
                 VISIBILITY_APPLICATOR));
         // To hide the app name in group children
         mProcessors.add(new Processor(mRow,
                 com.android.internal.R.id.app_name_text,
-                null,
                 APP_NAME_COMPARATOR,
                 APP_NAME_APPLICATOR));
         // To hide the header text if it's the same
@@ -253,23 +242,20 @@
 
     private static class Processor {
         private final int mId;
-        private final DataExtractor mExtractor;
         private final ViewComparator mComparator;
         private final ResultApplicator mApplicator;
         private final ExpandableNotificationRow mParentRow;
         private boolean mApply;
         private View mParentView;
-        private Object mParentData;
 
         public static Processor forTextView(ExpandableNotificationRow row, int id) {
-            return new Processor(row, id, null, TEXT_VIEW_COMPARATOR, VISIBILITY_APPLICATOR);
+            return new Processor(row, id, TEXT_VIEW_COMPARATOR, VISIBILITY_APPLICATOR);
         }
 
-        Processor(ExpandableNotificationRow row, int id, DataExtractor extractor,
+        Processor(ExpandableNotificationRow row, int id,
                 ViewComparator comparator,
                 ResultApplicator applicator) {
             mId = id;
-            mExtractor = extractor;
             mApplicator = applicator;
             mComparator = comparator;
             mParentRow = row;
@@ -279,7 +265,6 @@
             NotificationViewWrapper wrapper = mParentRow.getNotificationViewWrapper();
             View header = wrapper == null ? null : wrapper.getNotificationHeader();
             mParentView = header == null ? null : header.findViewById(mId);
-            mParentData = mExtractor == null ? null : mExtractor.extractData(mParentRow);
             mApply = !mComparator.isEmpty(mParentView);
         }
 
@@ -297,9 +282,7 @@
                 // when for example showing an undo notification
                 return;
             }
-            Object childData = mExtractor == null ? null : mExtractor.extractData(row);
-            mApply = mComparator.compare(mParentView, ownView,
-                    mParentData, childData);
+            mApply = mComparator.compare(mParentView, ownView);
         }
 
         public void apply(ExpandableNotificationRow row) {
@@ -331,11 +314,9 @@
         /**
          * @param parent     the view with the given id in the group header
          * @param child      the view with the given id in the child notification
-         * @param parentData optional data for the parent
-         * @param childData  optional data for the child
          * @return whether to views are the same
          */
-        boolean compare(View parent, View child, Object parentData, Object childData);
+        boolean compare(View parent, View child);
 
         boolean isEmpty(View view);
     }
@@ -346,7 +327,7 @@
 
     private static class BadgeComparator implements ViewComparator {
         @Override
-        public boolean compare(View parent, View child, Object parentData, Object childData) {
+        public boolean compare(View parent, View child) {
             return parent.getVisibility() != View.GONE;
         }
 
@@ -364,7 +345,7 @@
 
     private static class TextViewComparator implements ViewComparator {
         @Override
-        public boolean compare(View parent, View child, Object parentData, Object childData) {
+        public boolean compare(View parent, View child) {
             TextView parentView = (TextView) parent;
             CharSequence parentText = parentView == null ? "" : parentView.getText();
             TextView childView = (TextView) child;
@@ -380,7 +361,7 @@
 
     private abstract static class IconComparator implements ViewComparator {
         @Override
-        public boolean compare(View parent, View child, Object parentData, Object childData) {
+        public boolean compare(View parent, View child) {
             return false;
         }
 
@@ -440,14 +421,14 @@
 
     private static class AppNameComparator extends TextViewComparator {
         @Override
-        public boolean compare(View parent, View child, Object parentData, Object childData) {
+        public boolean compare(View parent, View child) {
             if (isEmpty(child)) {
                 // In headerless notifications the AppName view exists but is usually GONE (and not
                 // populated).  We need to treat this case as equal to the header in order to
                 // deduplicate the view.
                 return true;
             }
-            return super.compare(parent, child, parentData, childData);
+            return super.compare(parent, child);
         }
     }
 
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationRemoteInputManager.java b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationRemoteInputManager.java
index c0ee56b..0d34bdc 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationRemoteInputManager.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationRemoteInputManager.java
@@ -133,11 +133,14 @@
             Integer actionIndex = (Integer)
                     view.getTag(com.android.internal.R.id.notification_action_index_tag);
 
+            final ExpandableNotificationRow row = getNotificationRowForParent(view.getParent());
             final NotificationEntry entry = getNotificationForParent(view.getParent());
-            mLogger.logInitialClick(entry, actionIndex, pendingIntent);
+            mLogger.logInitialClick(
+                    row != null ? row.getLoggingKey() : null, actionIndex, pendingIntent);
 
             if (handleRemoteInput(view, pendingIntent)) {
-                mLogger.logRemoteInputWasHandled(entry, actionIndex);
+                mLogger.logRemoteInputWasHandled(
+                        row != null ? row.getLoggingKey() : null, actionIndex);
                 return true;
             }
 
@@ -157,7 +160,8 @@
             return mCallback.handleRemoteViewClick(view, pendingIntent,
                     action == null ? false : action.isAuthenticationRequired(), actionIndex, () -> {
                     Pair<Intent, ActivityOptions> options = response.getLaunchOptions(view);
-                    mLogger.logStartingIntentWithDefaultHandler(entry, pendingIntent, actionIndex);
+                    mLogger.logStartingIntentWithDefaultHandler(
+                            row != null ? row.getLoggingKey() : null, pendingIntent, actionIndex);
                     boolean started = RemoteViews.startPendingIntent(view, pendingIntent, options);
                     if (started) releaseNotificationIfKeptForRemoteInputHistory(entry);
                     return started;
@@ -224,6 +228,16 @@
             return null;
         }
 
+        private @Nullable ExpandableNotificationRow getNotificationRowForParent(ViewParent parent) {
+            while (parent != null) {
+                if (parent instanceof ExpandableNotificationRow) {
+                    return ((ExpandableNotificationRow) parent);
+                }
+                parent = parent.getParent();
+            }
+            return null;
+        }
+
         private boolean handleRemoteInput(View view, PendingIntent pendingIntent) {
             if (mCallback.shouldHandleRemoteInput(view, pendingIntent)) {
                 return true;
@@ -722,7 +736,7 @@
      *
      * @return on-click handler
      */
-    public RemoteViews.InteractionHandler getRemoteViewsOnClickHandler() {
+    public InteractionHandler getRemoteViewsOnClickHandler() {
         return mInteractionHandler;
     }
 
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationShelf.java b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationShelf.java
index 31fdec6..f88c618 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationShelf.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationShelf.java
@@ -50,6 +50,7 @@
 import com.android.systemui.statusbar.notification.row.ActivatableNotificationView;
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
 import com.android.systemui.statusbar.notification.row.ExpandableView;
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
 import com.android.systemui.statusbar.notification.shared.NotificationMinimalism;
 import com.android.systemui.statusbar.notification.shelf.NotificationShelfBackgroundView;
 import com.android.systemui.statusbar.notification.shelf.NotificationShelfIconContainer;
@@ -672,7 +673,9 @@
             // if the shelf is clipped, lets make sure we also clip the icon
             maxTop = Math.max(maxTop, getTranslationY() + getClipTopAmount());
         }
-        StatusBarIconView icon = row.getEntry().getIcons().getShelfIcon();
+        StatusBarIconView icon = NotificationBundleUi.isEnabled()
+                ? row.getEntryAdapter().getIcons().getShelfIcon()
+                : row.getEntry().getIcons().getShelfIcon();
         float shelfIconPosition = getTranslationY() + icon.getTop() + icon.getTranslationY();
         if (shelfIconPosition < maxTop && !mAmbientState.isFullyHidden()) {
             int top = (int) (maxTop - shelfIconPosition);
@@ -684,7 +687,9 @@
     }
 
     private void updateContinuousClipping(final ExpandableNotificationRow row) {
-        StatusBarIconView icon = row.getEntry().getIcons().getShelfIcon();
+        StatusBarIconView icon = NotificationBundleUi.isEnabled()
+                ? row.getEntryAdapter().getIcons().getShelfIcon()
+                : row.getEntry().getIcons().getShelfIcon();
         boolean needsContinuousClipping = ViewState.isAnimatingY(icon) && !mAmbientState.isDozing();
         boolean isContinuousClipping = icon.getTag(TAG_CONTINUOUS_CLIPPING) != null;
         if (needsContinuousClipping && !isContinuousClipping) {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/connectivity/ConnectivityModule.kt b/packages/SystemUI/src/com/android/systemui/statusbar/connectivity/ConnectivityModule.kt
index 10090283..48f0245 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/connectivity/ConnectivityModule.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/connectivity/ConnectivityModule.kt
@@ -34,6 +34,7 @@
 import com.android.systemui.qs.tiles.NfcTile
 import com.android.systemui.qs.tiles.base.interactor.QSTileAvailabilityInteractor
 import com.android.systemui.qs.tiles.base.viewmodel.QSTileViewModelFactory
+import com.android.systemui.qs.tiles.dialog.InternetDetailsViewModel
 import com.android.systemui.qs.tiles.impl.airplane.domain.AirplaneModeMapper
 import com.android.systemui.qs.tiles.impl.airplane.domain.interactor.AirplaneModeTileDataInteractor
 import com.android.systemui.qs.tiles.impl.airplane.domain.interactor.AirplaneModeTileUserActionInteractor
@@ -162,13 +163,15 @@
             factory: QSTileViewModelFactory.Static<AirplaneModeTileModel>,
             mapper: AirplaneModeMapper,
             stateInteractor: AirplaneModeTileDataInteractor,
-            userActionInteractor: AirplaneModeTileUserActionInteractor
+            userActionInteractor: AirplaneModeTileUserActionInteractor,
+            internetDetailsViewModelFactory: InternetDetailsViewModel.Factory
         ): QSTileViewModel =
             factory.create(
                 TileSpec.create(AIRPLANE_MODE_TILE_SPEC),
                 userActionInteractor,
                 stateInteractor,
                 mapper,
+                internetDetailsViewModelFactory.create(),
             )
 
         @Provides
@@ -226,13 +229,15 @@
             factory: QSTileViewModelFactory.Static<InternetTileModel>,
             mapper: InternetTileMapper,
             stateInteractor: InternetTileDataInteractor,
-            userActionInteractor: InternetTileUserActionInteractor
+            userActionInteractor: InternetTileUserActionInteractor,
+            internetDetailsViewModelFactory: InternetDetailsViewModel.Factory
         ): QSTileViewModel =
             factory.create(
                 TileSpec.create(INTERNET_TILE_SPEC),
                 userActionInteractor,
                 stateInteractor,
                 mapper,
+                internetDetailsViewModelFactory.create(),
             )
 
         @Provides
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/core/MultiDisplayStatusBarOrchestratorStore.kt b/packages/SystemUI/src/com/android/systemui/statusbar/core/MultiDisplayStatusBarOrchestratorStore.kt
new file mode 100644
index 0000000..7069791
--- /dev/null
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/core/MultiDisplayStatusBarOrchestratorStore.kt
@@ -0,0 +1,99 @@
+/*
+ * Copyright (C) 2025 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.systemui.statusbar.core
+
+import com.android.systemui.CoreStartable
+import com.android.systemui.dagger.SysUISingleton
+import com.android.systemui.dagger.qualifiers.Background
+import com.android.systemui.display.data.repository.DisplayRepository
+import com.android.systemui.display.data.repository.DisplayScopeRepository
+import com.android.systemui.display.data.repository.PerDisplayStoreImpl
+import com.android.systemui.statusbar.data.repository.StatusBarModeRepositoryStore
+import com.android.systemui.statusbar.phone.AutoHideControllerStore
+import com.android.systemui.statusbar.window.StatusBarWindowControllerStore
+import com.android.systemui.statusbar.window.data.repository.StatusBarWindowStateRepositoryStore
+import dagger.Lazy
+import dagger.Module
+import dagger.Provides
+import dagger.multibindings.ClassKey
+import dagger.multibindings.IntoMap
+import javax.inject.Inject
+import kotlinx.coroutines.CoroutineScope
+
+/** [PerDisplayStoreImpl] for providing display specific [StatusBarOrchestrator]. */
+@SysUISingleton
+class MultiDisplayStatusBarOrchestratorStore
+@Inject
+constructor(
+    @Background backgroundApplicationScope: CoroutineScope,
+    displayRepository: DisplayRepository,
+    private val factory: StatusBarOrchestrator.Factory,
+    private val statusBarWindowControllerStore: StatusBarWindowControllerStore,
+    private val statusBarModeRepositoryStore: StatusBarModeRepositoryStore,
+    private val initializerStore: StatusBarInitializerStore,
+    private val autoHideControllerStore: AutoHideControllerStore,
+    private val displayScopeRepository: DisplayScopeRepository,
+    private val statusBarWindowStateRepositoryStore: StatusBarWindowStateRepositoryStore,
+) : PerDisplayStoreImpl<StatusBarOrchestrator>(backgroundApplicationScope, displayRepository) {
+
+    init {
+        StatusBarConnectedDisplays.assertInNewMode()
+    }
+
+    override fun createInstanceForDisplay(displayId: Int): StatusBarOrchestrator? {
+        val statusBarModeRepository =
+            statusBarModeRepositoryStore.forDisplay(displayId) ?: return null
+        val statusBarInitializer = initializerStore.forDisplay(displayId) ?: return null
+        val statusBarWindowController =
+            statusBarWindowControllerStore.forDisplay(displayId) ?: return null
+        val autoHideController = autoHideControllerStore.forDisplay(displayId) ?: return null
+        return factory.create(
+            displayId,
+            // TODO: b/398825844 - Handle nullness to prevent leaking CoroutineScope.
+            displayScopeRepository.scopeForDisplay(displayId),
+            statusBarWindowStateRepositoryStore.forDisplay(displayId),
+            statusBarModeRepository,
+            statusBarInitializer,
+            statusBarWindowController,
+            autoHideController,
+        )
+    }
+
+    override val instanceClass = StatusBarOrchestrator::class.java
+
+    override suspend fun onDisplayRemovalAction(instance: StatusBarOrchestrator) {
+        instance.stop()
+    }
+}
+
+@Module
+interface MultiDisplayStatusBarOrchestratorStoreModule {
+
+    @Provides
+    @SysUISingleton
+    @IntoMap
+    @ClassKey(MultiDisplayStatusBarOrchestratorStore::class)
+    fun storeAsCoreStartable(
+        multiDisplayLazy: Lazy<MultiDisplayStatusBarOrchestratorStore>
+    ): CoreStartable {
+        return if (StatusBarConnectedDisplays.isEnabled) {
+            multiDisplayLazy.get()
+        } else {
+            CoreStartable.NOP
+        }
+    }
+}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/core/MultiDisplayStatusBarStarter.kt b/packages/SystemUI/src/com/android/systemui/statusbar/core/MultiDisplayStatusBarStarter.kt
index eeb7a40..dfb3763 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/core/MultiDisplayStatusBarStarter.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/core/MultiDisplayStatusBarStarter.kt
@@ -23,13 +23,8 @@
 import com.android.systemui.dagger.SysUISingleton
 import com.android.systemui.dagger.qualifiers.Application
 import com.android.systemui.display.data.repository.DisplayRepository
-import com.android.systemui.display.data.repository.DisplayScopeRepository
 import com.android.systemui.statusbar.data.repository.LightBarControllerStore
 import com.android.systemui.statusbar.data.repository.PrivacyDotWindowControllerStore
-import com.android.systemui.statusbar.data.repository.StatusBarModeRepositoryStore
-import com.android.systemui.statusbar.phone.AutoHideControllerStore
-import com.android.systemui.statusbar.window.StatusBarWindowControllerStore
-import com.android.systemui.statusbar.window.data.repository.StatusBarWindowStateRepositoryStore
 import com.android.systemui.util.kotlin.pairwiseBy
 import javax.inject.Inject
 import kotlinx.coroutines.CoroutineScope
@@ -44,15 +39,9 @@
 @Inject
 constructor(
     @Application private val applicationScope: CoroutineScope,
-    private val displayScopeRepository: DisplayScopeRepository,
-    private val statusBarOrchestratorFactory: StatusBarOrchestrator.Factory,
-    private val statusBarWindowStateRepositoryStore: StatusBarWindowStateRepositoryStore,
-    private val statusBarModeRepositoryStore: StatusBarModeRepositoryStore,
+    private val multiDisplayStatusBarOrchestratorStore: MultiDisplayStatusBarOrchestratorStore,
     private val displayRepository: DisplayRepository,
-    private val initializerStore: StatusBarInitializerStore,
-    private val statusBarWindowControllerStore: StatusBarWindowControllerStore,
     private val statusBarInitializerStore: StatusBarInitializerStore,
-    private val autoHideControllerStore: AutoHideControllerStore,
     private val privacyDotWindowControllerStore: PrivacyDotWindowControllerStore,
     private val lightBarControllerStore: LightBarControllerStore,
     private val windowManager: IWindowManager,
@@ -74,15 +63,14 @@
                         // TODO(b/393191204): Split navbar, status bar, etc. functionality
                         // from WindowManager#shouldShowSystemDecors.
                         if (windowManager.shouldShowSystemDecors(it.displayId)) {
-                            createAndStartComponentsForDisplay(it)
+                            createAndStartComponentsForDisplay(it.displayId)
                         }
                     }
                 }
         }
     }
 
-    private fun createAndStartComponentsForDisplay(display: Display) {
-        val displayId = display.displayId
+    private fun createAndStartComponentsForDisplay(displayId: Int) {
         createAndStartOrchestratorForDisplay(displayId)
         createAndStartInitializerForDisplay(displayId)
         startPrivacyDotForDisplay(displayId)
@@ -97,22 +85,7 @@
     }
 
     private fun createAndStartOrchestratorForDisplay(displayId: Int) {
-        val statusBarModeRepository = statusBarModeRepositoryStore.forDisplay(displayId) ?: return
-        val statusBarInitializer = initializerStore.forDisplay(displayId) ?: return
-        val statusBarWindowController =
-            statusBarWindowControllerStore.forDisplay(displayId) ?: return
-        val autoHideController = autoHideControllerStore.forDisplay(displayId) ?: return
-        statusBarOrchestratorFactory
-            .create(
-                displayId,
-                displayScopeRepository.scopeForDisplay(displayId),
-                statusBarWindowStateRepositoryStore.forDisplay(displayId),
-                statusBarModeRepository,
-                statusBarInitializer,
-                statusBarWindowController,
-                autoHideController,
-            )
-            .start()
+        multiDisplayStatusBarOrchestratorStore.forDisplay(displayId)?.start()
     }
 
     private fun createAndStartInitializerForDisplay(displayId: Int) {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/core/StatusBarOrchestrator.kt b/packages/SystemUI/src/com/android/systemui/statusbar/core/StatusBarOrchestrator.kt
index 9d55f6c..73ada54 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/core/StatusBarOrchestrator.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/core/StatusBarOrchestrator.kt
@@ -19,7 +19,7 @@
 import android.view.Display
 import android.view.View
 import com.android.app.tracing.coroutines.launchTraced as launch
-import com.android.systemui.CoreStartable
+import com.android.systemui.Dumpable
 import com.android.systemui.bouncer.domain.interactor.PrimaryBouncerInteractor
 import com.android.systemui.dagger.qualifiers.Main
 import com.android.systemui.demomode.DemoModeController
@@ -50,6 +50,7 @@
 import java.util.Optional
 import kotlin.coroutines.CoroutineContext
 import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Job
 import kotlinx.coroutines.flow.MutableStateFlow
 import kotlinx.coroutines.flow.combine
 import kotlinx.coroutines.flow.distinctUntilChangedBy
@@ -82,7 +83,7 @@
     private val dumpManager: DumpManager,
     powerInteractor: PowerInteractor,
     primaryBouncerInteractor: PrimaryBouncerInteractor,
-) : CoreStartable {
+) : Dumpable {
 
     private val dumpableName: String =
         if (displayId == Display.DEFAULT_DISPLAY) {
@@ -91,6 +92,8 @@
             "${javaClass.simpleName}$displayId"
         }
 
+    private var startJob: Job? = null
+
     private val phoneStatusBarViewController =
         MutableStateFlow<PhoneStatusBarViewController?>(value = null)
 
@@ -141,32 +144,33 @@
                 Pair(barTransitions, statusBarMode)
             }
 
-    override fun start() {
+    /** Starts status bar orchestration. To be called when status bar is created. */
+    fun start() {
         StatusBarConnectedDisplays.assertInNewMode()
-        coroutineScope
-            // Perform animations on the main thread to prevent crashes.
-            .launch(context = mainContext) {
-                dumpManager.registerCriticalDumpable(dumpableName, this@StatusBarOrchestrator)
-                launch {
-                    controllerAndBouncerShowing.collect { (controller, bouncerShowing) ->
-                        setBouncerShowingForStatusBarComponents(controller, bouncerShowing)
+        startJob =
+            coroutineScope
+                // Perform animations on the main thread to prevent crashes.
+                .launch(context = mainContext) {
+                    dumpManager.registerCriticalDumpable(dumpableName, this@StatusBarOrchestrator)
+                    launch {
+                        controllerAndBouncerShowing.collect { (controller, bouncerShowing) ->
+                            setBouncerShowingForStatusBarComponents(controller, bouncerShowing)
+                        }
                     }
-                }
-                launch {
-                    barTransitionsAndDeviceAsleep.collect { (barTransitions, deviceAsleep) ->
-                        if (deviceAsleep) {
-                            barTransitions.finishAnimations()
+                    launch {
+                        barTransitionsAndDeviceAsleep.collect { (barTransitions, deviceAsleep) ->
+                            if (deviceAsleep) {
+                                barTransitions.finishAnimations()
+                            }
+                        }
+                    }
+                    launch { statusBarVisible.collect { updateBubblesVisibility(it) } }
+                    launch {
+                        barModeUpdate.collect { (animate, barTransitions, statusBarMode) ->
+                            updateBarMode(animate, barTransitions, statusBarMode)
                         }
                     }
                 }
-                launch { statusBarVisible.collect { updateBubblesVisibility(it) } }
-                launch {
-                    barModeUpdate.collect { (animate, barTransitions, statusBarMode) ->
-                        updateBarMode(animate, barTransitions, statusBarMode)
-                    }
-                }
-            }
-            .invokeOnCompletion { dumpManager.unregisterDumpable(dumpableName) }
         createAndAddWindow()
         setupPluginDependencies()
         setUpAutoHide()
@@ -272,6 +276,16 @@
         )
     }
 
+    /**
+     * Called when the [StatusBarOrchestrator] should stop doing any work and clean up if needed.
+     */
+    fun stop() {
+        StatusBarConnectedDisplays.assertInNewMode()
+        dumpManager.unregisterDumpable(dumpableName)
+        startJob?.cancel()
+        startJob = null
+    }
+
     @AssistedFactory
     interface Factory {
         fun create(
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/data/repository/PrivacyDotWindowControllerStore.kt b/packages/SystemUI/src/com/android/systemui/statusbar/data/repository/PrivacyDotWindowControllerStore.kt
index 086cc99..86c3c48 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/data/repository/PrivacyDotWindowControllerStore.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/data/repository/PrivacyDotWindowControllerStore.kt
@@ -77,6 +77,10 @@
     }
 
     override val instanceClass = PrivacyDotWindowController::class.java
+
+    override suspend fun onDisplayRemovalAction(instance: PrivacyDotWindowController) {
+        instance.stop()
+    }
 }
 
 @Module
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/events/PrivacyDotWindowController.kt b/packages/SystemUI/src/com/android/systemui/statusbar/events/PrivacyDotWindowController.kt
index f7799bb..e2bcfb7 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/events/PrivacyDotWindowController.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/events/PrivacyDotWindowController.kt
@@ -59,6 +59,7 @@
     @ScreenDecorationsThread private val uiExecutor: Executor,
     private val dotFactory: PrivacyDotDecorProviderFactory,
 ) {
+    private val dotViews: MutableSet<View> = mutableSetOf()
 
     fun start() {
         uiExecutor.execute { startOnUiThread() }
@@ -72,10 +73,13 @@
         val bottomLeft = providers.inflate(BOUNDS_POSITION_BOTTOM, BOUNDS_POSITION_LEFT)
         val bottomRight = providers.inflate(BOUNDS_POSITION_BOTTOM, BOUNDS_POSITION_RIGHT)
 
-        topLeft.addToWindow(TopLeft)
-        topRight.addToWindow(TopRight)
-        bottomLeft.addToWindow(BottomLeft)
-        bottomRight.addToWindow(BottomRight)
+        listOfNotNull(
+                topLeft.addToWindow(TopLeft),
+                topRight.addToWindow(TopRight),
+                bottomLeft.addToWindow(BottomLeft),
+                bottomRight.addToWindow(BottomRight),
+            )
+            .forEach { dotViews.add(it) }
 
         privacyDotViewController.initialize(topLeft, topRight, bottomLeft, bottomRight)
     }
@@ -87,7 +91,7 @@
         return inflater.inflate(/* resource= */ provider.layoutId, /* root= */ null)
     }
 
-    private fun View.addToWindow(corner: PrivacyDotCorner) {
+    private fun View.addToWindow(corner: PrivacyDotCorner): View? {
         val excludeFromScreenshots = displayId == Display.DEFAULT_DISPLAY
         val params =
             ScreenDecorations.getWindowLayoutBaseParams(excludeFromScreenshots).apply {
@@ -110,6 +114,11 @@
                 e,
             )
         }
+        return rootView
+    }
+
+    fun stop() {
+        dotViews.forEach { viewCaptureAwareWindowManager.removeView(it) }
     }
 
     @AssistedFactory
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/layout/LetterboxBackgroundProvider.kt b/packages/SystemUI/src/com/android/systemui/statusbar/layout/LetterboxBackgroundProvider.kt
index 3d8ced1..a1536e3 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/layout/LetterboxBackgroundProvider.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/layout/LetterboxBackgroundProvider.kt
@@ -23,7 +23,6 @@
 import android.os.RemoteException
 import android.view.IWindowManager
 import com.android.systemui.CoreStartable
-import com.android.systemui.Dumpable
 import com.android.systemui.dagger.SysUISingleton
 import com.android.systemui.dagger.qualifiers.Background
 import com.android.systemui.dagger.qualifiers.Main
@@ -40,7 +39,7 @@
     @Background private val backgroundExecutor: Executor,
     private val wallpaperManager: WallpaperManager,
     @Main private val mainHandler: Handler,
-) : CoreStartable, Dumpable {
+) : CoreStartable {
     @ColorInt
     var letterboxBackgroundColor: Int = Color.BLACK
         private set
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/lockscreen/LockscreenSmartspaceController.kt b/packages/SystemUI/src/com/android/systemui/statusbar/lockscreen/LockscreenSmartspaceController.kt
index e6dd09b..e00d025 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/lockscreen/LockscreenSmartspaceController.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/lockscreen/LockscreenSmartspaceController.kt
@@ -331,7 +331,7 @@
     }
 
     /** Constructs the date view and connects it to the smartspace service. */
-    fun buildAndConnectDateView(parent: ViewGroup): View? {
+    fun buildAndConnectDateView(parent: ViewGroup, isLargeClock: Boolean): View? {
         execution.assertIsMainThread()
 
         if (!isEnabled) {
@@ -346,6 +346,7 @@
                 surfaceName = SmartspaceViewModel.SURFACE_DATE_VIEW,
                 parent = parent,
                 plugin = datePlugin,
+                isLargeClock = isLargeClock
             )
         connectSession()
 
@@ -353,7 +354,7 @@
     }
 
     /** Constructs the weather view and connects it to the smartspace service. */
-    fun buildAndConnectWeatherView(parent: ViewGroup): View? {
+    fun buildAndConnectWeatherView(parent: ViewGroup, isLargeClock: Boolean): View? {
         execution.assertIsMainThread()
 
         if (!isEnabled) {
@@ -368,6 +369,7 @@
                 surfaceName = SmartspaceViewModel.SURFACE_WEATHER_VIEW,
                 parent = parent,
                 plugin = weatherPlugin,
+                isLargeClock = isLargeClock,
             )
         connectSession()
 
@@ -390,6 +392,7 @@
                 parent = parent,
                 plugin = plugin,
                 configPlugin = configPlugin,
+                isLargeClock = false,
             )
         connectSession()
 
@@ -401,12 +404,13 @@
         parent: ViewGroup,
         plugin: BcSmartspaceDataPlugin?,
         configPlugin: BcSmartspaceConfigPlugin? = null,
+        isLargeClock: Boolean,
     ): View? {
         if (plugin == null) {
             return null
         }
 
-        val ssView = plugin.getView(parent)
+        val ssView = if (isLargeClock) plugin.getLargeClockView(parent) else plugin.getView(parent)
         configPlugin?.let { ssView.registerConfigProvider(it) }
         ssView.setBgHandler(bgHandler)
         ssView.setUiSurface(BcSmartspaceDataPlugin.UI_SURFACE_LOCK_SCREEN_AOD)
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/ConversationNotifications.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/ConversationNotifications.kt
index 9bc5231..df8fb5e 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/ConversationNotifications.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/ConversationNotifications.kt
@@ -74,7 +74,7 @@
             else
                 Notification.MessagingStyle.CONVERSATION_TYPE_LEGACY
         entry.ranking.conversationShortcutInfo?.let { shortcutInfo ->
-            logger.logAsyncTaskProgress(entry, "getting shortcut icon")
+            logger.logAsyncTaskProgress(entry.logKey, "getting shortcut icon")
             messagingStyle.shortcutIcon = launcherApps.getShortcutIcon(shortcutInfo)
             shortcutInfo.label?.let { label -> messagingStyle.conversationTitle = label }
         }
@@ -91,7 +91,7 @@
                     ImageSpan(it, ImageSpan.ALIGN_CENTER)
                 }
             val decoratedSummary =
-                SpannableString("x" + entry.ranking.summarization).apply {
+                SpannableString("x " + entry.ranking.summarization).apply {
                     setSpan(
                         /* what = */ imageSpan,
                         /* start = */ 0,
@@ -100,9 +100,9 @@
                     )
                     entry.ranking.summarization?.let {
                         setSpan(
-                            /* what = */ StyleSpan(Typeface.BOLD),
-                            /* start = */ 1,
-                            /* end = */ it.length,
+                            /* what = */ StyleSpan(Typeface.ITALIC),
+                            /* start = */ 2,
+                            /* end = */ it.length + 2,
                             /* flags = */ Spanned.SPAN_EXCLUSIVE_INCLUSIVE,
                         )
                     }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationClicker.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationClicker.java
index 6487d55..4053d06 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationClicker.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationClicker.java
@@ -25,6 +25,7 @@
 import com.android.systemui.power.domain.interactor.PowerInteractor;
 import com.android.systemui.statusbar.notification.collection.NotificationEntry;
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
 import com.android.wm.shell.bubbles.Bubbles;
 
 import java.util.Optional;
@@ -73,25 +74,25 @@
 
         final ExpandableNotificationRow row = (ExpandableNotificationRow) v;
         final NotificationEntry entry = row.getEntry();
-        mLogger.logOnClick(entry);
+        mLogger.logOnClick(row.getLoggingKey());
 
         // Check if the notification is displaying the menu, if so slide notification back
         if (isMenuVisible(row)) {
-            mLogger.logMenuVisible(entry);
+            mLogger.logMenuVisible(row.getLoggingKey());
             row.animateResetTranslation();
             return;
         } else if (row.isChildInGroup() && isMenuVisible(row.getNotificationParent())) {
-            mLogger.logParentMenuVisible(entry);
+            mLogger.logParentMenuVisible(row.getLoggingKey());
             row.getNotificationParent().animateResetTranslation();
             return;
         } else if (row.isSummaryWithChildren() && row.areChildrenExpanded()) {
             // We never want to open the app directly if the user clicks in between
             // the notifications.
-            mLogger.logChildrenExpanded(entry);
+            mLogger.logChildrenExpanded(row.getLoggingKey());
             return;
         } else if (row.areGutsExposed()) {
             // ignore click if guts are exposed
-            mLogger.logGutsExposed(entry);
+            mLogger.logGutsExposed(row.getLoggingKey());
             return;
         }
 
@@ -99,8 +100,14 @@
         row.setJustClicked(true);
         DejankUtils.postAfterTraversal(() -> row.setJustClicked(false));
 
-        if (!row.getEntry().isBubble() && mBubblesOptional.isPresent()) {
-            mBubblesOptional.get().collapseStack();
+        if (NotificationBundleUi.isEnabled()) {
+            if (!row.getEntryAdapter().isBubbleCapable() && mBubblesOptional.isPresent()) {
+                mBubblesOptional.get().collapseStack();
+            }
+        } else {
+            if (!row.getEntry().isBubble() && mBubblesOptional.isPresent()) {
+                mBubblesOptional.get().collapseStack();
+            }
         }
 
         mNotificationActivityStarter.onNotificationClicked(entry, row);
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationClickerLogger.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationClickerLogger.kt
index cea2b59..812c609 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationClickerLogger.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationClickerLogger.kt
@@ -25,42 +25,41 @@
 class NotificationClickerLogger @Inject constructor(
     @NotifInteractionLog private val buffer: LogBuffer
 ) {
-    fun logOnClick(entry: NotificationEntry) {
+    fun logOnClick(entry: String) {
         buffer.log(TAG, LogLevel.DEBUG, {
-            str1 = entry.logKey
-            str2 = entry.ranking.channel.id
+            str1 = entry
         }, {
-            "CLICK $str1 (channel=$str2)"
+            "CLICK $str1"
         })
     }
 
-    fun logMenuVisible(entry: NotificationEntry) {
+    fun logMenuVisible(entry: String) {
         buffer.log(TAG, LogLevel.DEBUG, {
-            str1 = entry.logKey
+            str1 = entry
         }, {
             "Ignoring click on $str1; menu is visible"
         })
     }
 
-    fun logParentMenuVisible(entry: NotificationEntry) {
+    fun logParentMenuVisible(entry: String) {
         buffer.log(TAG, LogLevel.DEBUG, {
-            str1 = entry.logKey
+            str1 = entry
         }, {
             "Ignoring click on $str1; parent menu is visible"
         })
     }
 
-    fun logChildrenExpanded(entry: NotificationEntry) {
+    fun logChildrenExpanded(entry: String) {
         buffer.log(TAG, LogLevel.DEBUG, {
-            str1 = entry.logKey
+            str1 = entry
         }, {
             "Ignoring click on $str1; children are expanded"
         })
     }
 
-    fun logGutsExposed(entry: NotificationEntry) {
+    fun logGutsExposed(entry: String) {
         buffer.log(TAG, LogLevel.DEBUG, {
-            str1 = entry.logKey
+            str1 = entry
         }, {
             "Ignoring click on $str1; guts are exposed"
         })
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationTransitionAnimatorController.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationTransitionAnimatorController.kt
index ab40582..874a059 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationTransitionAnimatorController.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationTransitionAnimatorController.kt
@@ -26,6 +26,7 @@
 import com.android.systemui.statusbar.notification.headsup.HeadsUpManager
 import com.android.systemui.statusbar.notification.headsup.HeadsUpUtil
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi
 import com.android.systemui.statusbar.notification.stack.NotificationListContainer
 import kotlin.math.ceil
 import kotlin.math.max
@@ -74,7 +75,7 @@
     }
 
     private val notificationEntry = notification.entry
-    private val notificationKey = notificationEntry.sbn.key
+    private val notificationKey = notification.key
 
     override val isLaunching: Boolean = true
 
@@ -117,7 +118,7 @@
         params.startNotificationTop = location[1]
         params.notificationParentTop =
             notificationListContainer
-                .getViewParentForNotification(notificationEntry)
+                .getViewParentForNotification()
                 .locationOnScreen[1]
         params.startRoundedTopClipping = roundedTopClipping
         params.startClipTopAmount = notification.clipTopAmount
@@ -148,7 +149,7 @@
             Log.d(TAG, reason)
         }
         notificationLaunchAnimationInteractor.setIsLaunchAnimationRunning(willAnimate)
-        notificationEntry.isExpandAnimationRunning = willAnimate
+        notification.isLaunchAnimationRunning = willAnimate
 
         if (!willAnimate) {
             removeHun(animate = true, reason)
@@ -158,7 +159,8 @@
 
     private val headsUpNotificationRow: ExpandableNotificationRow?
         get() {
-            val pipelineParent = notificationEntry.parent
+            val pipelineParent = if (NotificationBundleUi.isEnabled)
+                notification.entryAdapter?.parent else notificationEntry.parent
             val summaryEntry = (pipelineParent as? GroupEntry)?.summary
             return when {
                 headsUpManager.isHeadsUpEntry(notificationKey) -> notification
@@ -175,7 +177,7 @@
         HeadsUpUtil.setNeedsHeadsUpDisappearAnimationAfterClick(notification, animate)
 
         headsUpManager.removeNotification(
-            row.entry.key,
+            row.key,
             true /* releaseImmediately */,
             animate,
             reason,
@@ -190,7 +192,7 @@
         // TODO(b/184121838): Should we call InteractionJankMonitor.cancel if the animation started
         // here?
         notificationLaunchAnimationInteractor.setIsLaunchAnimationRunning(false)
-        notificationEntry.isExpandAnimationRunning = false
+        notification.isLaunchAnimationRunning = false
         removeHun(animate = true, "onLaunchAnimationCancelled()")
         onFinishAnimationCallback?.run()
     }
@@ -210,7 +212,7 @@
 
         notification.isExpandAnimationRunning = false
         notificationLaunchAnimationInteractor.setIsLaunchAnimationRunning(false)
-        notificationEntry.isExpandAnimationRunning = false
+        notification.isLaunchAnimationRunning = false
         notificationListContainer.setExpandingNotification(null)
         applyParams(null)
         removeHun(animate = false, "onLaunchAnimationEnd()")
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationUtils.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationUtils.java
index 31bcf2b..acbcab0 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationUtils.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationUtils.java
@@ -94,7 +94,7 @@
 
     /** Get the notification key, reformatted for logging, for the (optional) row */
     public static String logKey(ExpandableNotificationRow row) {
-        return row == null ? "null" : logKey(row.getEntry());
+        return row == null ? "null" : row.getLoggingKey();
     }
 
     /** Removes newlines from the notification key to prettify apps that have these in the tag */
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/BundleEntry.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/BundleEntry.java
index 35a2828..6dd44a1 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/BundleEntry.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/BundleEntry.java
@@ -24,7 +24,9 @@
 import android.app.Notification;
 import android.content.Context;
 import android.os.Build;
+import android.service.notification.StatusBarNotification;
 
+import androidx.annotation.NonNull;
 import androidx.annotation.Nullable;
 import androidx.annotation.VisibleForTesting;
 
@@ -34,6 +36,10 @@
 
 import java.util.List;
 
+import kotlinx.coroutines.flow.MutableStateFlow;
+import kotlinx.coroutines.flow.StateFlow;
+import kotlinx.coroutines.flow.StateFlowKt;
+
 /**
  * Class to represent notifications bundled by classification.
  */
@@ -41,6 +47,9 @@
 
     private final BundleEntryAdapter mEntryAdapter;
 
+    // TODO(b/394483200): move NotificationEntry's implementation to PipelineEntry?
+    private final MutableStateFlow<Boolean> mSensitive = StateFlowKt.MutableStateFlow(false);
+
     // TODO (b/389839319): implement the row
     private ExpandableNotificationRow mRow;
 
@@ -97,20 +106,26 @@
             return true;
         }
 
+        @NonNull
         @Override
         public String getKey() {
             return mKey;
         }
 
         @Override
+        @Nullable
         public ExpandableNotificationRow getRow() {
             return mRow;
         }
 
-        @Nullable
         @Override
-        public EntryAdapter getGroupRoot() {
-            return this;
+        public boolean isGroupRoot() {
+            return true;
+        }
+
+        @Override
+        public StateFlow<Boolean> isSensitive() {
+            return BundleEntry.this.mSensitive;
         }
 
         @Override
@@ -149,6 +164,48 @@
             // TODO(b/396446620): implement bundle icons
             return null;
         }
+
+        @Override
+        public boolean isColorized() {
+            return false;
+        }
+
+        @Override
+        @Nullable
+        public StatusBarNotification getSbn() {
+            return null;
+        }
+
+        @Override
+        public boolean canDragAndDrop() {
+            return false;
+        }
+
+        @Override
+        public boolean isBubbleCapable() {
+            return false;
+        }
+
+        @Override
+        @Nullable
+        public String getStyle() {
+            return null;
+        }
+
+        @Override
+        public int getSectionBucket() {
+            return mBucket;
+        }
+
+        @Override
+        public boolean isAmbient() {
+            return false;
+        }
+
+        @Override
+        public boolean isFullScreenCapable() {
+            return false;
+        }
     }
 
     public static final List<BundleEntry> ROOT_BUNDLES = List.of(
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/EntryAdapter.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/EntryAdapter.java
index 6431cac..307a957 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/EntryAdapter.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/EntryAdapter.java
@@ -17,6 +17,7 @@
 package com.android.systemui.statusbar.notification.collection;
 
 import android.content.Context;
+import android.service.notification.StatusBarNotification;
 
 import androidx.annotation.NonNull;
 import androidx.annotation.Nullable;
@@ -24,6 +25,8 @@
 import com.android.systemui.statusbar.notification.icon.IconPack;
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
 
+import kotlinx.coroutines.flow.StateFlow;
+
 /**
  * Adapter interface for UI to get relevant info.
  */
@@ -51,15 +54,10 @@
     ExpandableNotificationRow getRow();
 
     /**
-     * Gets the EntryAdapter that is the nearest root of the collection of rows the given entry
-     * belongs to. If the given entry is a BundleEntry or an isolated child of a BundleEntry, the
-     * BundleEntry will be returned. If the given notification is a group summary NotificationEntry,
-     * or a child of a group summary, the summary NotificationEntry will be returned, even if that
-     * summary belongs to a BundleEntry. If the entry is a notification that does not belong to any
-     * group or bundle grouping, null will be returned.
+     * Whether this entry is the root of its collapsable 'group' - either a BundleEntry or a
+     * notification group summary
      */
-    @Nullable
-    EntryAdapter getGroupRoot();
+    boolean isGroupRoot();
 
     /**
      * @return whether the row can be removed with the 'Clear All' action
@@ -107,4 +105,35 @@
      * Retrieves the pack of icons associated with this entry
      */
     IconPack getIcons();
+
+    /**
+     * Returns whether the content of this entry is sensitive
+     */
+    StateFlow<Boolean> isSensitive();
+
+    /**
+     * Returns whether this row has a background color set by an app
+     */
+    boolean isColorized();
+
+    /**
+     * Returns the SBN that backs this row, if present
+     */
+    @Nullable
+    StatusBarNotification getSbn();
+
+    boolean canDragAndDrop();
+
+    boolean isBubbleCapable();
+
+    @Nullable String getStyle();
+
+    int getSectionBucket();
+
+    boolean isAmbient();
+
+    default boolean isFullScreenCapable() {
+        return false;
+    }
 }
+
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/NotifCollection.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/NotifCollection.java
index 826329d..9795edf 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/NotifCollection.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/NotifCollection.java
@@ -96,6 +96,7 @@
 import com.android.systemui.statusbar.notification.collection.notifcollection.NotifLifetimeExtender;
 import com.android.systemui.statusbar.notification.collection.notifcollection.RankingAppliedEvent;
 import com.android.systemui.statusbar.notification.collection.notifcollection.RankingUpdatedEvent;
+import com.android.systemui.statusbar.notification.collection.notifcollection.UpdateSource;
 import com.android.systemui.statusbar.notification.collection.provider.NotificationDismissibilityProvider;
 import com.android.systemui.util.Assert;
 import com.android.systemui.util.NamedListenerSet;
@@ -547,6 +548,12 @@
             // TODO: If a coalesced event ever gets here, it's possible to lose track of children,
             //  since their rankings might have been updated earlier (and thus we may no longer
             //  think a child is associated with this locally-dismissed entry).
+            // If the postTime remains the same, we can assume the update is from SystemServer, not
+            // the app.
+            long lastUpdateTime = entry.getSbn().getPostTime();
+            UpdateSource source = sbn.getPostTime() == lastUpdateTime
+                    ? UpdateSource.SystemServer
+                    : UpdateSource.App;
             cancelLocalDismissal(entry);
             cancelLifetimeExtension(entry);
             cancelDismissInterception(entry);
@@ -556,7 +563,7 @@
             mEventQueue.add(new BindEntryEvent(entry, sbn));
 
             mLogger.logNotifUpdated(entry);
-            mEventQueue.add(new EntryUpdatedEvent(entry, true /* fromSystem */));
+            mEventQueue.add(new EntryUpdatedEvent(entry, source));
         }
     }
 
@@ -620,7 +627,7 @@
     }
 
     private boolean isDismissable(NotificationEntry entry) {
-        return mDismissibilityProvider.isDismissable(entry);
+        return mDismissibilityProvider.isDismissable(entry.getKey());
     }
 
     /**
@@ -1045,7 +1052,7 @@
         mEventQueue.add(new BindEntryEvent(entry, sbn));
 
         mLogger.logNotifUpdated(entry);
-        mEventQueue.add(new EntryUpdatedEvent(entry, false /* fromSystem */));
+        mEventQueue.add(new EntryUpdatedEvent(entry, UpdateSource.SystemUi));
 
         // Skip the applyRanking step and go straight to dispatching the events
         dispatchEventsAndRebuildList("updateNotificationInternally");
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/NotificationEntry.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/NotificationEntry.java
index e5b72d4..b19ba3a 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/NotificationEntry.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/NotificationEntry.java
@@ -32,7 +32,6 @@
 import static com.android.systemui.statusbar.notification.collection.BundleEntry.ROOT_BUNDLES;
 import static com.android.systemui.statusbar.notification.collection.GroupEntry.ROOT_ENTRY;
 import static com.android.systemui.statusbar.notification.collection.NotifCollection.REASON_NOT_CANCELED;
-import static com.android.systemui.statusbar.notification.stack.NotificationPriorityBucketKt.BUCKET_ALERTING;
 
 import static java.util.Objects.requireNonNull;
 
@@ -42,6 +41,7 @@
 import android.app.Notification.MessagingStyle.Message;
 import android.app.NotificationChannel;
 import android.app.NotificationManager.Policy;
+import android.app.PendingIntent;
 import android.app.Person;
 import android.app.RemoteInput;
 import android.app.RemoteInputHistoryItem;
@@ -79,7 +79,6 @@
 import com.android.systemui.statusbar.notification.row.shared.NotificationContentModel;
 import com.android.systemui.statusbar.notification.row.shared.NotificationRowContentBinderRefactor;
 import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
-import com.android.systemui.statusbar.notification.stack.PriorityBucket;
 import com.android.systemui.util.ListenerSet;
 
 import kotlinx.coroutines.flow.MutableStateFlow;
@@ -183,7 +182,6 @@
             new ListenerSet<>();
 
     private boolean mPulseSupressed;
-    private int mBucket = BUCKET_ALERTING;
     private boolean mIsMarkedForUserTriggeredMovement;
     private boolean mIsHeadsUpEntry;
 
@@ -297,20 +295,20 @@
             return NotificationEntry.this.getRow();
         }
 
-        @Nullable
         @Override
-        public EntryAdapter getGroupRoot() {
-            // TODO (b/395857098): for backwards compatibility this will return null if called
-            // on a group summary that's not in a bundles, but it should return itself.
+        public boolean isGroupRoot() {
             if (isTopLevelEntry() || getParent() == null) {
-                return null;
+                return false;
             }
             if (NotificationEntry.this.getParent() instanceof GroupEntry parentGroupEntry) {
-                if (parentGroupEntry.getSummary() != null) {
-                    return parentGroupEntry.getSummary().mEntryAdapter;
-                }
+                return parentGroupEntry.getSummary() == NotificationEntry.this;
             }
-            return null;
+            return false;
+        }
+
+        @Override
+        public StateFlow<Boolean> isSensitive() {
+            return NotificationEntry.this.isSensitive();
         }
 
         @Override
@@ -353,6 +351,56 @@
         public IconPack getIcons() {
             return NotificationEntry.this.getIcons();
         }
+
+        @Override
+        public boolean isColorized() {
+            return getSbn().getNotification().isColorized();
+        }
+
+        @Override
+        @Nullable
+        public StatusBarNotification getSbn() {
+            return NotificationEntry.this.getSbn();
+        }
+
+        @Override
+        public boolean canDragAndDrop() {
+            boolean canBubble = canBubble();
+            Notification notif = getSbn().getNotification();
+            PendingIntent dragIntent = notif.contentIntent != null ? notif.contentIntent
+                    : notif.fullScreenIntent;
+            if (dragIntent != null && dragIntent.isActivity() && !canBubble) {
+                return true;
+            }
+            return false;
+        }
+
+        @Override
+        public boolean isBubbleCapable() {
+            return NotificationEntry.this.isBubble();
+        }
+
+        @Override
+        @Nullable
+        public String getStyle() {
+            return getNotificationStyle();
+        }
+
+        @Override
+        public int getSectionBucket() {
+            return mBucket;
+        }
+
+        @Override
+        public boolean isAmbient() {
+            return mRanking.isAmbient();
+        }
+
+        @Override
+        public boolean isFullScreenCapable() {
+            return getSbn().getNotification().fullScreenIntent != null;
+        }
+
     }
 
     public EntryAdapter getEntryAdapter() {
@@ -560,15 +608,6 @@
         return wasBubble != isBubble();
     }
 
-    @PriorityBucket
-    public int getBucket() {
-        return mBucket;
-    }
-
-    public void setBucket(@PriorityBucket int bucket) {
-        mBucket = bucket;
-    }
-
     public ExpandableNotificationRow getRow() {
         return row;
     }
@@ -589,25 +628,45 @@
     /**
      * Get the children that are actually attached to this notification's row.
      *
-     * TODO: Seems like most callers here should probably be using
-     * {@link GroupMembershipManager#getChildren(PipelineEntry)}
+     * TODO: Seems like most callers here should be asking a PipelineEntry, not a NotificationEntry
      */
     public @Nullable List<NotificationEntry> getAttachedNotifChildren() {
-        if (row == null) {
-            return null;
+        if (NotificationBundleUi.isEnabled()) {
+            if (isGroupSummary()) {
+                return ((GroupEntry) getParent()).getChildren();
+            }
+        } else {
+            if (row == null) {
+                return null;
+            }
+
+            List<ExpandableNotificationRow> rowChildren = row.getAttachedChildren();
+            if (rowChildren == null) {
+                return null;
+            }
+
+            ArrayList<NotificationEntry> children = new ArrayList<>();
+            for (ExpandableNotificationRow child : rowChildren) {
+                children.add(child.getEntry());
+            }
+
+            return children;
+        }
+        return null;
+    }
+
+    private boolean isGroupSummary() {
+        if (getParent() == null) {
+            // The entry is not attached, so it doesn't count.
+            return false;
+        }
+        PipelineEntry pipelineEntry = getParent();
+        if (!(pipelineEntry instanceof GroupEntry groupEntry)) {
+            return false;
         }
 
-        List<ExpandableNotificationRow> rowChildren = row.getAttachedChildren();
-        if (rowChildren == null) {
-            return null;
-        }
-
-        ArrayList<NotificationEntry> children = new ArrayList<>();
-        for (ExpandableNotificationRow child : rowChildren) {
-            children.add(child.getEntry());
-        }
-
-        return children;
+        // If entry is a summary, its parent is a GroupEntry with summary = entry.
+        return groupEntry.getSummary() == this;
     }
 
     public void notifyFullScreenIntentLaunched() {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/PipelineEntry.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/PipelineEntry.java
index 78652cc..84de77b 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/PipelineEntry.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/PipelineEntry.java
@@ -16,10 +16,13 @@
 
 package com.android.systemui.statusbar.notification.collection;
 
+import static com.android.systemui.statusbar.notification.stack.NotificationPriorityBucketKt.BUCKET_ALERTING;
+
 import androidx.annotation.NonNull;
 import androidx.annotation.Nullable;
 
 import com.android.systemui.statusbar.notification.collection.listbuilder.NotifSection;
+import com.android.systemui.statusbar.notification.stack.PriorityBucket;
 
 /**
  * Class to represent a notification, group, or bundle in the pipeline.
@@ -29,6 +32,7 @@
     final String mKey;
     final ListAttachState mAttachState = ListAttachState.create();
     final ListAttachState mPreviousAttachState = ListAttachState.create();
+    protected int mBucket = BUCKET_ALERTING;
 
     public PipelineEntry(String key) {
         this.mKey = key;
@@ -86,4 +90,13 @@
     final ListAttachState getPreviousAttachState() {
         return mPreviousAttachState;
     }
+
+    @PriorityBucket
+    public int getBucket() {
+        return mBucket;
+    }
+
+    public void setBucket(@PriorityBucket int bucket) {
+        mBucket = bucket;
+    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/KeyguardCoordinatorLogger.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/KeyguardCoordinatorLogger.kt
index 788659e..3cd618f 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/KeyguardCoordinatorLogger.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/KeyguardCoordinatorLogger.kt
@@ -20,15 +20,14 @@
 import com.android.systemui.log.core.LogLevel
 import com.android.systemui.log.dagger.UnseenNotificationLog
 import com.android.systemui.statusbar.notification.collection.NotificationEntry
+import com.android.systemui.statusbar.notification.collection.notifcollection.UpdateSource
 import javax.inject.Inject
 
 private const val TAG = "KeyguardCoordinator"
 
 class KeyguardCoordinatorLogger
 @Inject
-constructor(
-    @UnseenNotificationLog private val buffer: LogBuffer,
-) {
+constructor(@UnseenNotificationLog private val buffer: LogBuffer) {
     fun logSeenOnLockscreen(entry: NotificationEntry) =
         buffer.log(
             TAG,
@@ -47,10 +46,7 @@
             messagePrinter = { "${if (bool1) "Start" else "Stop"} tracking unseen notifications." },
         )
 
-    fun logAllMarkedSeenOnUnlock(
-        seenCount: Int,
-        remainingUnseenCount: Int,
-    ) =
+    fun logAllMarkedSeenOnUnlock(seenCount: Int, remainingUnseenCount: Int) =
         buffer.log(
             TAG,
             LogLevel.DEBUG,
@@ -68,23 +64,30 @@
         buffer.log(
             TAG,
             LogLevel.DEBUG,
-            "Notifications have been marked as seen due to shade expansion."
+            "Notifications have been marked as seen due to shade expansion.",
         )
 
-    fun logUnseenAdded(key: String) =
+    fun logUnseenAdded(key: String, postTime: Long) =
         buffer.log(
             TAG,
             LogLevel.DEBUG,
-            messageInitializer = { str1 = key },
-            messagePrinter = { "Unseen notif added: $str1" },
+            messageInitializer = {
+                str1 = key
+                long1 = postTime
+            },
+            messagePrinter = { "Unseen notif added: $str1, postTime: $long1" },
         )
 
-    fun logUnseenUpdated(key: String) =
+    fun logUnseenUpdated(key: String, source: UpdateSource, postTime: Long) =
         buffer.log(
             TAG,
             LogLevel.DEBUG,
-            messageInitializer = { str1 = key },
-            messagePrinter = { "Unseen notif updated: $str1" },
+            messageInitializer = {
+                str1 = key
+                str2 = source.toString()
+                long1 = postTime
+            },
+            messagePrinter = { "Unseen notif updated: $str1, source: $str2, postTime: $long1" },
         )
 
     fun logUnseenRemoved(key: String) =
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/OriginalUnseenKeyguardCoordinator.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/OriginalUnseenKeyguardCoordinator.kt
index 660ee40..9623417 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/OriginalUnseenKeyguardCoordinator.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/OriginalUnseenKeyguardCoordinator.kt
@@ -36,6 +36,7 @@
 import com.android.systemui.statusbar.notification.collection.coordinator.dagger.CoordinatorScope
 import com.android.systemui.statusbar.notification.collection.listbuilder.pluggable.NotifFilter
 import com.android.systemui.statusbar.notification.collection.notifcollection.NotifCollectionListener
+import com.android.systemui.statusbar.notification.collection.notifcollection.UpdateSource
 import com.android.systemui.statusbar.notification.domain.interactor.SeenNotificationsInteractor
 import com.android.systemui.statusbar.notification.headsup.HeadsUpManager
 import com.android.systemui.statusbar.notification.headsup.headsUpEvents
@@ -274,17 +275,22 @@
                 if (
                     keyguardRepository.isKeyguardShowing() || !statusBarStateController.isExpanded
                 ) {
-                    logger.logUnseenAdded(entry.key)
+                    logger.logUnseenAdded(entry.key, entry.sbn.postTime)
                     unseenNotifications.add(entry)
                     unseenEntryAdded.tryEmit(entry)
                 }
             }
 
-            override fun onEntryUpdated(entry: NotificationEntry) {
+            override fun onEntryUpdated(entry: NotificationEntry, source: UpdateSource) {
                 if (
                     keyguardRepository.isKeyguardShowing() || !statusBarStateController.isExpanded
                 ) {
-                    logger.logUnseenUpdated(entry.key)
+                    logger.logUnseenUpdated(entry.key, source, entry.sbn.postTime)
+                    // We are not marking a notif as unseen if it's updated by the SystemServer
+                    // (for example, auto-grouping), or the SystemUi, not the App.
+                    if (source != UpdateSource.App) {
+                        return
+                    }
                     unseenNotifications.add(entry)
                     unseenEntryAdded.tryEmit(entry)
                 }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/RemoteInputCoordinator.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/RemoteInputCoordinator.kt
index 1fe32c9..e7c767f 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/RemoteInputCoordinator.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/RemoteInputCoordinator.kt
@@ -38,6 +38,7 @@
 import com.android.systemui.statusbar.notification.collection.notifcollection.NotifCollectionListener
 import com.android.systemui.statusbar.notification.collection.notifcollection.NotifLifetimeExtender
 import com.android.systemui.statusbar.notification.collection.notifcollection.SelfTrackingLifetimeExtender
+import com.android.systemui.statusbar.notification.collection.notifcollection.UpdateSource
 import java.io.PrintWriter
 import javax.inject.Inject
 
@@ -103,15 +104,15 @@
      */
     val mCollectionListener =
         object : NotifCollectionListener {
-            override fun onEntryUpdated(entry: NotificationEntry, fromSystem: Boolean) {
+            override fun onEntryUpdated(entry: NotificationEntry, source: UpdateSource) {
                 if (DEBUG) {
                     Log.d(
                         TAG,
                         "mCollectionListener.onEntryUpdated(entry=${entry.key}," +
-                            " fromSystem=$fromSystem)",
+                            " source=$source)",
                     )
                 }
-                if (fromSystem) {
+                if (source != UpdateSource.SystemUi) {
                     if (lifetimeExtensionRefactor()) {
                         if (
                             (entry.getSbn().getNotification().flags and
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/VisualStabilityCoordinator.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/VisualStabilityCoordinator.java
index 3e5655a..bdbdc53 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/VisualStabilityCoordinator.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/VisualStabilityCoordinator.java
@@ -45,8 +45,8 @@
 import com.android.systemui.statusbar.notification.collection.listbuilder.OnBeforeRenderListListener;
 import com.android.systemui.statusbar.notification.collection.listbuilder.pluggable.NotifStabilityManager;
 import com.android.systemui.statusbar.notification.collection.provider.VisualStabilityProvider;
+import com.android.systemui.statusbar.notification.data.repository.HeadsUpRepository;
 import com.android.systemui.statusbar.notification.domain.interactor.SeenNotificationsInteractor;
-import com.android.systemui.statusbar.notification.headsup.HeadsUpManager;
 import com.android.systemui.statusbar.notification.shared.NotificationMinimalism;
 import com.android.systemui.statusbar.policy.KeyguardStateController;
 import com.android.systemui.util.concurrency.DelayableExecutor;
@@ -72,7 +72,7 @@
 public class VisualStabilityCoordinator implements Coordinator, Dumpable {
     private final DelayableExecutor mDelayableExecutor;
     private final DelayableExecutor mMainExecutor;
-    private final HeadsUpManager mHeadsUpManager;
+    private final HeadsUpRepository mHeadsUpRepository;
     private final SeenNotificationsInteractor mSeenNotificationsInteractor;
     private final ShadeAnimationInteractor mShadeAnimationInteractor;
     private final StatusBarStateController mStatusBarStateController;
@@ -94,6 +94,7 @@
     private boolean mNotifPanelLaunchingActivity;
     private boolean mCommunalShowing = false;
     private boolean mLockscreenShowing = false;
+    private boolean mTrackingHeadsUp = false;
     private boolean mLockscreenInGoneTransition = false;
     private Set<String> mHeadsUpGroupKeys = new HashSet<>();
 
@@ -117,7 +118,7 @@
             @Background DelayableExecutor delayableExecutor,
             @Main DelayableExecutor mainExecutor,
             DumpManager dumpManager,
-            HeadsUpManager headsUpManager,
+            HeadsUpRepository headsUpRepository,
             ShadeAnimationInteractor shadeAnimationInteractor,
             JavaAdapter javaAdapter,
             SeenNotificationsInteractor seenNotificationsInteractor,
@@ -130,7 +131,7 @@
             KeyguardTransitionInteractor keyguardTransitionInteractor,
             KeyguardStateController keyguardStateController,
             VisualStabilityCoordinatorLogger logger) {
-        mHeadsUpManager = headsUpManager;
+        mHeadsUpRepository = headsUpRepository;
         mShadeAnimationInteractor = shadeAnimationInteractor;
         mJavaAdapter = javaAdapter;
         mSeenNotificationsInteractor = seenNotificationsInteractor;
@@ -177,6 +178,8 @@
             mJavaAdapter.alwaysCollectFlow(mKeyguardTransitionInteractor.transitionValue(
                             KeyguardState.LOCKSCREEN),
                     this::onLockscreenKeyguardStateTransitionValueChanged);
+            mJavaAdapter.alwaysCollectFlow(mHeadsUpRepository.isTrackingHeadsUp(),
+                    this::onTrackingHeadsUpModeChanged);
         }
 
         if (Flags.checkLockscreenGoneTransition()) {
@@ -239,7 +242,7 @@
                     boolean isTopUnseen = NotificationMinimalism.isEnabled()
                             && (mSeenNotificationsInteractor.isTopUnseenNotification(entry)
                                 || mSeenNotificationsInteractor.isTopOngoingNotification(entry));
-                    if (isTopUnseen || mHeadsUpManager.isHeadsUpEntry(entry.getKey())) {
+                    if (isTopUnseen || mHeadsUpRepository.isHeadsUpEntry(entry.getKey())) {
                         return !mVisibilityLocationProvider.isInVisibleLocation(entry);
                     }
                     return false;
@@ -275,7 +278,7 @@
                         return false;
                     }
 
-                    return mHeadsUpManager.isHeadsUpEntry(summary.getKey());
+                    return mHeadsUpRepository.isHeadsUpEntry(summary.getKey());
                 }
                 /**
                  * When reordering is enabled, non-heads-up groups can be pruned.
@@ -415,7 +418,7 @@
                             if (summary == null) continue;
 
                             final String summaryKey = summary.getKey();
-                            if (mHeadsUpManager.isHeadsUpEntry(summaryKey)) {
+                            if (mHeadsUpRepository.isHeadsUpEntry(summaryKey)) {
                                 currentHeadsUpKeys.add(summaryKey);
                             }
                         }
@@ -475,11 +478,19 @@
 
     private boolean isReorderingAllowed() {
         final boolean sleepyAndDozed = mFullyDozed && mSleepy;
-        final boolean stackShowing = mPanelExpanded
-                || (SceneContainerFlag.isEnabled() && mLockscreenShowing);
+        final boolean stackShowing = isStackShowing();
         return (sleepyAndDozed || !stackShowing || mCommunalShowing) && !mPulsing;
     }
 
+    /** @return true when the notification stack is visible to the user */
+    private boolean isStackShowing() {
+        if (SceneContainerFlag.isEnabled()) {
+            return mPanelExpanded || mLockscreenShowing || mTrackingHeadsUp;
+        } else {
+            return mPanelExpanded;
+        }
+    }
+
     /**
      * Allows this notification entry to be re-ordered in the notification list temporarily until
      * the timeout has passed.
@@ -610,6 +621,11 @@
         updateAllowedStates("lockscreenShowing", isShowing);
     }
 
+    private void onTrackingHeadsUpModeChanged(boolean isTrackingHeadsUp) {
+        mTrackingHeadsUp = isTrackingHeadsUp;
+        updateAllowedStates("trackingHeadsUp", isTrackingHeadsUp);
+    }
+
     private void onLockscreenInGoneTransitionChanged(boolean inGoneTransition) {
         if (!Flags.checkLockscreenGoneTransition()) {
             return;
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/inflation/NotificationRowBinderImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/inflation/NotificationRowBinderImpl.java
index 9ed1632..c2f0806 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/inflation/NotificationRowBinderImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/inflation/NotificationRowBinderImpl.java
@@ -136,9 +136,7 @@
             @NonNull NotifInflater.Params params,
             NotificationRowContentBinder.InflationCallback callback)
             throws InflationException {
-        //TODO(b/217799515): Remove the entry parameter from getViewParentForNotification(), this
-        // function returns the NotificationStackScrollLayout regardless of the entry.
-        ViewGroup parent = mListContainer.getViewParentForNotification(entry);
+        ViewGroup parent = mListContainer.getViewParentForNotification();
 
         if (entry.rowExists()) {
             mLogger.logUpdatingRow(entry, params);
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/notifcollection/NotifCollectionListener.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/notifcollection/NotifCollectionListener.java
index 362786e..ae1efa7 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/notifcollection/NotifCollectionListener.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/notifcollection/NotifCollectionListener.java
@@ -59,10 +59,9 @@
      * Called whenever a notification with the same key as an existing notification is posted. By
      * the time this listener is called, the entry's SBN and Ranking will already have been updated.
      * This delegates to {@link #onEntryUpdated(NotificationEntry)} by default.
-     * @param fromSystem If true, this update came from the NotificationManagerService.
-     *                   If false, the notification update is an internal change within systemui.
+     * @param source The source of the update.
      */
-    default void onEntryUpdated(@NonNull NotificationEntry entry, boolean fromSystem) {
+    default void onEntryUpdated(NotificationEntry entry, UpdateSource source) {
         onEntryUpdated(entry);
     }
 
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/notifcollection/NotifEvent.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/notifcollection/NotifEvent.kt
index 1dd6242..df22db2 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/notifcollection/NotifEvent.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/notifcollection/NotifEvent.kt
@@ -20,10 +20,10 @@
 import android.os.UserHandle
 import android.service.notification.NotificationListenerService.RankingMap
 import android.service.notification.StatusBarNotification
+import com.android.app.tracing.traceSection
 import com.android.systemui.statusbar.notification.collection.NotifCollection
 import com.android.systemui.statusbar.notification.collection.NotificationEntry
 import com.android.systemui.util.NamedListenerSet
-import com.android.app.tracing.traceSection
 
 /**
  * Set of classes that represent the various events that [NotifCollection] can dispatch to
@@ -31,71 +31,66 @@
  *
  * These events build up in a queue and are periodically emitted in chunks by the collection.
  */
-
 sealed class NotifEvent(private val traceName: String) {
     fun dispatchTo(listeners: NamedListenerSet<NotifCollectionListener>) {
-        traceSection(traceName) {
-            listeners.forEachTraced(::dispatchToListener)
-        }
+        traceSection(traceName) { listeners.forEachTraced(::dispatchToListener) }
     }
 
     abstract fun dispatchToListener(listener: NotifCollectionListener)
 }
 
-data class BindEntryEvent(
-    val entry: NotificationEntry,
-    val sbn: StatusBarNotification
-) : NotifEvent("onEntryBind") {
+data class BindEntryEvent(val entry: NotificationEntry, val sbn: StatusBarNotification) :
+    NotifEvent("onEntryBind") {
     override fun dispatchToListener(listener: NotifCollectionListener) {
         listener.onEntryBind(entry, sbn)
     }
 }
 
-data class InitEntryEvent(
-    val entry: NotificationEntry
-) : NotifEvent("onEntryInit") {
+data class InitEntryEvent(val entry: NotificationEntry) : NotifEvent("onEntryInit") {
     override fun dispatchToListener(listener: NotifCollectionListener) {
         listener.onEntryInit(entry)
     }
 }
 
-data class EntryAddedEvent(
-    val entry: NotificationEntry
-) : NotifEvent("onEntryAdded") {
+data class EntryAddedEvent(val entry: NotificationEntry) : NotifEvent("onEntryAdded") {
     override fun dispatchToListener(listener: NotifCollectionListener) {
         listener.onEntryAdded(entry)
     }
 }
 
-data class EntryUpdatedEvent(
-    val entry: NotificationEntry,
-    val fromSystem: Boolean
-) : NotifEvent(if (fromSystem) "onEntryUpdated" else "onEntryUpdated fromSystem=true") {
+data class EntryUpdatedEvent(val entry: NotificationEntry, val source: UpdateSource) :
+    NotifEvent(
+        if (source == UpdateSource.SystemUi) "onEntryUpdated" else "onEntryUpdated fromSystem=true"
+    ) {
     override fun dispatchToListener(listener: NotifCollectionListener) {
-        listener.onEntryUpdated(entry, fromSystem)
+        listener.onEntryUpdated(entry, source)
     }
 }
 
-data class EntryRemovedEvent(
-    val entry: NotificationEntry,
-    val reason: Int
-) : NotifEvent("onEntryRemoved ${cancellationReasonDebugString(reason)}") {
+/** Source of an entry update. */
+enum class UpdateSource {
+    /** From the app that posted the notification. */
+    App,
+    /** From the NotificationManagerService. */
+    SystemServer,
+    /** From SystemUi for rendering purpose. */
+    SystemUi,
+}
+
+data class EntryRemovedEvent(val entry: NotificationEntry, val reason: Int) :
+    NotifEvent("onEntryRemoved ${cancellationReasonDebugString(reason)}") {
     override fun dispatchToListener(listener: NotifCollectionListener) {
         listener.onEntryRemoved(entry, reason)
     }
 }
 
-data class CleanUpEntryEvent(
-    val entry: NotificationEntry
-) : NotifEvent("onEntryCleanUp") {
+data class CleanUpEntryEvent(val entry: NotificationEntry) : NotifEvent("onEntryCleanUp") {
     override fun dispatchToListener(listener: NotifCollectionListener) {
         listener.onEntryCleanUp(entry)
     }
 }
 
-data class RankingUpdatedEvent(
-    val rankingMap: RankingMap
-) : NotifEvent("onRankingUpdate") {
+data class RankingUpdatedEvent(val rankingMap: RankingMap) : NotifEvent("onRankingUpdate") {
     override fun dispatchToListener(listener: NotifCollectionListener) {
         listener.onRankingUpdate(rankingMap)
     }
@@ -111,7 +106,7 @@
     val pkgName: String,
     val user: UserHandle,
     val channel: NotificationChannel,
-    val modificationType: Int
+    val modificationType: Int,
 ) : NotifEvent("onNotificationChannelModified") {
     override fun dispatchToListener(listener: NotifCollectionListener) {
         listener.onNotificationChannelModified(pkgName, user, channel, modificationType)
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/provider/NotificationDismissibilityProvider.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/provider/NotificationDismissibilityProvider.kt
index 53f2366..75bf38f 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/provider/NotificationDismissibilityProvider.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/provider/NotificationDismissibilityProvider.kt
@@ -20,6 +20,6 @@
 
 /** Keeps track of the dismissibility of Notifications currently handed over to the view layer. */
 interface NotificationDismissibilityProvider {
-    /** @return true if the given {NotificationEntry} can currently be dismissed by the user */
-    fun isDismissable(entry: NotificationEntry): Boolean
+    /** @return true if the given entry's key can currently be dismissed by the user */
+    fun isDismissable(entryKey: String): Boolean
 }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/provider/NotificationDismissibilityProviderImpl.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/provider/NotificationDismissibilityProviderImpl.kt
index 9326d33..740442a 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/provider/NotificationDismissibilityProviderImpl.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/provider/NotificationDismissibilityProviderImpl.kt
@@ -39,8 +39,8 @@
     var nonDismissableEntryKeys = setOf<String>()
         private set
 
-    override fun isDismissable(entry: NotificationEntry): Boolean {
-        return entry.key !in nonDismissableEntryKeys
+    override fun isDismissable(entryKey: String): Boolean {
+        return entryKey !in nonDismissableEntryKeys
     }
 
     @Synchronized
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/GroupExpansionManagerImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/GroupExpansionManagerImpl.java
index b179a69..c5ae875 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/GroupExpansionManagerImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/GroupExpansionManagerImpl.java
@@ -29,6 +29,7 @@
 import com.android.systemui.statusbar.notification.collection.NotifPipeline;
 import com.android.systemui.statusbar.notification.collection.NotificationEntry;
 import com.android.systemui.statusbar.notification.collection.listbuilder.OnBeforeRenderListListener;
+import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
 import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
 
 import java.io.PrintWriter;
@@ -162,41 +163,38 @@
     @Override
     public boolean isGroupExpanded(EntryAdapter entry) {
         NotificationBundleUi.assertInNewMode();
-        return mExpandedCollections.contains(mGroupMembershipManager.getGroupRoot(entry));
+        ExpandableNotificationRow parent = entry.getRow().getNotificationParent();
+        return mExpandedCollections.contains(entry)
+                || (parent != null && mExpandedCollections.contains(parent.getEntryAdapter()));
     }
 
     @Override
-    public void setGroupExpanded(EntryAdapter entry, boolean expanded) {
+    public void setGroupExpanded(EntryAdapter groupRoot, boolean expanded) {
         NotificationBundleUi.assertInNewMode();
-        EntryAdapter groupParent = mGroupMembershipManager.getGroupRoot(entry);
-        if (!entry.isAttached()) {
+        if (!groupRoot.isAttached()) {
             if (expanded) {
                 Log.wtf(TAG, "Cannot expand group that is not attached");
-            } else {
-                // The entry is no longer attached, but we still want to make sure we don't have
-                // a stale expansion state.
-                groupParent = entry;
             }
         }
 
         boolean changed;
         if (expanded) {
-            changed = mExpandedCollections.add(groupParent);
+            changed = mExpandedCollections.add(groupRoot);
         } else {
-            changed = mExpandedCollections.remove(groupParent);
+            changed = mExpandedCollections.remove(groupRoot);
         }
 
         // Only notify listeners if something changed.
         if (changed) {
-            sendOnGroupExpandedChange(entry, expanded);
+            sendOnGroupExpandedChange(groupRoot, expanded);
         }
     }
 
     @Override
-    public boolean toggleGroupExpansion(EntryAdapter entry) {
+    public boolean toggleGroupExpansion(EntryAdapter groupRoot) {
         NotificationBundleUi.assertInNewMode();
-        setGroupExpanded(entry, !isGroupExpanded(entry));
-        return isGroupExpanded(entry);
+        setGroupExpanded(groupRoot, !isGroupExpanded(groupRoot));
+        return isGroupExpanded(groupRoot);
     }
 
     @Override
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/GroupMembershipManager.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/GroupMembershipManager.java
index 3edbfaf..86aa4a3 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/GroupMembershipManager.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/GroupMembershipManager.java
@@ -51,17 +51,6 @@
     NotificationEntry getGroupSummary(@NonNull NotificationEntry entry);
 
     /**
-     * Gets the EntryAdapter that is the nearest root of the collection of rows the given entry
-     * belongs to. If the given entry is a BundleEntry or an isolated child of a BundleEntry, the
-     * BundleEntry will be returned. If the given notification is a group summary NotificationEntry,
-     * or a child of a group summary, the summary NotificationEntry will be returned, even if that
-     * summary belongs to a BundleEntry. If the entry is a notification that does not belong to any
-     * group or bundle grouping, null will be returned.
-     */
-    @Nullable
-    EntryAdapter getGroupRoot(@NonNull EntryAdapter entry);
-
-    /**
      * @return whether a given notification is a child in a group
      */
     boolean isChildInGroup(@NonNull NotificationEntry entry);
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/GroupMembershipManagerImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/GroupMembershipManagerImpl.java
index a1a23e3..aec0d70 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/GroupMembershipManagerImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/GroupMembershipManagerImpl.java
@@ -60,7 +60,7 @@
     @Override
     public boolean isGroupRoot(@NonNull EntryAdapter entry) {
         NotificationBundleUi.assertInNewMode();
-        return entry == entry.getGroupRoot();
+        return entry.isGroupRoot();
     }
 
     @Nullable
@@ -76,13 +76,6 @@
         return null;
     }
 
-    @Nullable
-    @Override
-    public EntryAdapter getGroupRoot(@NonNull EntryAdapter entry) {
-        NotificationBundleUi.assertInNewMode();
-        return entry.getGroupRoot();
-    }
-
     @Override
     public boolean isChildInGroup(@NonNull NotificationEntry entry) {
         NotificationBundleUi.assertInLegacyMode();
@@ -94,7 +87,7 @@
     public boolean isChildInGroup(@NonNull EntryAdapter entry) {
         NotificationBundleUi.assertInNewMode();
         // An entry is a child if it's not a group root or top level entry, but it is attached.
-        return entry.isAttached() && entry != getGroupRoot(entry) && !entry.isTopLevelEntry();
+        return entry.isAttached() && !entry.isGroupRoot() && !entry.isTopLevelEntry();
     }
 
     @Nullable
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/data/repository/HeadsUpRepository.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/data/repository/HeadsUpRepository.kt
index 28e3995..222f94b 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/data/repository/HeadsUpRepository.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/data/repository/HeadsUpRepository.kt
@@ -40,6 +40,16 @@
     /** Set of currently active top-level heads up rows to be displayed. */
     val activeHeadsUpRows: Flow<Set<HeadsUpRowRepository>>
 
+    /** Whether the user is swiping on a heads up row */
+    val isTrackingHeadsUp: Flow<Boolean>
+
+    /** @return true if the actively managed heads up notifications contain an entry for this key */
+    fun isHeadsUpEntry(key: String): Boolean
+
+    /**
+     * set whether a HUN is currently animation out, to keep its view container visible during the
+     * animation
+     */
     fun setHeadsUpAnimatingAway(animatingAway: Boolean)
 
     /** Snooze the currently pinned HUN. */
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/footer/ui/view/FooterView.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/footer/ui/view/FooterView.java
index 25deec3..d09546f 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/footer/ui/view/FooterView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/footer/ui/view/FooterView.java
@@ -391,7 +391,7 @@
         if (!notificationFooterBackgroundTintOptimization()) {
             if (notificationShadeBlur()) {
                 Color backgroundColor = Color.valueOf(
-                        SurfaceEffectColors.surfaceEffect1(getResources()));
+                        SurfaceEffectColors.surfaceEffect1(getContext()));
                 scHigh = ColorUtils.setAlphaComponent(backgroundColor.toArgb(), 0xFF);
                 // Apply alpha on background drawables.
                 int backgroundAlpha = (int) (backgroundColor.alpha() * 0xFF);
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/AvalancheController.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/AvalancheController.kt
index 867db8e..8eca166 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/AvalancheController.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/AvalancheController.kt
@@ -403,9 +403,11 @@
                     debugRunnableLabelMap.remove(r)
                 }
             }
-            val dropList = listToDrop.joinToString("\n ") { getKey(it) }
-            headsUpManagerLogger.logDroppedHuns(dropList)
         }
+
+        val dropListStr = listToDrop.joinToString("\n ") { getKey(it) }
+        headsUpManagerLogger.logDroppedHuns(dropListStr)
+
         clearNext()
         showNow(headsUpEntryShowing!!, headsUpEntryShowingRunnableList)
     }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpAnimator.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpAnimator.kt
new file mode 100644
index 0000000..f9bd805
--- /dev/null
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpAnimator.kt
@@ -0,0 +1,63 @@
+/*
+ * Copyright (C) 2025 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.systemui.statusbar.notification.headsup
+
+import android.content.Context
+import com.android.systemui.res.R
+
+/**
+ * A class shared between [StackScrollAlgorithm] and [StackStateAnimator] to ensure all heads up
+ * animations use the same animation values.
+ */
+class HeadsUpAnimator(context: Context) {
+    init {
+        NotificationsHunSharedAnimationValues.assertInNewMode()
+    }
+
+    var headsUpAppearHeightBottom: Int = 0
+    var stackTopMargin: Int = 0
+
+    private var headsUpAppearStartAboveScreen = context.fetchHeadsUpAppearStartAboveScreen()
+
+    /**
+     * Returns the Y translation for a heads-up notification animation.
+     *
+     * For an appear animation, the returned Y translation should be the starting value of the
+     * animation. For a disappear animation, the returned Y translation should be the ending value
+     * of the animation.
+     */
+    fun getHeadsUpYTranslation(isHeadsUpFromBottom: Boolean): Int {
+        NotificationsHunSharedAnimationValues.assertInNewMode()
+
+        if (isHeadsUpFromBottom) {
+            // start from or end at the bottom of the screen
+            return headsUpAppearHeightBottom + headsUpAppearStartAboveScreen
+        }
+
+        // start from or end at the top of the screen
+        return -stackTopMargin - headsUpAppearStartAboveScreen
+    }
+
+    /** Should be invoked when resource values may have changed. */
+    fun updateResources(context: Context) {
+        headsUpAppearStartAboveScreen = context.fetchHeadsUpAppearStartAboveScreen()
+    }
+
+    private fun Context.fetchHeadsUpAppearStartAboveScreen(): Int {
+        return this.resources.getDimensionPixelSize(R.dimen.heads_up_appear_y_above_screen)
+    }
+}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpManager.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpManager.kt
index 95234da..9728fcf 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpManager.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpManager.kt
@@ -19,12 +19,16 @@
 import android.graphics.Region
 import com.android.systemui.Dumpable
 import com.android.systemui.dagger.SysUISingleton
+import com.android.systemui.statusbar.notification.collection.EntryAdapter
 import com.android.systemui.statusbar.notification.collection.NotificationEntry
+import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow
 import dagger.Binds
 import dagger.Module
 import java.io.PrintWriter
 import java.util.stream.Stream
 import javax.inject.Inject
+import kotlinx.coroutines.flow.MutableStateFlow
+import kotlinx.coroutines.flow.StateFlow
 
 /**
  * A manager which handles heads up notifications which is a special mode where they simply peek
@@ -110,7 +114,7 @@
      * Returns the value of the tracking-heads-up flag. See the doc of {@code setTrackingHeadsUp} as
      * well.
      */
-    fun isTrackingHeadsUp(): Boolean
+    fun isTrackingHeadsUp(): StateFlow<Boolean>
 
     fun onExpandingFinished()
 
@@ -151,6 +155,12 @@
     fun setAnimationStateHandler(handler: AnimationStateHandler)
 
     /**
+    * Set an entry to be expanded and therefore stick in the heads up area if it's pinned until
+    * it's collapsed again.
+    */
+    fun setExpanded(key: String, row: ExpandableNotificationRow, expanded: Boolean)
+
+    /**
      * Set an entry to be expanded and therefore stick in the heads up area if it's pinned until
      * it's collapsed again.
      */
@@ -284,12 +294,12 @@
 
     override fun isHeadsUpAnimatingAwayValue() = false
 
+    override fun isTrackingHeadsUp(): StateFlow<Boolean> = MutableStateFlow(false)
+
     override fun isSnoozed(packageName: String) = false
 
     override fun isSticky(key: String?) = false
 
-    override fun isTrackingHeadsUp() = false
-
     override fun onExpandingFinished() {}
 
     override fun releaseAllImmediately() {}
@@ -308,6 +318,8 @@
 
     override fun setAnimationStateHandler(handler: AnimationStateHandler) {}
 
+    override fun setExpanded(key: String, row: ExpandableNotificationRow, expanded: Boolean) {}
+
     override fun setExpanded(entry: NotificationEntry, expanded: Boolean) {}
 
     override fun setGutsShown(entry: NotificationEntry, gutsShown: Boolean) {}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpManagerImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpManagerImpl.java
index 87b9bf8..5157e7a 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpManagerImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpManagerImpl.java
@@ -135,6 +135,8 @@
             StateFlowKt.MutableStateFlow(new HashSet<>());
     private final MutableStateFlow<Boolean> mHeadsUpAnimatingAway =
             StateFlowKt.MutableStateFlow(false);
+    private final MutableStateFlow<Boolean> mTrackingHeadsUp =
+            StateFlowKt.MutableStateFlow(false);
     private final HashSet<String> mSwipedOutKeys = new HashSet<>();
     private final HashSet<NotificationEntry> mEntriesToRemoveAfterExpand = new HashSet<>();
     @VisibleForTesting
@@ -142,7 +144,6 @@
             = new ArraySet<>();
 
     private boolean mReleaseOnExpandFinish;
-    private boolean mTrackingHeadsUp;
     private boolean mIsShadeOrQsExpanded;
     private boolean mIsQsExpanded;
     private int mStatusBarState;
@@ -331,7 +332,9 @@
             onEntryAdded(headsUpEntry, requestedPinnedStatus);
             // TODO(b/328390331) move accessibility events to the view layer
             entry.sendAccessibilityEvent(AccessibilityEvent.TYPE_WINDOW_CONTENT_CHANGED);
-            entry.setIsHeadsUpEntry(true);
+            if (!NotificationBundleUi.isEnabled()) {
+                entry.setIsHeadsUpEntry(true);
+            }
 
             updateNotificationInternal(entry.getKey(), requestedPinnedStatus);
             entry.setInterruption();
@@ -417,8 +420,8 @@
     }
 
     @Override
-    public void setTrackingHeadsUp(boolean trackingHeadsUp) {
-        mTrackingHeadsUp = trackingHeadsUp;
+    public void setTrackingHeadsUp(boolean isTrackingHeadsUp) {
+        mTrackingHeadsUp.setValue(isTrackingHeadsUp);
     }
 
     @Override
@@ -510,9 +513,7 @@
                 || !mAvalancheController.getWaitingEntryList().isEmpty();
     }
 
-    /**
-     * @return true if the notification is managed by this manager
-     */
+    @Override
     public boolean isHeadsUpEntry(@NonNull String key) {
         return mHeadsUpEntryMap.containsKey(key) || mAvalancheController.isWaiting(key);
     }
@@ -879,10 +880,8 @@
             ExpandableNotificationRow topRow = topEntry.getRow();
             if (topEntry.rowIsChildInGroup()) {
                 if (NotificationBundleUi.isEnabled()) {
-                    final EntryAdapter adapter = mGroupMembershipManager.getGroupRoot(
-                            topRow.getEntryAdapter());
-                    if (adapter != null) {
-                        topRow = adapter.getRow();
+                    if (topRow.getNotificationParent() != null) {
+                        topRow = topRow.getNotificationParent();
                     }
                 } else {
                     final NotificationEntry groupSummary =
@@ -1066,8 +1065,9 @@
         }
     }
 
+    @NonNull
     @Override
-    public boolean isTrackingHeadsUp() {
+    public StateFlow<Boolean> isTrackingHeadsUp() {
         return mTrackingHeadsUp;
     }
 
@@ -1093,7 +1093,23 @@
      * Set an entry to be expanded and therefore stick in the heads up area if it's pinned
      * until it's collapsed again.
      */
+    @Override
+    public void setExpanded(@NonNull String entryKey, @NonNull ExpandableNotificationRow row,
+            boolean expanded) {
+        NotificationBundleUi.assertInNewMode();
+        HeadsUpEntry headsUpEntry = getHeadsUpEntry(entryKey);
+        if (headsUpEntry != null && row.getPinnedStatus().isPinned()) {
+            headsUpEntry.setExpanded(expanded);
+        }
+    }
+
+    /**
+     * Set an entry to be expanded and therefore stick in the heads up area if it's pinned
+     * until it's collapsed again.
+     */
+    @Override
     public void setExpanded(@NonNull NotificationEntry entry, boolean expanded) {
+        NotificationBundleUi.assertInLegacyMode();
         HeadsUpEntry headsUpEntry = getHeadsUpEntry(entry.getKey());
         if (headsUpEntry != null && entry.isRowPinned()) {
             headsUpEntry.setExpanded(expanded);
@@ -1385,7 +1401,8 @@
                     mPostTime = Math.max(mPostTime, now);
                 }
             };
-            mAvalancheController.update(this, runnable, "updateEntry (updatePostTime)");
+            mAvalancheController.update(this, runnable, "updateEntry reason:"
+                    + reason + " updatePostTime:" + updatePostTime);
 
             if (isSticky()) {
                 cancelAutoRemovalCallbacks("updateEntry (sticky)");
@@ -1659,7 +1676,7 @@
                     mEntriesToRemoveWhenReorderingAllowed.add(entry);
                     mVisualStabilityProvider.addTemporaryReorderingAllowedListener(
                             mOnReorderingAllowedListener);
-                } else if (mTrackingHeadsUp) {
+                } else if (mTrackingHeadsUp.getValue()) {
                     mEntriesToRemoveAfterExpand.add(entry);
                     mLogger.logRemoveEntryAfterExpand(entry);
                 } else if (mVisualStabilityProvider.isReorderingAllowed()
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpTouchHelper.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpTouchHelper.java
index 47e725c..95f07c4 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpTouchHelper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpTouchHelper.java
@@ -141,7 +141,7 @@
                 if (mPickedChild != null && mTouchingHeadsUpView) {
                     // We may swallow this click if the heads up just came in.
                     if (mHeadsUpManager.shouldSwallowClick(
-                            mPickedChild.getEntry().getSbn().getKey())) {
+                            mPickedChild.getKey())) {
                         endMotion();
                         return true;
                     }
@@ -209,7 +209,7 @@
                     if (mPickedChild != null && mTouchingHeadsUpView) {
                         // We may swallow this click if the heads up just came in.
                         if (mHeadsUpManager.shouldSwallowClick(
-                                mPickedChild.getEntry().getSbn().getKey())) {
+                                mPickedChild.getKey())) {
                             endMotion();
                             setTrackingHeadsUp(false);
                             return true;
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpUtil.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpUtil.java
index 40da232..e1cbdac 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpUtil.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/HeadsUpUtil.java
@@ -76,12 +76,7 @@
         }
 
         final ExpandableNotificationRow row = (ExpandableNotificationRow) view;
-        final NotificationEntry entry = row.getEntry();
-        if (entry == null) {
-            return "(null entry)";
-        }
-
-        final String key = entry.getKey();
+        final String key = row.getKey();
         if (key == null) {
             return "(null key)";
         }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/NotificationsHunSharedAnimationValues.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/NotificationsHunSharedAnimationValues.kt
new file mode 100644
index 0000000..ca9d498
--- /dev/null
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/headsup/NotificationsHunSharedAnimationValues.kt
@@ -0,0 +1,61 @@
+/*
+ * Copyright (C) 2025 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.systemui.statusbar.notification.headsup
+
+import com.android.systemui.Flags
+import com.android.systemui.flags.FlagToken
+import com.android.systemui.flags.RefactorFlagUtils
+
+/** Helper for reading or using the notifications hun shared animation values flag state. */
+@Suppress("NOTHING_TO_INLINE")
+object NotificationsHunSharedAnimationValues {
+    /** The aconfig flag name */
+    const val FLAG_NAME = Flags.FLAG_NOTIFICATIONS_HUN_SHARED_ANIMATION_VALUES
+
+    /** A token used for dependency declaration */
+    val token: FlagToken
+        get() = FlagToken(FLAG_NAME, isEnabled)
+
+    /** Is the refactor enabled */
+    @JvmStatic
+    inline val isEnabled
+        get() = Flags.notificationsHunSharedAnimationValues()
+
+    /**
+     * Called to ensure code is only run when the flag is enabled. This protects users from the
+     * unintended behaviors caused by accidentally running new logic, while also crashing on an eng
+     * build to ensure that the refactor author catches issues in testing.
+     */
+    @JvmStatic
+    inline fun isUnexpectedlyInLegacyMode() =
+        RefactorFlagUtils.isUnexpectedlyInLegacyMode(isEnabled, FLAG_NAME)
+
+    /**
+     * Called to ensure code is only run when the flag is enabled. This will throw an exception if
+     * the flag is not enabled to ensure that the refactor author catches issues in testing.
+     * Caution!! Using this check incorrectly will cause crashes in nextfood builds!
+     */
+    @JvmStatic
+    inline fun assertInNewMode() = RefactorFlagUtils.assertInNewMode(isEnabled, FLAG_NAME)
+
+    /**
+     * Called to ensure code is only run when the flag is disabled. This will throw an exception if
+     * the flag is enabled to ensure that the refactor author catches issues in testing.
+     */
+    @JvmStatic
+    inline fun assertInLegacyMode() = RefactorFlagUtils.assertInLegacyMode(isEnabled, FLAG_NAME)
+}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/logging/NotificationLogger.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/logging/NotificationLogger.java
index cc4be57..ec8fbc0 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/logging/NotificationLogger.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/logging/NotificationLogger.java
@@ -45,6 +45,7 @@
 import com.android.systemui.statusbar.notification.collection.NotifPipeline;
 import com.android.systemui.statusbar.notification.collection.NotificationEntry;
 import com.android.systemui.statusbar.notification.collection.notifcollection.NotifCollectionListener;
+import com.android.systemui.statusbar.notification.collection.notifcollection.UpdateSource;
 import com.android.systemui.statusbar.notification.collection.render.NotificationVisibilityProvider;
 import com.android.systemui.statusbar.notification.dagger.NotificationsModule;
 import com.android.systemui.statusbar.notification.shared.NotificationsLiveDataStoreRefactor;
@@ -234,7 +235,7 @@
     private void registerNewPipelineListener() {
         mNotifPipeline.addCollectionListener(new NotifCollectionListener() {
             @Override
-            public void onEntryUpdated(@NonNull NotificationEntry entry, boolean fromSystem) {
+            public void onEntryUpdated(@NonNull NotificationEntry entry, UpdateSource source) {
                 mExpansionStateLogger.onEntryUpdated(entry.getKey());
             }
 
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/logging/NotificationRoundnessLogger.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/logging/NotificationRoundnessLogger.kt
index 0e1f66f..48095cc 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/logging/NotificationRoundnessLogger.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/logging/NotificationRoundnessLogger.kt
@@ -41,7 +41,7 @@
             TAG_ROUNDNESS,
             INFO,
             {
-                str1 = (view as? ExpandableNotificationRow)?.entry?.key
+                str1 = (view as? ExpandableNotificationRow)?.key
                 bool1 = isFirstInSection
                 bool2 = isLastInSection
                 bool3 = topChanged
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ActivatableNotificationView.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ActivatableNotificationView.java
index 4ed9dce..a081ad5 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ActivatableNotificationView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ActivatableNotificationView.java
@@ -129,7 +129,7 @@
 
     private void updateColors() {
         if (notificationRowTransparency()) {
-            mNormalColor = SurfaceEffectColors.surfaceEffect1(getResources());
+            mNormalColor = SurfaceEffectColors.surfaceEffect1(getContext());
         } else {
             mNormalColor = mContext.getColor(
                     com.android.internal.R.color.materialColorSurfaceContainerHigh);
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ChannelEditorDialogController.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ChannelEditorDialogController.kt
index 6bfc9f0..4bd6053 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ChannelEditorDialogController.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ChannelEditorDialogController.kt
@@ -21,7 +21,6 @@
 import android.app.NotificationChannel
 import android.app.NotificationChannel.DEFAULT_CHANNEL_ID
 import android.app.NotificationChannelGroup
-import android.app.NotificationManager.IMPORTANCE_NONE
 import android.app.NotificationManager.Importance
 import android.content.Context
 import android.graphics.Color
@@ -40,7 +39,7 @@
 import com.android.internal.annotations.VisibleForTesting
 import com.android.systemui.res.R
 import com.android.systemui.dagger.SysUISingleton
-import com.android.systemui.shade.ShadeDisplayAware
+import com.android.systemui.shade.domain.interactor.ShadeDialogContextInteractor
 import javax.inject.Inject
 
 private const val TAG = "ChannelDialogController"
@@ -59,9 +58,9 @@
  */
 @SysUISingleton
 class ChannelEditorDialogController @Inject constructor(
-    @ShadeDisplayAware private val context: Context,
+    private val shadeDialogContextInteractor: ShadeDialogContextInteractor,
     private val noMan: INotificationManager,
-    private val dialogBuilder: ChannelEditorDialog.Builder
+    private val dialogBuilder: ChannelEditorDialog.Builder,
 ) {
 
     private var prepared = false
@@ -272,7 +271,7 @@
     }
 
     private fun initDialog() {
-        dialogBuilder.setContext(context)
+        dialogBuilder.setContext(shadeDialogContextInteractor.context)
         dialog = dialogBuilder.build()
 
         dialog.window?.requestFeature(Window.FEATURE_NO_TITLE)
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRow.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRow.java
index 4c74408..179951f 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRow.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRow.java
@@ -270,6 +270,7 @@
     private NotificationContentView[] mLayouts;
     private ExpandableNotificationRowLogger mLogger;
     private String mLoggingKey;
+    private String mKey;
     private NotificationGuts mGuts;
     private NotificationEntry mEntry;
     private EntryAdapter mEntryAdapter;
@@ -299,6 +300,7 @@
     private boolean mIsSystemChildExpanded;
     private PinnedStatus mPinnedStatus = PinnedStatus.NotPinned;
     private boolean mExpandAnimationRunning;
+    private boolean mLaunchAnimationRunning;
     private AboveShelfChangedListener mAboveShelfChangedListener;
     private HeadsUpManager mHeadsUpManager;
     private Consumer<Boolean> mHeadsUpAnimatingAwayListener;
@@ -404,17 +406,25 @@
                 : mGroupMembershipManager.isGroupSummary(mEntry);
         if (!shouldShowPublic() && (!mIsMinimized || isExpanded()) && isGroupRoot) {
             mGroupExpansionChanging = true;
-            final boolean wasExpanded = NotificationBundleUi.isEnabled()
-                    ? mGroupExpansionManager.isGroupExpanded(mEntryAdapter)
-                    : mGroupExpansionManager.isGroupExpanded(mEntry);
-            boolean nowExpanded = NotificationBundleUi.isEnabled()
-                    ? mGroupExpansionManager.toggleGroupExpansion(mEntryAdapter)
-                    : mGroupExpansionManager.toggleGroupExpansion(mEntry);
-            mOnExpandClickListener.onExpandClicked(mEntry, v, nowExpanded);
-            if (shouldLogExpandClickMetric) {
-                mMetricsLogger.action(MetricsEvent.ACTION_NOTIFICATION_GROUP_EXPANDER, nowExpanded);
+            if (NotificationBundleUi.isEnabled()) {
+                final boolean wasExpanded =  mGroupExpansionManager.isGroupExpanded(mEntryAdapter);
+                boolean nowExpanded = mGroupExpansionManager.toggleGroupExpansion(mEntryAdapter);
+                mOnExpandClickListener.onExpandClicked(this, mEntryAdapter, nowExpanded);
+                if (shouldLogExpandClickMetric) {
+                    mMetricsLogger.action(
+                            MetricsEvent.ACTION_NOTIFICATION_GROUP_EXPANDER, nowExpanded);
+                }
+                onExpansionChanged(true /* userAction */, wasExpanded);
+            } else {
+                final boolean wasExpanded = mGroupExpansionManager.isGroupExpanded(mEntry);
+                boolean nowExpanded = mGroupExpansionManager.toggleGroupExpansion(mEntry);
+                mOnExpandClickListener.onExpandClicked(mEntry, v, nowExpanded);
+                if (shouldLogExpandClickMetric) {
+                    mMetricsLogger.action(
+                            MetricsEvent.ACTION_NOTIFICATION_GROUP_EXPANDER, nowExpanded);
+                }
+                onExpansionChanged(true /* userAction */, wasExpanded);
             }
-            onExpansionChanged(true /* userAction */, wasExpanded);
         } else if (mEnableNonGroupedNotificationExpand) {
             if (v.isAccessibilityFocused()) {
                 mPrivateLayout.setFocusOnVisibilityChange();
@@ -435,7 +445,11 @@
             }
 
             notifyHeightChanged(/* needsAnimation= */ true);
-            mOnExpandClickListener.onExpandClicked(mEntry, v, nowExpanded);
+            if (NotificationBundleUi.isEnabled()) {
+                mOnExpandClickListener.onExpandClicked(this, mEntryAdapter, nowExpanded);
+            } else {
+                mOnExpandClickListener.onExpandClicked(mEntry, v, nowExpanded);
+            }
             if (shouldLogExpandClickMetric) {
                 mMetricsLogger.action(MetricsEvent.ACTION_NOTIFICATION_EXPANDER, nowExpanded);
             }
@@ -535,6 +549,14 @@
         return mLoggingKey;
     }
 
+    public String getKey() {
+        if (NotificationBundleUi.isEnabled()) {
+            return mKey;
+        } else {
+            return mEntry.getKey();
+        }
+    }
+
     /**
      * Sets animations running in the layouts of this row, including public, private, and children.
      *
@@ -952,6 +974,7 @@
         } else if (isAboveShelf() != wasAboveShelf) {
             mAboveShelfChangedListener.onAboveShelfStateChanged(!wasAboveShelf);
         }
+        updateBackgroundOpacity();
     }
 
     /**
@@ -1224,7 +1247,7 @@
      */
     public void collectVisibleLocations(Map<String, Integer> locationsMap) {
         if (getVisibility() == View.VISIBLE) {
-            locationsMap.put(getEntry().getKey(), getViewState().location);
+            locationsMap.put(getKey(), getViewState().location);
             if (mChildrenContainer != null) {
                 List<ExpandableNotificationRow> children = mChildrenContainer.getAttachedChildren();
                 for (int i = 0; i < children.size(); i++) {
@@ -1656,10 +1679,15 @@
             view.setBackgroundTintColor(color);
         }
         if (notificationRowTransparency()
-                && (mBackgroundNormal != null)
-                && (mEntry != null)) {
-            mBackgroundNormal.setBgIsColorized(
-                    mEntry.getSbn().getNotification().isColorized());
+                && (mBackgroundNormal != null)) {
+            if (NotificationBundleUi.isEnabled()) {
+                mBackgroundNormal.setBgIsColorized(mEntryAdapter.isColorized());
+            } else {
+                if (mEntry != null) {
+                    mBackgroundNormal.setBgIsColorized(
+                            mEntry.getSbn().getNotification().isColorized());
+                }
+            }
         }
     }
 
@@ -2136,6 +2164,7 @@
             mMenuRow.setAppName(mAppName);
         }
         mLogger = logger;
+        mKey = notificationKey;
         mLoggingKey = logKey(notificationKey);
         mBypassController = bypassController;
         mGroupMembershipManager = groupMembershipManager;
@@ -2182,7 +2211,7 @@
                     R.dimen.notification_min_height);
         }
         mMaxSmallHeightWithSummarization = NotificationUtils.getFontScaledHeight(mContext,
-                com.android.internal.R.dimen.notification_min_height);
+                com.android.internal.R.dimen.notification_collapsed_height_with_summarization);
         mMaxExpandedHeight = NotificationUtils.getFontScaledHeight(mContext,
                 R.dimen.notification_max_height);
         mMaxExpandedHeightForPromotedOngoing = NotificationUtils.getFontScaledHeight(mContext,
@@ -2350,7 +2379,11 @@
             return traceTag;
         }
 
-        return traceTag + "(" + getEntry().getNotificationStyle() + ")";
+        if (NotificationBundleUi.isEnabled()) {
+            return traceTag + "(" + getEntryAdapter().getStyle() + ")";
+        } else {
+            return traceTag + "(" + getEntry().getNotificationStyle() + ")";
+        }
     }
 
     @Override
@@ -2946,7 +2979,9 @@
                 && !mChildrenContainer.showingAsLowPriority()) {
             final boolean wasExpanded = isGroupExpanded();
             if (NotificationBundleUi.isEnabled()) {
-                mGroupExpansionManager.setGroupExpanded(mEntryAdapter, userExpanded);
+                if (mEntryAdapter.isGroupRoot()) {
+                    mGroupExpansionManager.setGroupExpanded(mEntryAdapter, userExpanded);
+                }
             } else {
                 mGroupExpansionManager.setGroupExpanded(mEntry, userExpanded);
             }
@@ -3042,6 +3077,7 @@
                     mChildrenContainer.setOnKeyguard(onKeyguard);
                 }
             }
+            updateBackgroundOpacity();
         }
     }
 
@@ -3416,7 +3452,7 @@
     }
 
     private boolean canEntryBeDismissed() {
-        return mDismissibilityProvider.isDismissable(mEntry);
+        return mDismissibilityProvider.isDismissable(getKey());
     }
 
     /**
@@ -3440,9 +3476,9 @@
     public void makeActionsVisibile() {
         setUserExpanded(true, true);
         if (isChildInGroup()) {
-            if (NotificationBundleUi.isEnabled()) {
-                mGroupExpansionManager.setGroupExpanded(mEntryAdapter, true);
-            } else {
+            if (!NotificationBundleUi.isEnabled()) {
+                // this is only called if row.getParent() instanceof NotificationStackScrollLayout,
+                // so there is never a group to expand
                 mGroupExpansionManager.setGroupExpanded(mEntry, true);
             }
         }
@@ -3671,8 +3707,14 @@
             return true;
         }
         // The colorized background is another layer with which all other elements overlap
-        if (getEntry().getSbn().getNotification().isColorized()) {
-            return true;
+        if (NotificationBundleUi.isEnabled()) {
+            if (mEntryAdapter.isColorized()) {
+                return true;
+            }
+        } else {
+            if (getEntry().getSbn().getNotification().isColorized()) {
+                return true;
+            }
         }
         // Check if the showing layout has a need for overlapping rendering.
         // NOTE: We could check both public and private layouts here, but becuause these states
@@ -3728,7 +3770,7 @@
         if (!ignoreTemporaryStates && mGuts != null && mGuts.isExposed()) {
             return mGuts.getIntrinsicHeight();
         } else if (!ignoreTemporaryStates && canShowHeadsUp() && mIsHeadsUp
-                && mHeadsUpManager.isTrackingHeadsUp()) {
+                && mHeadsUpManager.isTrackingHeadsUp().getValue()) {
             return getPinnedHeadsUpHeight(false /* atLeastMinHeight */);
         } else if (mIsSummaryWithChildren && !isGroupExpanded() && !shouldShowPublic()) {
             return mChildrenContainer.getMinHeight();
@@ -4023,6 +4065,9 @@
 
     public interface OnExpandClickListener {
         void onExpandClicked(NotificationEntry clickedEntry, View clickedView, boolean nowExpanded);
+
+        void onExpandClicked(ExpandableNotificationRow row, EntryAdapter clickedEntry,
+                boolean nowExpanded);
     }
 
     @Override
@@ -4460,4 +4505,30 @@
         }
         mLogger.logRemoveTransientRow(row.getLoggingKey(), mLoggingKey);
     }
+
+    /** Set whether this notification is currently used to animate a launch. */
+    public void setLaunchAnimationRunning(boolean launchAnimationRunning) {
+        if (NotificationBundleUi.isEnabled()) {
+            mLaunchAnimationRunning = launchAnimationRunning;
+        } else {
+            getEntry().setExpandAnimationRunning(launchAnimationRunning);
+        }
+    }
+
+    /** Whether this notification is currently used to animate a launch. */
+    public boolean isLaunchAnimationRunning() {
+        if (NotificationBundleUi.isEnabled()) {
+            return mLaunchAnimationRunning;
+        } else {
+            return getEntry().isExpandAnimationRunning();
+        }
+    }
+
+    private void updateBackgroundOpacity() {
+        if (mBackgroundNormal != null) {
+            // Row background should be opaque when it's displayed as a heads-up notification or
+            // displayed on keyguard.
+            mBackgroundNormal.setForceOpaque(mIsHeadsUp || mOnKeyguard);
+        }
+    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowController.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowController.java
index 07711b6..02e8f49 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowController.java
@@ -127,7 +127,14 @@
                 @Override
                 public void onSettingChanged(Uri setting, int userId, String value) {
                     if (BUBBLES_SETTING_URI.equals(setting)) {
-                        final int viewUserId = mView.getEntry().getSbn().getUserId();
+                        if (NotificationBundleUi.isEnabled()
+                                && mView.getEntryAdapter().getSbn() == null) {
+                            // only valid for notification rows
+                            return;
+                        }
+                        final int viewUserId = NotificationBundleUi.isEnabled()
+                            ? mView.getEntryAdapter().getSbn().getUserId()
+                            : mView.getEntry().getSbn().getUserId();
                         if (viewUserId == UserHandle.USER_ALL || viewUserId == userId) {
                             mView.getPrivateLayout().setBubblesEnabledForUser(
                                     BUBBLES_SETTING_ENABLED_VALUE.equals(value));
@@ -376,8 +383,12 @@
             public void onViewAttachedToWindow(View v) {
                 if (NotificationBundleUi.isEnabled()) {
                     mView.setInitializationTime(mClock.elapsedRealtime());
+                    if (mView.getEntryAdapter().getSbn() != null) {
+                        mSettingsController.addCallback(BUBBLES_SETTING_URI, mSettingsListener);
+                    }
                 } else {
                     mView.getEntry().setInitializationTime(mClock.elapsedRealtime());
+                    mSettingsController.addCallback(BUBBLES_SETTING_URI, mSettingsListener);
                 }
                 mPluginManager.addPluginListener(mView,
                         NotificationMenuRowPlugin.class, false /* Allow multiple */);
@@ -385,7 +396,7 @@
                     mView.setOnKeyguard(mStatusBarStateController.getState() == KEYGUARD);
                     mStatusBarStateController.addCallback(mStatusBarStateListener);
                 }
-                mSettingsController.addCallback(BUBBLES_SETTING_URI, mSettingsListener);
+
             }
 
             @Override
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowDragController.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowDragController.java
index d5551b1..9ae2eb1 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowDragController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowDragController.java
@@ -54,6 +54,7 @@
 import com.android.systemui.statusbar.CommandQueue;
 import com.android.systemui.statusbar.notification.logging.NotificationPanelLogger;
 import com.android.systemui.statusbar.notification.headsup.HeadsUpManager;
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
 
 import javax.inject.Inject;
 
@@ -100,7 +101,15 @@
             enr = (ExpandableNotificationRow) view;
         }
 
-        StatusBarNotification sn = enr.getEntry().getSbn();
+        if (NotificationBundleUi.isEnabled()) {
+            if (!enr.getEntryAdapter().canDragAndDrop()) {
+                return;
+            }
+        }
+
+        StatusBarNotification sn = NotificationBundleUi.isEnabled()
+                ? enr.getEntryAdapter().getSbn()
+                : enr.getEntry().getSbn();
         Notification notification = sn.getNotification();
         final PendingIntent contentIntent = notification.contentIntent != null
                 ? notification.contentIntent
@@ -115,8 +124,7 @@
                  .show();
             return;
         }
-        Bitmap iconBitmap = getBitmapFromDrawable(
-                getPkgIcon(enr.getEntry().getSbn().getPackageName()));
+        Bitmap iconBitmap = getBitmapFromDrawable(getPkgIcon(sn.getPackageName()));
 
         final ImageView snapshot = new ImageView(mContext);
         snapshot.setImageBitmap(iconBitmap);
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/HybridConversationNotificationView.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/HybridConversationNotificationView.java
index 344d0f6..ba80f01 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/HybridConversationNotificationView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/HybridConversationNotificationView.java
@@ -51,6 +51,7 @@
  */
 public class HybridConversationNotificationView extends HybridNotificationView {
 
+    private static final int MAX_SUMMARIZATION_LINES = 2;
     private ImageView mConversationIconView;
     private TextView mConversationSenderName;
     private ViewStub mConversationFacePileStub;
@@ -292,11 +293,14 @@
             @Nullable CharSequence summarization
     ) {
         if (AsyncHybridViewInflation.isUnexpectedlyInLegacyMode()) return;
-        if (summarization != null) {
+        if (!TextUtils.isEmpty(summarization)) {
             mConversationSenderName.setVisibility(GONE);
             titleText = null;
             contentText = summarization;
+            mTextView.setSingleLine(false);
+            mTextView.setMaxLines(MAX_SUMMARIZATION_LINES);
         } else {
+            mTextView.setSingleLine(true);
             if (conversationSenderName == null) {
                 mConversationSenderName.setVisibility(GONE);
             } else {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationBackgroundView.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationBackgroundView.java
index 33c36d8c..4978fa4 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationBackgroundView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationBackgroundView.java
@@ -53,6 +53,7 @@
 public class NotificationBackgroundView extends View implements Dumpable,
         ExpandableNotificationRow.DismissButtonTargetVisibilityListener {
 
+    private static final int MAX_ALPHA = 0xFF;
     private final boolean mDontModifyCorners;
     private Drawable mBackground;
     private int mClipTopAmount;
@@ -74,6 +75,7 @@
     private final ColorStateList mDarkColoredStatefulColors;
     private final int mNormalColor;
     private boolean mBgIsColorized = false;
+    private boolean mForceOpaque = false;
     private final int convexR = 9;
     private final int concaveR = 22;
 
@@ -88,7 +90,7 @@
         mDarkColoredStatefulColors = getResources().getColorStateList(
                 R.color.notification_state_color_dark);
         if (notificationRowTransparency()) {
-            mNormalColor = SurfaceEffectColors.surfaceEffect1(getResources());
+            mNormalColor = SurfaceEffectColors.surfaceEffect1(getContext());
         } else  {
             mNormalColor = mContext.getColor(
                     com.android.internal.R.color.materialColorSurfaceContainerHigh);
@@ -156,6 +158,14 @@
         mBgIsColorized = b;
     }
 
+    /** Sets if the background should be opaque. */
+    public void setForceOpaque(boolean forceOpaque) {
+        mForceOpaque = forceOpaque;
+        if (notificationRowTransparency()) {
+            updateBaseLayerColor();
+        }
+    }
+
     private Path calculateDismissButtonCutoutPath(Rect backgroundBounds) {
         // TODO(b/365585705): Adapt to RTL after the UX design is finalized.
 
@@ -317,11 +327,15 @@
         // Instead, we set a color filter that essentially replaces every pixel of the drawable.
         // For non-colorized notifications, this function specifies a new color token.
         // For colorized notifications, this uses a color that matches the tint color at 90% alpha.
+        int color = isColorized()
+                ? ColorUtils.setAlphaComponent(mTintColor, (int) (MAX_ALPHA * 0.9f))
+                : SurfaceEffectColors.surfaceEffect1(getContext());
+        if (mForceOpaque) {
+            color = ColorUtils.setAlphaComponent(color, MAX_ALPHA);
+        }
         getBaseBackgroundLayer().setColorFilter(
                 new PorterDuffColorFilter(
-                        isColorized()
-                                ? ColorUtils.setAlphaComponent(mTintColor, (int) (255 * 0.9f))
-                                : SurfaceEffectColors.surfaceEffect1(getResources()),
+                        color,
                         PorterDuff.Mode.SRC)); // SRC operator discards the drawable's color+alpha
     }
 
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationContentInflater.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationContentInflater.java
index 4b2b168..daa598b 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationContentInflater.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationContentInflater.java
@@ -56,6 +56,7 @@
 import com.android.systemui.statusbar.notification.ConversationNotificationProcessor;
 import com.android.systemui.statusbar.notification.InflationException;
 import com.android.systemui.statusbar.notification.NmSummarizationUiFlag;
+import com.android.systemui.statusbar.notification.NotificationUtils;
 import com.android.systemui.statusbar.notification.collection.EntryAdapter;
 import com.android.systemui.statusbar.notification.collection.NotificationEntry;
 import com.android.systemui.statusbar.notification.promoted.PromotedNotificationContentExtractor;
@@ -69,6 +70,7 @@
 import com.android.systemui.statusbar.notification.row.ui.viewbinder.SingleLineViewBinder;
 import com.android.systemui.statusbar.notification.row.ui.viewmodel.SingleLineViewModel;
 import com.android.systemui.statusbar.notification.row.wrapper.NotificationViewWrapper;
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
 import com.android.systemui.statusbar.notification.stack.NotificationChildrenContainer;
 import com.android.systemui.statusbar.phone.CentralSurfaces;
 import com.android.systemui.statusbar.policy.InflatedSmartReplyState;
@@ -141,11 +143,11 @@
             // We don't want to reinflate anything for removed notifications. Otherwise views might
             // be readded to the stack, leading to leaks. This may happen with low-priority groups
             // where the removal of already removed children can lead to a reinflation.
-            mLogger.logNotBindingRowWasRemoved(entry);
+            mLogger.logNotBindingRowWasRemoved(row.getLoggingKey());
             return;
         }
 
-        mLogger.logBinding(entry, contentToBind);
+        mLogger.logBinding(row.getLoggingKey(), contentToBind);
 
         StatusBarNotification sbn = entry.getSbn();
 
@@ -283,7 +285,7 @@
             @NonNull ExpandableNotificationRow row) {
         final boolean abortedTask = entry.abortTask();
         if (abortedTask) {
-            mLogger.logCancelBindAbortedTask(entry);
+            mLogger.logCancelBindAbortedTask(row.getLoggingKey());
         }
         return abortedTask;
     }
@@ -293,7 +295,7 @@
             @NonNull NotificationEntry entry,
             @NonNull ExpandableNotificationRow row,
             @InflationFlag int contentToUnbind) {
-        mLogger.logUnbinding(entry, contentToUnbind);
+        mLogger.logUnbinding(row.getLoggingKey(), contentToUnbind);
         int curFlag = 1;
         while (contentToUnbind != 0) {
             if ((contentToUnbind & curFlag) != 0) {
@@ -410,18 +412,19 @@
                 && result.newExpandedView != null;
         boolean inflateHeadsUp = (reInflateFlags & FLAG_CONTENT_VIEW_HEADS_UP) != 0
                 && result.newHeadsUpView != null;
+        String logKey = NotificationUtils.logKey(entry);
         if (inflateContracted || inflateExpanded || inflateHeadsUp) {
-            logger.logAsyncTaskProgress(entry, "inflating contracted smart reply state");
+            logger.logAsyncTaskProgress(logKey, "inflating contracted smart reply state");
             result.inflatedSmartReplyState = inflater.inflateSmartReplyState(entry);
         }
         if (inflateExpanded) {
-            logger.logAsyncTaskProgress(entry, "inflating expanded smart reply state");
+            logger.logAsyncTaskProgress(logKey, "inflating expanded smart reply state");
             result.expandedInflatedSmartReplies = inflater.inflateSmartReplyViewHolder(
                     context, packageContext, entry, previousSmartReplyState,
                     result.inflatedSmartReplyState);
         }
         if (inflateHeadsUp) {
-            logger.logAsyncTaskProgress(entry, "inflating heads up smart reply state");
+            logger.logAsyncTaskProgress(logKey, "inflating heads up smart reply state");
             result.headsUpInflatedSmartReplies = inflater.inflateSmartReplyViewHolder(
                     context, packageContext, entry, previousSmartReplyState,
                     result.inflatedSmartReplyState);
@@ -438,23 +441,21 @@
             NotificationRowContentBinderLogger logger) {
         return TraceUtils.trace("NotificationContentInflater.createRemoteViews", () -> {
             InflationProgress result = new InflationProgress();
-            final NotificationEntry entryForLogging = row.getEntry();
-
             // create an image inflater
             result.mRowImageInflater = RowImageInflater.newInstance(row.mImageModelIndex);
 
             if ((reInflateFlags & FLAG_CONTENT_VIEW_CONTRACTED) != 0) {
-                logger.logAsyncTaskProgress(entryForLogging, "creating contracted remote view");
+                logger.logAsyncTaskProgress(row.getLoggingKey(), "creating contracted remote view");
                 result.newContentView = createContentView(builder, bindParams.isMinimized);
             }
 
             if ((reInflateFlags & FLAG_CONTENT_VIEW_EXPANDED) != 0) {
-                logger.logAsyncTaskProgress(entryForLogging, "creating expanded remote view");
+                logger.logAsyncTaskProgress(row.getLoggingKey(), "creating expanded remote view");
                 result.newExpandedView = createExpandedView(builder, bindParams.isMinimized);
             }
 
             if ((reInflateFlags & FLAG_CONTENT_VIEW_HEADS_UP) != 0) {
-                logger.logAsyncTaskProgress(entryForLogging, "creating heads up remote view");
+                logger.logAsyncTaskProgress(row.getLoggingKey(), "creating heads up remote view");
                 final boolean isHeadsUpCompact = headsUpStyleProvider.shouldApplyCompactStyle();
                 if (isHeadsUpCompact) {
                     result.newHeadsUpView = builder.createCompactHeadsUpContentView();
@@ -464,11 +465,14 @@
             }
 
             if ((reInflateFlags & FLAG_CONTENT_VIEW_PUBLIC) != 0) {
-                logger.logAsyncTaskProgress(entryForLogging, "creating public remote view");
+                logger.logAsyncTaskProgress(row.getLoggingKey(), "creating public remote view");
                 if (LockscreenOtpRedaction.isEnabled()
                         && bindParams.redactionType == REDACTION_TYPE_SENSITIVE_CONTENT) {
                     result.newPublicView = createSensitiveContentMessageNotification(
-                            row.getEntry().getSbn().getNotification(), builder.getStyle(),
+                            NotificationBundleUi.isEnabled()
+                                    ? row.getEntryAdapter().getSbn().getNotification()
+                                    : row.getEntry().getSbn().getNotification(),
+                            builder.getStyle(),
                             systemUiContext, packageContext).createContentView();
                 } else {
                     result.newPublicView = builder.makePublicContentView(bindParams.isMinimized);
@@ -477,13 +481,13 @@
 
             if (AsyncGroupHeaderViewInflation.isEnabled()) {
                 if ((reInflateFlags & FLAG_GROUP_SUMMARY_HEADER) != 0) {
-                    logger.logAsyncTaskProgress(entryForLogging,
+                    logger.logAsyncTaskProgress(row.getLoggingKey(),
                             "creating group summary remote view");
                     result.mNewGroupHeaderView = builder.makeNotificationGroupHeader();
                 }
 
                 if ((reInflateFlags & FLAG_LOW_PRIORITY_GROUP_SUMMARY_HEADER) != 0) {
-                    logger.logAsyncTaskProgress(entryForLogging,
+                    logger.logAsyncTaskProgress(row.getLoggingKey(),
                             "creating low-priority group summary remote view");
                     result.mNewMinimizedGroupHeaderView =
                             builder.makeLowPriorityContentView(true /* useRegularSubtext */);
@@ -577,6 +581,7 @@
             @Nullable InflationCallback callback,
             NotificationRowContentBinderLogger logger) {
         Trace.beginAsyncSection(APPLY_TRACE_METHOD, System.identityHashCode(row));
+        String logKey = NotificationUtils.logKey(entry);
 
         NotificationContentView privateLayout = row.getPrivateLayout();
         NotificationContentView publicLayout = row.getPublicLayout();
@@ -590,7 +595,7 @@
             ApplyCallback applyCallback = new ApplyCallback() {
                 @Override
                 public void setResultView(View v) {
-                    logger.logAsyncTaskProgress(entry, "contracted view applied");
+                    logger.logAsyncTaskProgress(logKey, "contracted view applied");
                     result.inflatedContentView = v;
                 }
 
@@ -599,7 +604,7 @@
                     return result.newContentView;
                 }
             };
-            logger.logAsyncTaskProgress(entry, "applying contracted view");
+            logger.logAsyncTaskProgress(logKey, "applying contracted view");
             applyRemoteView(inflationExecutor, inflateSynchronously, isMinimized, result,
                     reInflateFlags, flag,
                     remoteViewCache, entry, row, isNewView, remoteViewClickHandler, callback,
@@ -618,7 +623,7 @@
                 ApplyCallback applyCallback = new ApplyCallback() {
                     @Override
                     public void setResultView(View v) {
-                        logger.logAsyncTaskProgress(entry, "expanded view applied");
+                        logger.logAsyncTaskProgress(logKey, "expanded view applied");
                         result.inflatedExpandedView = v;
                     }
 
@@ -627,7 +632,7 @@
                         return result.newExpandedView;
                     }
                 };
-                logger.logAsyncTaskProgress(entry, "applying expanded view");
+                logger.logAsyncTaskProgress(logKey, "applying expanded view");
                 applyRemoteView(inflationExecutor, inflateSynchronously, isMinimized, result,
                         reInflateFlags,
                         flag, remoteViewCache, entry, row, isNewView, remoteViewClickHandler,
@@ -646,7 +651,7 @@
                 ApplyCallback applyCallback = new ApplyCallback() {
                     @Override
                     public void setResultView(View v) {
-                        logger.logAsyncTaskProgress(entry, "heads up view applied");
+                        logger.logAsyncTaskProgress(logKey, "heads up view applied");
                         result.inflatedHeadsUpView = v;
                     }
 
@@ -655,7 +660,7 @@
                         return result.newHeadsUpView;
                     }
                 };
-                logger.logAsyncTaskProgress(entry, "applying heads up view");
+                logger.logAsyncTaskProgress(logKey, "applying heads up view");
                 applyRemoteView(inflationExecutor, inflateSynchronously, isMinimized,
                         result, reInflateFlags,
                         flag, remoteViewCache, entry, row, isNewView, remoteViewClickHandler,
@@ -673,7 +678,7 @@
             ApplyCallback applyCallback = new ApplyCallback() {
                 @Override
                 public void setResultView(View v) {
-                    logger.logAsyncTaskProgress(entry, "public view applied");
+                    logger.logAsyncTaskProgress(logKey, "public view applied");
                     result.inflatedPublicView = v;
                 }
 
@@ -682,7 +687,7 @@
                     return result.newPublicView;
                 }
             };
-            logger.logAsyncTaskProgress(entry, "applying public view");
+            logger.logAsyncTaskProgress(logKey, "applying public view");
             applyRemoteView(inflationExecutor, inflateSynchronously, isMinimized,
                     result, reInflateFlags, flag,
                     remoteViewCache, entry, row, isNewView, remoteViewClickHandler, callback,
@@ -702,7 +707,7 @@
                 ApplyCallback applyCallback = new ApplyCallback() {
                     @Override
                     public void setResultView(View v) {
-                        logger.logAsyncTaskProgress(entry, "group header view applied");
+                        logger.logAsyncTaskProgress(logKey, "group header view applied");
                         result.mInflatedGroupHeaderView = (NotificationHeaderView) v;
                     }
 
@@ -711,7 +716,7 @@
                         return result.mNewGroupHeaderView;
                     }
                 };
-                logger.logAsyncTaskProgress(entry, "applying group header view");
+                logger.logAsyncTaskProgress(logKey, "applying group header view");
                 applyRemoteView(inflationExecutor, inflateSynchronously, isMinimized,
                         result, reInflateFlags,
                         /* inflationId = */ FLAG_GROUP_SUMMARY_HEADER,
@@ -731,7 +736,7 @@
                 ApplyCallback applyCallback = new ApplyCallback() {
                     @Override
                     public void setResultView(View v) {
-                        logger.logAsyncTaskProgress(entry,
+                        logger.logAsyncTaskProgress(logKey,
                                 "low-priority group header view applied");
                         result.mInflatedMinimizedGroupHeaderView = (NotificationHeaderView) v;
                     }
@@ -741,7 +746,7 @@
                         return result.mNewMinimizedGroupHeaderView;
                     }
                 };
-                logger.logAsyncTaskProgress(entry, "applying low priority group header view");
+                logger.logAsyncTaskProgress(logKey, "applying low priority group header view");
                 applyRemoteView(inflationExecutor, inflateSynchronously, isMinimized,
                         result, reInflateFlags,
                         /* inflationId = */ FLAG_LOW_PRIORITY_GROUP_SUMMARY_HEADER,
@@ -760,7 +765,7 @@
         CancellationSignal cancellationSignal = new CancellationSignal();
         cancellationSignal.setOnCancelListener(
                 () -> {
-                    logger.logAsyncTaskProgress(entry, "apply cancelled");
+                    logger.logAsyncTaskProgress(logKey, "apply cancelled");
                     Trace.endAsyncSection(APPLY_TRACE_METHOD, System.identityHashCode(row));
                     runningInflations.values().forEach(CancellationSignal::cancel);
                 });
@@ -807,7 +812,7 @@
                     existingWrapper.onReinflated();
                 }
             } catch (Exception e) {
-                handleInflationError(runningInflations, e, row.getEntry(), callback, logger,
+                handleInflationError(runningInflations, e, row, callback, logger,
                         "applying view synchronously");
                 // Add a running inflation to make sure we don't trigger callbacks.
                 // Safe to do because only happens in tests.
@@ -829,7 +834,7 @@
                 String invalidReason = isValidView(v, entry, row.getResources());
                 if (invalidReason != null) {
                     handleInflationError(runningInflations, new InflationException(invalidReason),
-                            row.getEntry(), callback, logger, "applied invalid view");
+                            row, callback, logger, "applied invalid view");
                     runningInflations.remove(inflationId);
                     return;
                 }
@@ -866,7 +871,7 @@
                     onViewApplied(newView);
                 } catch (Exception anotherException) {
                     runningInflations.remove(inflationId);
-                    handleInflationError(runningInflations, e, row.getEntry(),
+                    handleInflationError(runningInflations, e, row,
                             callback, logger, "applying view");
                 }
             }
@@ -962,13 +967,13 @@
 
     private static void handleInflationError(
             HashMap<Integer, CancellationSignal> runningInflations, Exception e,
-            NotificationEntry notification, @Nullable InflationCallback callback,
+            ExpandableNotificationRow row, @Nullable InflationCallback callback,
             NotificationRowContentBinderLogger logger, String logContext) {
         Assert.isMainThread();
-        logger.logAsyncTaskException(notification, logContext, e);
+        logger.logAsyncTaskException(row.getLoggingKey(), logContext, e);
         runningInflations.values().forEach(CancellationSignal::cancel);
         if (callback != null) {
-            callback.handleInflationException(notification, e);
+            callback.handleInflationException(row.getEntry(), e);
         }
     }
 
@@ -989,7 +994,7 @@
         }
         NotificationContentView privateLayout = row.getPrivateLayout();
         NotificationContentView publicLayout = row.getPublicLayout();
-        logger.logAsyncTaskProgress(entry, "finishing");
+        logger.logAsyncTaskProgress(NotificationUtils.logKey(entry), "finishing");
 
         // Put the new image index on the row
         row.mImageModelIndex = result.mRowImageInflater.getNewImageIndex();
@@ -1284,7 +1289,8 @@
                             return doInBackgroundInternal();
                         } catch (Exception e) {
                             mError = e;
-                            mLogger.logAsyncTaskException(mEntry, "inflating", e);
+                            mLogger.logAsyncTaskException(
+                                    NotificationUtils.logKey(mEntry), "inflating", e);
                             return null;
                         }
                     });
@@ -1311,12 +1317,12 @@
             InflationProgress inflationProgress = createRemoteViews(mReInflateFlags,
                     recoveredBuilder, mBindParams, mContext, packageContext, mRow,
                     mNotifLayoutInflaterFactoryProvider, mHeadsUpStyleProvider, mLogger);
-
-            mLogger.logAsyncTaskProgress(mEntry,
+            String logKey = NotificationUtils.logKey(mEntry);
+            mLogger.logAsyncTaskProgress(logKey,
                     "getting existing smart reply state (on wrong thread!)");
             InflatedSmartReplyState previousSmartReplyState =
                     mRow.getExistingSmartReplyState();
-            mLogger.logAsyncTaskProgress(mEntry, "inflating smart reply views");
+            mLogger.logAsyncTaskProgress(logKey, "inflating smart reply views");
             InflationProgress result = inflateSmartReplyViews(
                     /* result = */ inflationProgress,
                     mReInflateFlags,
@@ -1379,26 +1385,26 @@
             }
 
             if (PromotedNotificationContentModel.featureFlagEnabled()) {
-                mLogger.logAsyncTaskProgress(mEntry, "extracting promoted notification content");
+                mLogger.logAsyncTaskProgress(logKey, "extracting promoted notification content");
                 final ImageModelProvider imageModelProvider =
                         result.mRowImageInflater.useForContentModel();
                 final PromotedNotificationContentModel promotedContent =
                         mPromotedNotificationContentExtractor.extractContent(mEntry,
                                 recoveredBuilder, imageModelProvider);
-                mLogger.logAsyncTaskProgress(mEntry, "extracted promoted notification content: "
+                mLogger.logAsyncTaskProgress(logKey, "extracted promoted notification content: "
                         + promotedContent);
 
                 result.mPromotedContent = promotedContent;
             }
 
-            mLogger.logAsyncTaskProgress(mEntry, "loading RON images");
+            mLogger.logAsyncTaskProgress(logKey, "loading RON images");
             inflationProgress.mRowImageInflater.loadImagesSynchronously(packageContext);
 
-            mLogger.logAsyncTaskProgress(mEntry,
+            mLogger.logAsyncTaskProgress(logKey,
                     "getting row image resolver (on wrong thread!)");
             final NotificationInlineImageResolver imageResolver = mRow.getImageResolver();
             // wait for image resolver to finish preloading
-            mLogger.logAsyncTaskProgress(mEntry, "waiting for preloaded images");
+            mLogger.logAsyncTaskProgress(logKey, "waiting for preloaded images");
             imageResolver.waitForPreloadedImages(IMG_PRELOAD_TIMEOUT_MS);
 
             return result;
@@ -1449,13 +1455,14 @@
 
         @Override
         public void abort() {
-            mLogger.logAsyncTaskProgress(mEntry, "cancelling inflate");
+            String logKey = NotificationUtils.logKey(mEntry);
+            mLogger.logAsyncTaskProgress(logKey, "cancelling inflate");
             cancel(true /* mayInterruptIfRunning */);
             if (mCancellationSignal != null) {
-                mLogger.logAsyncTaskProgress(mEntry, "cancelling apply");
+                mLogger.logAsyncTaskProgress(logKey, "cancelling apply");
                 mCancellationSignal.cancel();
             }
-            mLogger.logAsyncTaskProgress(mEntry, "aborted");
+            mLogger.logAsyncTaskProgress(logKey, "aborted");
         }
 
         @Override
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationContentView.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationContentView.java
index 0d29981..1932037 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationContentView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationContentView.java
@@ -64,6 +64,7 @@
 import com.android.systemui.statusbar.notification.row.wrapper.NotificationCustomViewWrapper;
 import com.android.systemui.statusbar.notification.row.wrapper.NotificationHeaderViewWrapper;
 import com.android.systemui.statusbar.notification.row.wrapper.NotificationViewWrapper;
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
 import com.android.systemui.statusbar.phone.ExpandHeadsUpOnInlineReply;
 import com.android.systemui.statusbar.policy.InflatedSmartReplyState;
 import com.android.systemui.statusbar.policy.InflatedSmartReplyViewHolder;
@@ -594,12 +595,11 @@
         if (mContainingNotification == null) {
             return null;
         }
-        final NotificationEntry entry = mContainingNotification.getEntry();
-        if (entry == null) {
-            return null;
+        if (NotificationBundleUi.isEnabled()) {
+            return mContainingNotification.getEntryAdapter().getSbn();
+        } else {
+            return mContainingNotification.getEntry().getSbn();
         }
-
-        return entry.getSbn();
     }
 
     /**
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationMenuRow.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationMenuRow.java
index ab382df..e89a76f 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationMenuRow.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationMenuRow.java
@@ -16,7 +16,7 @@
 
 package com.android.systemui.statusbar.notification.row;
 
-import static android.app.NotificationChannel.SYSTEM_RESERVED_IDS;
+import static android.app.Flags.notificationsRedesignTemplates;
 import static android.view.HapticFeedbackConstants.CLOCK_TICK;
 
 import static com.android.systemui.SwipeHelper.SWIPED_FAR_ENOUGH_SIZE_FRACTION;
@@ -706,8 +706,11 @@
     static NotificationMenuItem createInfoItem(Context context) {
         Resources res = context.getResources();
         String infoDescription = res.getString(R.string.notification_menu_gear_description);
+        int layoutId = notificationsRedesignTemplates()
+                ? R.layout.notification_2025_info
+                : R.layout.notification_info;
         NotificationInfo infoContent = (NotificationInfo) LayoutInflater.from(context).inflate(
-                R.layout.notification_info, null, false);
+                layoutId, null, false);
         return new NotificationMenuItem(context, infoDescription, infoContent,
                 R.drawable.ic_settings);
     }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationRowContentBinderImpl.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationRowContentBinderImpl.kt
index b9a3594..3586078 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationRowContentBinderImpl.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationRowContentBinderImpl.kt
@@ -16,6 +16,7 @@
 package com.android.systemui.statusbar.notification.row
 
 import android.annotation.SuppressLint
+import android.app.Flags
 import android.app.Notification
 import android.app.Notification.EXTRA_SUMMARIZED_CONTENT
 import android.app.Notification.MessagingStyle
@@ -49,9 +50,10 @@
 import com.android.systemui.statusbar.notification.ConversationNotificationProcessor
 import com.android.systemui.statusbar.notification.InflationException
 import com.android.systemui.statusbar.notification.NmSummarizationUiFlag
-import com.android.systemui.statusbar.notification.collection.EntryAdapter
 import com.android.systemui.statusbar.notification.collection.NotificationEntry
+import com.android.systemui.statusbar.notification.logKey
 import com.android.systemui.statusbar.notification.promoted.PromotedNotificationContentExtractor
+import com.android.systemui.statusbar.notification.promoted.PromotedNotificationUiForceExpanded
 import com.android.systemui.statusbar.notification.promoted.shared.model.PromotedNotificationContentModel
 import com.android.systemui.statusbar.notification.row.NotificationContentView.VISIBLE_TYPE_CONTRACTED
 import com.android.systemui.statusbar.notification.row.NotificationContentView.VISIBLE_TYPE_EXPANDED
@@ -125,10 +127,10 @@
             // We don't want to reinflate anything for removed notifications. Otherwise views might
             // be readded to the stack, leading to leaks. This may happen with low-priority groups
             // where the removal of already removed children can lead to a reinflation.
-            logger.logNotBindingRowWasRemoved(entry)
+            logger.logNotBindingRowWasRemoved(row.loggingKey)
             return
         }
-        logger.logBinding(entry, contentToBind)
+        logger.logBinding(row.loggingKey, contentToBind)
         val sbn: StatusBarNotification = entry.sbn
 
         // To check if the notification has inline image and preload inline image if necessary.
@@ -245,7 +247,7 @@
     override fun cancelBind(entry: NotificationEntry, row: ExpandableNotificationRow): Boolean {
         val abortedTask: Boolean = entry.abortTask()
         if (abortedTask) {
-            logger.logCancelBindAbortedTask(entry)
+            logger.logCancelBindAbortedTask(row.loggingKey)
         }
         return abortedTask
     }
@@ -256,7 +258,7 @@
         row: ExpandableNotificationRow,
         @InflationFlag contentToUnbind: Int,
     ) {
-        logger.logUnbinding(entry, contentToUnbind)
+        logger.logUnbinding(row.loggingKey, contentToUnbind)
         var curFlag = 1
         var contentLeftToUnbind = contentToUnbind
         while (contentLeftToUnbind != 0) {
@@ -419,7 +421,7 @@
                 try {
                     return@trace Result.success(doInBackgroundInternal())
                 } catch (e: Exception) {
-                    logger.logAsyncTaskException(entry, "inflating", e)
+                    logger.logAsyncTaskException(entry.logKey, "inflating", e)
                     return@trace Result.failure(e)
                 }
             }
@@ -451,11 +453,11 @@
                     logger = logger,
                 )
             logger.logAsyncTaskProgress(
-                entry,
+                row.loggingKey,
                 "getting existing smart reply state (on wrong thread!)",
             )
             val previousSmartReplyState: InflatedSmartReplyState? = row.existingSmartReplyState
-            logger.logAsyncTaskProgress(entry, "inflating smart reply views")
+            logger.logAsyncTaskProgress(entry.logKey, "inflating smart reply views")
             inflateSmartReplyViews(
                 /* result = */ inflationProgress,
                 reInflateFlags,
@@ -467,7 +469,7 @@
                 logger,
             )
             if (AsyncHybridViewInflation.isEnabled) {
-                logger.logAsyncTaskProgress(entry, "inflating single line view")
+                logger.logAsyncTaskProgress(entry.logKey, "inflating single line view")
                 inflationProgress.inflatedSingleLineView =
                     inflationProgress.contentModel.singleLineViewModel?.let {
                         SingleLineViewInflater.inflatePrivateSingleLineView(
@@ -481,7 +483,7 @@
             }
 
             if (LockscreenOtpRedaction.isEnabled) {
-                logger.logAsyncTaskProgress(entry, "inflating public single line view")
+                logger.logAsyncTaskProgress(entry.logKey, "inflating public single line view")
                 inflationProgress.inflatedPublicSingleLineView =
                     inflationProgress.contentModel.publicSingleLineViewModel?.let { viewModel ->
                         SingleLineViewInflater.inflatePublicSingleLineView(
@@ -494,13 +496,13 @@
                     }
             }
 
-            logger.logAsyncTaskProgress(entry, "loading RON images")
+            logger.logAsyncTaskProgress(entry.logKey, "loading RON images")
             inflationProgress.rowImageInflater.loadImagesSynchronously(packageContext)
 
-            logger.logAsyncTaskProgress(entry, "getting row image resolver (on wrong thread!)")
+            logger.logAsyncTaskProgress(entry.logKey, "getting row image resolver (on wrong thread!)")
             val imageResolver = row.imageResolver
             // wait for image resolver to finish preloading
-            logger.logAsyncTaskProgress(entry, "waiting for preloaded images")
+            logger.logAsyncTaskProgress(entry.logKey, "waiting for preloaded images")
             imageResolver.waitForPreloadedImages(IMG_PRELOAD_TIMEOUT_MS)
             return inflationProgress
         }
@@ -547,13 +549,13 @@
         }
 
         override fun abort() {
-            logger.logAsyncTaskProgress(entry, "cancelling inflate")
+            logger.logAsyncTaskProgress(entry.logKey, "cancelling inflate")
             cancel(/* mayInterruptIfRunning= */ true)
             if (cancellationSignal != null) {
-                logger.logAsyncTaskProgress(entry, "cancelling apply")
+                logger.logAsyncTaskProgress(entry.logKey, "cancelling apply")
                 cancellationSignal!!.cancel()
             }
-            logger.logAsyncTaskProgress(entry, "aborted")
+            logger.logAsyncTaskProgress(entry.logKey, "aborted")
         }
 
         override fun handleInflationException(e: Exception) {
@@ -641,11 +643,11 @@
                 (reInflateFlags and FLAG_CONTENT_VIEW_HEADS_UP != 0 &&
                     result.remoteViews.headsUp != null)
             if (inflateContracted || inflateExpanded || inflateHeadsUp) {
-                logger.logAsyncTaskProgress(entry, "inflating contracted smart reply state")
+                logger.logAsyncTaskProgress(entry.logKey, "inflating contracted smart reply state")
                 result.inflatedSmartReplyState = inflater.inflateSmartReplyState(entry)
             }
             if (inflateExpanded) {
-                logger.logAsyncTaskProgress(entry, "inflating expanded smart reply state")
+                logger.logAsyncTaskProgress(entry.logKey, "inflating expanded smart reply state")
                 result.expandedInflatedSmartReplies =
                     inflater.inflateSmartReplyViewHolder(
                         context,
@@ -656,7 +658,7 @@
                     )
             }
             if (inflateHeadsUp) {
-                logger.logAsyncTaskProgress(entry, "inflating heads up smart reply state")
+                logger.logAsyncTaskProgress(entry.logKey, "inflating heads up smart reply state")
                 result.headsUpInflatedSmartReplies =
                     inflater.inflateSmartReplyViewHolder(
                         context,
@@ -687,13 +689,16 @@
 
             val promotedContent =
                 if (PromotedNotificationContentModel.featureFlagEnabled()) {
-                    logger.logAsyncTaskProgress(entry, "extracting promoted notification content")
+                    logger.logAsyncTaskProgress(
+                        entry.logKey,
+                        "extracting promoted notification content"
+                    )
                     val imageModelProvider = rowImageInflater.useForContentModel()
                     promotedNotificationContentExtractor
                         .extractContent(entry, builder, imageModelProvider)
                         .also {
                             logger.logAsyncTaskProgress(
-                                entry,
+                                entry.logKey,
                                 "extracted promoted notification content: $it",
                             )
                         }
@@ -726,7 +731,7 @@
                     AsyncHybridViewInflation.isEnabled &&
                         reInflateFlags and FLAG_CONTENT_VIEW_SINGLE_LINE != 0
                 ) {
-                    logger.logAsyncTaskProgress(entry, "inflating single line view model")
+                    logger.logAsyncTaskProgress(entry.logKey, "inflating single line view model")
                     SingleLineViewInflater.inflateSingleLineViewModel(
                         notification = entry.sbn.notification,
                         messagingStyle = messagingStyle,
@@ -743,7 +748,10 @@
                     LockscreenOtpRedaction.isEnabled &&
                         reInflateFlags and FLAG_CONTENT_VIEW_PUBLIC_SINGLE_LINE != 0
                 ) {
-                    logger.logAsyncTaskProgress(entry, "inflating public single line view model")
+                    logger.logAsyncTaskProgress(
+                        entry.logKey,
+                        "inflating public single line view model"
+                    )
                     if (bindParams.redactionType == REDACTION_TYPE_SENSITIVE_CONTENT) {
                         SingleLineViewInflater.inflateSingleLineViewModel(
                             notification = entry.sbn.notification,
@@ -834,11 +842,10 @@
             logger: NotificationRowContentBinderLogger,
         ): NewRemoteViews {
             return TraceUtils.trace("NotificationContentInflater.createRemoteViews") {
-                val entryForLogging: NotificationEntry = row.entry
                 val contracted =
                     if (reInflateFlags and FLAG_CONTENT_VIEW_CONTRACTED != 0) {
                         logger.logAsyncTaskProgress(
-                            entryForLogging,
+                            row.loggingKey,
                             "creating contracted remote view",
                         )
                         createContentView(builder, bindParams.isMinimized)
@@ -846,7 +853,7 @@
                 val expanded =
                     if (reInflateFlags and FLAG_CONTENT_VIEW_EXPANDED != 0) {
                         logger.logAsyncTaskProgress(
-                            entryForLogging,
+                            row.loggingKey,
                             "creating expanded remote view",
                         )
                         createExpandedView(builder, bindParams.isMinimized)
@@ -854,7 +861,7 @@
                 val headsUp =
                     if (reInflateFlags and FLAG_CONTENT_VIEW_HEADS_UP != 0) {
                         logger.logAsyncTaskProgress(
-                            entryForLogging,
+                            row.loggingKey,
                             "creating heads up remote view",
                         )
                         val isHeadsUpCompact = headsUpStyleProvider.shouldApplyCompactStyle()
@@ -866,7 +873,10 @@
                     } else null
                 val public =
                     if (reInflateFlags and FLAG_CONTENT_VIEW_PUBLIC != 0) {
-                        logger.logAsyncTaskProgress(entryForLogging, "creating public remote view")
+                        logger.logAsyncTaskProgress(
+                            row.loggingKey,
+                            "creating public remote view"
+                        )
                         if (
                             LockscreenOtpRedaction.isEnabled &&
                                 bindParams.redactionType == REDACTION_TYPE_SENSITIVE_CONTENT
@@ -888,7 +898,7 @@
                             reInflateFlags and FLAG_GROUP_SUMMARY_HEADER != 0
                     ) {
                         logger.logAsyncTaskProgress(
-                            entryForLogging,
+                            row.loggingKey,
                             "creating group summary remote view",
                         )
                         builder.makeNotificationGroupHeader()
@@ -899,7 +909,7 @@
                             reInflateFlags and FLAG_LOW_PRIORITY_GROUP_SUMMARY_HEADER != 0
                     ) {
                         logger.logAsyncTaskProgress(
-                            entryForLogging,
+                            row.loggingKey,
                             "creating low-priority group summary remote view",
                         )
                         builder.makeLowPriorityContentView(true /* useRegularSubtext */)
@@ -971,14 +981,14 @@
                 val applyCallback: ApplyCallback =
                     object : ApplyCallback() {
                         override fun setResultView(v: View) {
-                            logger.logAsyncTaskProgress(entry, "contracted view applied")
+                            logger.logAsyncTaskProgress(entry.logKey, "contracted view applied")
                             result.inflatedContentView = v
                         }
 
                         override val remoteView: RemoteViews
                             get() = result.remoteViews.contracted
                     }
-                logger.logAsyncTaskProgress(entry, "applying contracted view")
+                logger.logAsyncTaskProgress(entry.logKey, "applying contracted view")
                 applyRemoteView(
                     inflationExecutor = inflationExecutor,
                     inflateSynchronously = inflateSynchronously,
@@ -1010,14 +1020,14 @@
                 val applyCallback: ApplyCallback =
                     object : ApplyCallback() {
                         override fun setResultView(v: View) {
-                            logger.logAsyncTaskProgress(entry, "expanded view applied")
+                            logger.logAsyncTaskProgress(entry.logKey, "expanded view applied")
                             result.inflatedExpandedView = v
                         }
 
                         override val remoteView: RemoteViews
                             get() = result.remoteViews.expanded
                     }
-                logger.logAsyncTaskProgress(entry, "applying expanded view")
+                logger.logAsyncTaskProgress(entry.logKey, "applying expanded view")
                 applyRemoteView(
                     inflationExecutor = inflationExecutor,
                     inflateSynchronously = inflateSynchronously,
@@ -1049,14 +1059,14 @@
                 val applyCallback: ApplyCallback =
                     object : ApplyCallback() {
                         override fun setResultView(v: View) {
-                            logger.logAsyncTaskProgress(entry, "heads up view applied")
+                            logger.logAsyncTaskProgress(entry.logKey, "heads up view applied")
                             result.inflatedHeadsUpView = v
                         }
 
                         override val remoteView: RemoteViews
                             get() = result.remoteViews.headsUp
                     }
-                logger.logAsyncTaskProgress(entry, "applying heads up view")
+                logger.logAsyncTaskProgress(entry.logKey, "applying heads up view")
                 applyRemoteView(
                     inflationExecutor = inflationExecutor,
                     inflateSynchronously = inflateSynchronously,
@@ -1088,14 +1098,14 @@
                 val applyCallback: ApplyCallback =
                     object : ApplyCallback() {
                         override fun setResultView(v: View) {
-                            logger.logAsyncTaskProgress(entry, "public view applied")
+                            logger.logAsyncTaskProgress(entry.logKey, "public view applied")
                             result.inflatedPublicView = v
                         }
 
                         override val remoteView: RemoteViews
                             get() = result.remoteViews.public!!
                     }
-                logger.logAsyncTaskProgress(entry, "applying public view")
+                logger.logAsyncTaskProgress(entry.logKey, "applying public view")
                 applyRemoteView(
                     inflationExecutor = inflationExecutor,
                     inflateSynchronously = inflateSynchronously,
@@ -1130,14 +1140,17 @@
                     val applyCallback: ApplyCallback =
                         object : ApplyCallback() {
                             override fun setResultView(v: View) {
-                                logger.logAsyncTaskProgress(entry, "group header view applied")
+                                logger.logAsyncTaskProgress(
+                                    entry.logKey,
+                                    "group header view applied"
+                                )
                                 result.inflatedGroupHeaderView = v as NotificationHeaderView?
                             }
 
                             override val remoteView: RemoteViews
                                 get() = result.remoteViews.normalGroupHeader!!
                         }
-                    logger.logAsyncTaskProgress(entry, "applying group header view")
+                    logger.logAsyncTaskProgress(entry.logKey, "applying group header view")
                     applyRemoteView(
                         inflationExecutor = inflationExecutor,
                         inflateSynchronously = inflateSynchronously,
@@ -1173,7 +1186,7 @@
                         object : ApplyCallback() {
                             override fun setResultView(v: View) {
                                 logger.logAsyncTaskProgress(
-                                    entry,
+                                    entry.logKey,
                                     "low-priority group header view applied",
                                 )
                                 result.inflatedMinimizedGroupHeaderView =
@@ -1183,7 +1196,10 @@
                             override val remoteView: RemoteViews
                                 get() = result.remoteViews.minimizedGroupHeader!!
                         }
-                    logger.logAsyncTaskProgress(entry, "applying low priority group header view")
+                    logger.logAsyncTaskProgress(
+                        entry.logKey,
+                        "applying low priority group header view"
+                    )
                     applyRemoteView(
                         inflationExecutor = inflationExecutor,
                         inflateSynchronously = inflateSynchronously,
@@ -1221,7 +1237,7 @@
             )
             val cancellationSignal = CancellationSignal()
             cancellationSignal.setOnCancelListener {
-                logger.logAsyncTaskProgress(entry, "apply cancelled")
+                logger.logAsyncTaskProgress(entry.logKey, "apply cancelled")
                 Trace.endAsyncSection(APPLY_TRACE_METHOD, System.identityHashCode(row))
                 runningInflations.values.forEach(
                     Consumer { obj: CancellationSignal -> obj.cancel() }
@@ -1278,7 +1294,7 @@
                     handleInflationError(
                         runningInflations,
                         e,
-                        row.entry,
+                        row,
                         callback,
                         logger,
                         "applying view synchronously",
@@ -1303,7 +1319,7 @@
                             handleInflationError(
                                 runningInflations,
                                 InflationException(invalidReason),
-                                row.entry,
+                                row,
                                 callback,
                                 logger,
                                 "applied invalid view",
@@ -1362,7 +1378,7 @@
                             handleInflationError(
                                 runningInflations,
                                 e,
-                                row.entry,
+                                row,
                                 callback,
                                 logger,
                                 "applying view",
@@ -1465,15 +1481,15 @@
         private fun handleInflationError(
             runningInflations: HashMap<Int, CancellationSignal>,
             e: Exception,
-            notification: NotificationEntry,
+            notification: ExpandableNotificationRow?,
             callback: InflationCallback?,
             logger: NotificationRowContentBinderLogger,
             logContext: String,
         ) {
             Assert.isMainThread()
-            logger.logAsyncTaskException(notification, logContext, e)
+            logger.logAsyncTaskException(notification?.loggingKey, logContext, e)
             runningInflations.values.forEach(Consumer { obj: CancellationSignal -> obj.cancel() })
-            callback?.handleInflationException(notification, e)
+            callback?.handleInflationException(notification?.entry, e)
         }
 
         /**
@@ -1496,7 +1512,7 @@
             if (runningInflations.isNotEmpty()) {
                 return false
             }
-            logger.logAsyncTaskProgress(entry, "finishing")
+            logger.logAsyncTaskProgress(row.loggingKey, "finishing")
 
             // Put the new image index on the row
             row.mImageModelIndex = result.rowImageInflater.getNewImageIndex()
@@ -1506,6 +1522,10 @@
                 entry.promotedNotificationContentModel = result.promotedContent
             }
 
+            if (PromotedNotificationUiForceExpanded.isEnabled) {
+                row.setPromotedOngoing(entry.isOngoingPromoted())
+            }
+
             result.inflatedSmartReplyState?.let { row.privateLayout.setInflatedSmartReplyState(it) }
 
             setContentViewsFromRemoteViews(
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationRowContentBinderLogger.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationRowContentBinderLogger.kt
index a32e1d7..e94b2dc 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationRowContentBinderLogger.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationRowContentBinderLogger.kt
@@ -35,66 +35,66 @@
 class NotificationRowContentBinderLogger
 @Inject
 constructor(@NotifInflationLog private val buffer: LogBuffer) {
-    fun logNotBindingRowWasRemoved(entry: NotificationEntry) {
+    fun logNotBindingRowWasRemoved(entry: String) {
         buffer.log(
             TAG,
             LogLevel.INFO,
-            { str1 = entry.logKey },
+            { str1 = entry },
             { "not inflating $str1: row was removed" }
         )
     }
 
-    fun logBinding(entry: NotificationEntry, @InflationFlag flag: Int) {
+    fun logBinding(entry: String, @InflationFlag flag: Int) {
         buffer.log(
             TAG,
             LogLevel.DEBUG,
             {
-                str1 = entry.logKey
+                str1 = entry
                 int1 = flag
             },
             { "binding views ${flagToString(int1)} for $str1" }
         )
     }
 
-    fun logCancelBindAbortedTask(entry: NotificationEntry) {
+    fun logCancelBindAbortedTask(entry: String) {
         buffer.log(
             TAG,
             LogLevel.INFO,
-            { str1 = entry.logKey },
+            { str1 = entry },
             { "aborted task to cancel binding $str1" }
         )
     }
 
-    fun logUnbinding(entry: NotificationEntry, @InflationFlag flag: Int) {
+    fun logUnbinding(entry: String, @InflationFlag flag: Int) {
         buffer.log(
             TAG,
             LogLevel.DEBUG,
             {
-                str1 = entry.logKey
+                str1 = entry
                 int1 = flag
             },
             { "unbinding views ${flagToString(int1)} for $str1" }
         )
     }
 
-    fun logAsyncTaskProgress(entry: NotificationEntry, progress: String) {
+    fun logAsyncTaskProgress(entry: String?, progress: String) {
         buffer.log(
             TAG,
             LogLevel.DEBUG,
             {
-                str1 = entry.logKey
+                str1 = entry
                 str2 = progress
             },
             { "async task for $str1: $str2" }
         )
     }
 
-    fun logAsyncTaskException(entry: NotificationEntry, logContext: String, exception: Throwable) {
+    fun logAsyncTaskException(entry: String?, logContext: String, exception: Throwable) {
         buffer.log(
             TAG,
             LogLevel.DEBUG,
             {
-                str1 = entry.logKey
+                str1 = entry
                 str2 = logContext
                 str3 = exception.stackTraceToString()
             },
@@ -103,7 +103,7 @@
     }
 
     fun logInflateSingleLine(
-        entry: NotificationEntry,
+        entry: String?,
         @InflationFlag inflationFlags: Int,
         isConversation: Boolean
     ) {
@@ -111,7 +111,7 @@
             TAG,
             LogLevel.DEBUG,
             {
-                str1 = entry.logKey
+                str1 = entry
                 int1 = inflationFlags
                 bool1 = isConversation
             },
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/SingleLineViewInflater.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/SingleLineViewInflater.kt
index ea73b4b..e0c1692 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/SingleLineViewInflater.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/SingleLineViewInflater.kt
@@ -417,8 +417,8 @@
     ): HybridNotificationView? {
         if (AsyncHybridViewInflation.isUnexpectedlyInLegacyMode()) return null
 
-        logger.logInflateSingleLine(entry, reinflateFlags, isConversation)
-        logger.logAsyncTaskProgress(entry, "inflating single-line content view")
+        logger.logInflateSingleLine(entry.logKey, reinflateFlags, isConversation)
+        logger.logAsyncTaskProgress(entry.logKey, "inflating single-line content view")
 
         var view: HybridNotificationView? = null
 
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/icon/NotificationRowIconViewInflaterFactory.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/icon/NotificationRowIconViewInflaterFactory.kt
index bb4aa86..4082a5b 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/icon/NotificationRowIconViewInflaterFactory.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/icon/NotificationRowIconViewInflaterFactory.kt
@@ -26,6 +26,7 @@
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow
 import com.android.systemui.statusbar.notification.row.NotifRemoteViewsFactory
 import com.android.systemui.statusbar.notification.row.NotificationRowContentBinder
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi
 import javax.inject.Inject
 
 /**
@@ -60,7 +61,18 @@
         row: ExpandableNotificationRow,
         context: Context,
     ): NotificationIconProvider {
-        val sbn = row.entry.sbn
+        val sbn = if (NotificationBundleUi.isEnabled) row.entryAdapter?.sbn else  row.entry.sbn
+        if (sbn == null) {
+            return object : NotificationIconProvider {
+                override fun shouldShowAppIcon(): Boolean {
+                    return false
+                }
+
+                override fun getAppIcon(): Drawable? {
+                    return null
+                }
+            }
+        }
         return object : NotificationIconProvider {
             override fun shouldShowAppIcon(): Boolean {
                 val shouldShowAppIcon = iconStyleProvider.shouldShowAppIcon(sbn, context)
@@ -68,7 +80,7 @@
                 return shouldShowAppIcon
             }
 
-            override fun getAppIcon(): Drawable {
+            override fun getAppIcon(): Drawable? {
                 val withWorkProfileBadge =
                     iconStyleProvider.shouldShowWorkProfileBadge(sbn, context)
                 return appIconProvider.getOrFetchAppIcon(
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationBigPictureTemplateViewWrapper.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationBigPictureTemplateViewWrapper.java
index 990adf7..f492b25 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationBigPictureTemplateViewWrapper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationBigPictureTemplateViewWrapper.java
@@ -30,6 +30,7 @@
 import com.android.systemui.statusbar.notification.ImageTransformState;
 import com.android.systemui.statusbar.notification.row.BigPictureIconManager;
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
 
 /**
  * Wraps a notification containing a big picture template
@@ -47,7 +48,9 @@
     public void onContentUpdated(ExpandableNotificationRow row) {
         super.onContentUpdated(row);
         resolveViews();
-        updateImageTag(row.getEntry().getSbn());
+        updateImageTag(NotificationBundleUi.isEnabled()
+                ? row.getEntryAdapter().getSbn()
+                : row.getEntry().getSbn());
     }
 
     private void resolveViews() {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationBigTextTemplateViewWrapper.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationBigTextTemplateViewWrapper.java
index d58c183..dec674c 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationBigTextTemplateViewWrapper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationBigTextTemplateViewWrapper.java
@@ -23,6 +23,7 @@
 import com.android.internal.widget.ImageFloatingTextView;
 import com.android.systemui.statusbar.TransformableView;
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
 
 /**
  * Wraps a notification containing a big text template
@@ -44,7 +45,9 @@
     public void onContentUpdated(ExpandableNotificationRow row) {
         // Reinspect the notification. Before the super call, because the super call also updates
         // the transformation types and we need to have our values set by then.
-        resolveViews(row.getEntry().getSbn());
+        resolveViews(NotificationBundleUi.isEnabled()
+                ? row.getEntryAdapter().getSbn()
+                : row.getEntry().getSbn());
         super.onContentUpdated(row);
     }
 
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationHeaderViewWrapper.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationHeaderViewWrapper.java
index e9eecdd8..585051a 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationHeaderViewWrapper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationHeaderViewWrapper.java
@@ -52,6 +52,7 @@
 import com.android.systemui.statusbar.notification.TransformState;
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
 import com.android.systemui.statusbar.notification.shared.NotificationAddXOnHoverToDismiss;
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
 
 import java.util.Stack;
 
@@ -222,7 +223,9 @@
     @Override
     public void onContentUpdated(ExpandableNotificationRow row) {
         super.onContentUpdated(row);
-        mIsLowPriority = row.getEntry().isAmbient();
+        mIsLowPriority = NotificationBundleUi.isEnabled()
+                ? row.getEntryAdapter().isAmbient()
+                : row.getEntry().isAmbient();
         mTransformLowPriorityTitle = !row.isChildInGroup() && !row.isSummaryWithChildren();
         ArraySet<View> previousViews = mTransformationHelper.getAllTransformingViews();
 
@@ -231,7 +234,9 @@
         updateTransformedTypes();
         addRemainingTransformTypes();
         updateCropToPaddingForImageViews();
-        Notification n = row.getEntry().getSbn().getNotification();
+        Notification n = NotificationBundleUi.isEnabled()
+                ? row.getEntryAdapter().getSbn().getNotification()
+                : row.getEntry().getSbn().getNotification();
         mIcon.setTag(ImageTransformState.ICON_TAG, n.getSmallIcon());
 
         // We need to reset all views that are no longer transforming in case a view was previously
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationTemplateViewWrapper.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationTemplateViewWrapper.java
index b9aa571..4146a94 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationTemplateViewWrapper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationTemplateViewWrapper.java
@@ -54,6 +54,7 @@
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
 import com.android.systemui.statusbar.notification.row.HybridNotificationView;
 import com.android.systemui.util.DimensionKt;
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
 
 import java.util.function.Consumer;
 
@@ -310,7 +311,9 @@
     public void onContentUpdated(ExpandableNotificationRow row) {
         // Reinspect the notification. Before the super call, because the super call also updates
         // the transformation types and we need to have our values set by then.
-        resolveTemplateViews(row.getEntry().getSbn());
+        resolveTemplateViews(NotificationBundleUi.isEnabled()
+                ? row.getEntryAdapter().getSbn()
+                : row.getEntry().getSbn());
         super.onContentUpdated(row);
         // With the modern templates, a large icon visually overlaps the header, so we can't
         // hide the header, we must show it.
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationViewWrapper.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationViewWrapper.java
index 752a8ab..64babb2 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationViewWrapper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationViewWrapper.java
@@ -44,6 +44,7 @@
 import com.android.systemui.statusbar.notification.NotificationFadeAware;
 import com.android.systemui.statusbar.notification.TransformState;
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
 
 /**
  * Wraps the actual notification content view; used to implement behaviors which are different for
@@ -79,7 +80,10 @@
                 return new NotificationProgressTemplateViewWrapper(ctx, v, row);
             }
 
-            if (row.getEntry().getSbn().getNotification().isStyle(
+            if (NotificationBundleUi.isEnabled()
+                    ? row.getEntryAdapter().getSbn().getNotification().isStyle(
+                    Notification.DecoratedCustomViewStyle.class)
+                    : row.getEntry().getSbn().getNotification().isStyle(
                     Notification.DecoratedCustomViewStyle.class)) {
                 return new NotificationDecoratedCustomViewWrapper(ctx, v, row);
             }
@@ -135,7 +139,10 @@
         }
 
         // Apps targeting Q should fix their dark mode bugs.
-        if (mRow.getEntry().targetSdk >= Build.VERSION_CODES.Q) {
+        int targetSdk = NotificationBundleUi.isEnabled()
+                ? mRow.getEntryAdapter().getTargetSdk()
+                : mRow.getEntry().targetSdk;
+        if (targetSdk >= Build.VERSION_CODES.Q) {
             return false;
         }
 
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/AmbientState.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/AmbientState.java
index 64ca815..1e24952 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/AmbientState.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/AmbientState.java
@@ -35,8 +35,10 @@
 import com.android.systemui.statusbar.NotificationShelf;
 import com.android.systemui.statusbar.StatusBarState;
 import com.android.systemui.statusbar.notification.collection.NotificationEntry;
+import com.android.systemui.statusbar.notification.data.repository.HeadsUpRepository;
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
 import com.android.systemui.statusbar.notification.row.ExpandableView;
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
 import com.android.systemui.statusbar.notification.stack.StackScrollAlgorithm.BypassController;
 import com.android.systemui.statusbar.notification.stack.StackScrollAlgorithm.SectionProvider;
 import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager;
@@ -60,6 +62,7 @@
     private final BypassController mBypassController;
     private final LargeScreenShadeInterpolator mLargeScreenShadeInterpolator;
     private final AvalancheController mAvalancheController;
+    private final HeadsUpRepository mHeadsUpRepository;
 
     /**
      *  Used to read bouncer states.
@@ -304,6 +307,7 @@
             @NonNull BypassController bypassController,
             @Nullable StatusBarKeyguardViewManager statusBarKeyguardViewManager,
             @NonNull LargeScreenShadeInterpolator largeScreenShadeInterpolator,
+            @NonNull HeadsUpRepository headsUpRepository,
             AvalancheController avalancheController
     ) {
         mSectionProvider = sectionProvider;
@@ -311,6 +315,7 @@
         mStatusBarKeyguardViewManager = statusBarKeyguardViewManager;
         mLargeScreenShadeInterpolator = largeScreenShadeInterpolator;
         mAvalancheController = avalancheController;
+        mHeadsUpRepository = headsUpRepository;
         reload(context);
         dumpManager.registerDumpable(this);
     }
@@ -690,7 +695,10 @@
     }
 
     public boolean isPulsing(NotificationEntry entry) {
-        return mPulsing && entry.isHeadsUpEntry();
+        boolean isHeadsUp = NotificationBundleUi.isEnabled()
+                ? mHeadsUpRepository.isHeadsUpEntry(entry.getKey())
+                : entry.isHeadsUpEntry();
+        return mPulsing && isHeadsUp;
     }
 
     public void setPulsingRow(ExpandableNotificationRow row) {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/MagneticNotificationRowManager.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/MagneticNotificationRowManager.kt
index 02336e4..aa69517 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/MagneticNotificationRowManager.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/MagneticNotificationRowManager.kt
@@ -87,6 +87,9 @@
      */
     fun onMagneticInteractionEnd(row: ExpandableNotificationRow, velocity: Float? = null)
 
+    /* Reset any roundness that magnetic targets may have */
+    fun resetRoundness()
+
     /**
      * Reset any magnetic and roundable targets set, as well as any internal state.
      *
@@ -124,6 +127,8 @@
                         velocity: Float?,
                     ) {}
 
+                    override fun resetRoundness() {}
+
                     override fun reset() {}
                 }
     }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/MagneticNotificationRowManagerImpl.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/MagneticNotificationRowManagerImpl.kt
index de4af37..9bd5a5b 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/MagneticNotificationRowManagerImpl.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/MagneticNotificationRowManagerImpl.kt
@@ -27,6 +27,7 @@
 import javax.inject.Inject
 import kotlin.math.abs
 import kotlin.math.pow
+import org.jetbrains.annotations.TestOnly
 
 @SysUISingleton
 class MagneticNotificationRowManagerImpl
@@ -41,15 +42,16 @@
     var currentState = State.IDLE
         private set
 
-    // Magnetic and roundable targets
+    // Magnetic targets
     var currentMagneticListeners = listOf<MagneticRowListener?>()
         private set
 
-    var currentRoundableTargets: RoundableTargets? = null
-        private set
-
     private var magneticDetachThreshold = Float.POSITIVE_INFINITY
 
+    // Has the roundable target been set for the magnetic view that is being swiped.
+    val isSwipedViewRoundableSet: Boolean
+        @TestOnly get() = notificationRoundnessManager.isSwipedViewSet
+
     // Animation spring forces
     private val detachForce =
         SpringForce().setStiffness(DETACH_STIFFNESS).setDampingRatio(DETACH_DAMPING_RATIO)
@@ -83,12 +85,14 @@
         sectionsManager: NotificationSectionsManager,
     ) {
         // Update roundable targets
-        currentRoundableTargets =
+        notificationRoundnessManager.clear()
+        val currentRoundableTargets =
             notificationTargetsHelper.findRoundableTargets(
                 expandableNotificationRow,
                 stackScrollLayout,
                 sectionsManager,
             )
+        notificationRoundnessManager.setRoundableTargets(currentRoundableTargets)
 
         // Update magnetic targets
         val newListeners =
@@ -127,6 +131,7 @@
                 currentState = State.PULLING
             }
             State.PULLING -> {
+                updateRoundness(translation)
                 if (canTargetBeDismissed) {
                     pullDismissibleRow(translation)
                 } else {
@@ -141,6 +146,14 @@
         return true
     }
 
+    private fun updateRoundness(translation: Float) {
+        val normalizedTranslation = abs(swipedRowMultiplier * translation) / magneticDetachThreshold
+        notificationRoundnessManager.setRoundnessForAffectedViews(
+            /* roundness */ normalizedTranslation.coerceIn(0f, MAX_PRE_DETACH_ROUNDNESS),
+            /* animate */ false,
+        )
+    }
+
     private fun pullDismissibleRow(translation: Float) {
         val targetTranslation = swipedRowMultiplier * translation
         val crossedThreshold = abs(targetTranslation) >= magneticDetachThreshold
@@ -203,9 +216,10 @@
     private fun detach(listener: MagneticRowListener, toPosition: Float) {
         listener.cancelMagneticAnimations()
         listener.triggerMagneticForce(toPosition, detachForce)
-        currentRoundableTargets?.let {
-            notificationRoundnessManager.setViewsAffectedBySwipe(it.before, it.swiped, it.after)
-        }
+        notificationRoundnessManager.setRoundnessForAffectedViews(
+            /* roundness */ 1f,
+            /* animate */ true,
+        )
         msdlPlayer.playToken(MSDLToken.SWIPE_THRESHOLD_INDICATOR)
     }
 
@@ -240,6 +254,8 @@
         }
     }
 
+    override fun resetRoundness() = notificationRoundnessManager.clear()
+
     override fun reset() {
         currentMagneticListeners.forEach {
             it?.cancelMagneticAnimations()
@@ -247,7 +263,7 @@
         }
         currentState = State.IDLE
         currentMagneticListeners = listOf()
-        currentRoundableTargets = null
+        notificationRoundnessManager.clear()
     }
 
     private fun List<MagneticRowListener?>.swipedListener(): MagneticRowListener? =
@@ -256,6 +272,11 @@
     private fun ExpandableNotificationRow.isSwipedTarget(): Boolean =
         magneticRowListener == currentMagneticListeners.swipedListener()
 
+    private fun NotificationRoundnessManager.clear() = setViewsAffectedBySwipe(null, null, null)
+
+    private fun NotificationRoundnessManager.setRoundableTargets(targets: RoundableTargets) =
+        setViewsAffectedBySwipe(targets.before, targets.swiped, targets.after)
+
     enum class State {
         IDLE,
         TARGETS_SET,
@@ -270,7 +291,7 @@
          * currently being swiped. From the center outwards, the multipliers apply to the neighbors
          * of the swiped view.
          */
-        private val MAGNETIC_TRANSLATION_MULTIPLIERS = listOf(0.18f, 0.28f, 0.5f, 0.28f, 0.18f)
+        private val MAGNETIC_TRANSLATION_MULTIPLIERS = listOf(0.04f, 0.12f, 0.5f, 0.12f, 0.04f)
 
         const val MAGNETIC_REDUCTION = 0.65f
 
@@ -278,7 +299,10 @@
         private const val DETACH_STIFFNESS = 800f
         private const val DETACH_DAMPING_RATIO = 0.95f
         private const val SNAP_BACK_STIFFNESS = 550f
-        private const val SNAP_BACK_DAMPING_RATIO = 0.52f
+        private const val SNAP_BACK_DAMPING_RATIO = 0.6f
+
+        // Maximum value of corner roundness that gets applied during the pre-detach dragging
+        private const val MAX_PRE_DETACH_ROUNDNESS = 0.8f
 
         private val VIBRATION_ATTRIBUTES_PIPELINING =
             VibrationAttributes.Builder()
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationChildrenContainer.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationChildrenContainer.java
index 1d18535..e830d18 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationChildrenContainer.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationChildrenContainer.java
@@ -60,6 +60,7 @@
 import com.android.systemui.statusbar.notification.row.shared.AsyncHybridViewInflation;
 import com.android.systemui.statusbar.notification.row.wrapper.NotificationHeaderViewWrapper;
 import com.android.systemui.statusbar.notification.row.wrapper.NotificationViewWrapper;
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -421,7 +422,12 @@
         Trace.beginSection("NotifChildCont#recreateHeader");
         mHeaderClickListener = listener;
         mIsConversation = isConversation;
-        StatusBarNotification notification = mContainingNotification.getEntry().getSbn();
+        StatusBarNotification notification = NotificationBundleUi.isEnabled()
+                ? mContainingNotification.getEntryAdapter().getSbn()
+                : mContainingNotification.getEntry().getSbn();
+        if (notification == null) {
+            return;
+        }
         final Notification.Builder builder = Notification.Builder.recoverBuilder(getContext(),
                 notification.getNotification());
         Trace.beginSection("recreateHeader#makeNotificationGroupHeader");
@@ -565,7 +571,12 @@
     void recreateLowPriorityHeader(Notification.Builder builder) {
         AsyncGroupHeaderViewInflation.assertInLegacyMode();
         RemoteViews header;
-        StatusBarNotification notification = mContainingNotification.getEntry().getSbn();
+        StatusBarNotification notification = NotificationBundleUi.isEnabled()
+                ? mContainingNotification.getEntryAdapter().getSbn()
+                : mContainingNotification.getEntry().getSbn();
+        if (notification == null) {
+            return;
+        }
         if (mIsMinimized) {
             if (builder == null) {
                 builder = Notification.Builder.recoverBuilder(getContext(),
@@ -1458,7 +1469,7 @@
                 if (AsyncHybridViewInflation.isEnabled()) {
                     minExpandHeight += mMinSingleLineHeight;
                 } else {
-                    Log.e(TAG, "getMinHeight: child " + child.getEntry().getKey()
+                    Log.e(TAG, "getMinHeight: child " + child.getKey()
                             + " single line view is null", new Exception());
                 }
             }
@@ -1688,8 +1699,8 @@
     public void addTransientView(View view, int index) {
         if (mLogger != null && view instanceof ExpandableNotificationRow) {
             mLogger.addTransientRow(
-                    ((ExpandableNotificationRow) view).getEntry(),
-                    getContainingNotification().getEntry(),
+                    ((ExpandableNotificationRow) view).getLoggingKey(),
+                    getContainingNotification().getLoggingKey(),
                     index
             );
         }
@@ -1700,8 +1711,8 @@
     public void removeTransientView(View view) {
         if (mLogger != null && view instanceof ExpandableNotificationRow) {
             mLogger.removeTransientRow(
-                    ((ExpandableNotificationRow) view).getEntry(),
-                    getContainingNotification().getEntry()
+                    ((ExpandableNotificationRow) view).getLoggingKey(),
+                    getContainingNotification().getLoggingKey()
             );
         }
         super.removeTransientView(view);
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationChildrenContainerLogger.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationChildrenContainerLogger.kt
index 4986b63..d8da412 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationChildrenContainerLogger.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationChildrenContainerLogger.kt
@@ -27,16 +27,16 @@
 @Inject
 constructor(@NotificationRenderLog private val notificationRenderBuffer: LogBuffer) {
     fun addTransientRow(
-        childEntry: NotificationEntry,
-        containerEntry: NotificationEntry,
+        childEntry: String,
+        containerEntry: String,
         index: Int
     ) {
         notificationRenderBuffer.log(
             TAG,
             LogLevel.INFO,
             {
-                str1 = childEntry.logKey
-                str2 = containerEntry.logKey
+                str1 = childEntry
+                str2 = containerEntry
                 int1 = index
             },
             { "addTransientRow: childKey: $str1 -- containerKey: $str2 -- index: $int1" }
@@ -44,15 +44,15 @@
     }
 
     fun removeTransientRow(
-        childEntry: NotificationEntry,
-        containerEntry: NotificationEntry,
+        childEntry: String,
+        containerEntry: String,
     ) {
         notificationRenderBuffer.log(
             TAG,
             LogLevel.INFO,
             {
-                str1 = childEntry.logKey
-                str2 = containerEntry.logKey
+                str1 = childEntry
+                str2 = containerEntry
             },
             { "removeTransientRow: childKey: $str1 -- containerKey: $str2" }
         )
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationListContainer.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationListContainer.java
index f85545e..47fc2fb 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationListContainer.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationListContainer.java
@@ -113,10 +113,9 @@
     /**
      * Get the view parent for a notification entry. For example, NotificationStackScrollLayout.
      *
-     * @param entry entry to get the view parent for
      * @return the view parent for entry
      */
-    ViewGroup getViewParentForNotification(NotificationEntry entry);
+    ViewGroup getViewParentForNotification();
 
     /**
      * Resets the currently exposed menu view.
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationRoundnessManager.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationRoundnessManager.java
index fa1843e..a53e837 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationRoundnessManager.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationRoundnessManager.java
@@ -71,10 +71,8 @@
             Roundable viewBefore,
             ExpandableView viewSwiped,
             Roundable viewAfter) {
-        // This method requires you to change the roundness of the current View targets and reset
-        // the roundness of the old View targets (if any) to 0f.
-        // To avoid conflicts, it generates a set of old Views and removes the current Views
-        // from this set.
+        // This method caches a new set of current View targets and reset the roundness of the old
+        // View targets (if any) to 0f.
         HashSet<Roundable> oldViews = new HashSet<>();
         if (mViewBeforeSwipedView != null) oldViews.add(mViewBeforeSwipedView);
         if (mSwipedView != null) oldViews.add(mSwipedView);
@@ -83,19 +81,16 @@
         mViewBeforeSwipedView = viewBefore;
         if (viewBefore != null) {
             oldViews.remove(viewBefore);
-            viewBefore.requestRoundness(/* top = */ 0f, /* bottom = */ 1f, DISMISS_ANIMATION);
         }
 
         mSwipedView = viewSwiped;
         if (viewSwiped != null) {
             oldViews.remove(viewSwiped);
-            viewSwiped.requestRoundness(/* top = */ 1f, /* bottom = */ 1f, DISMISS_ANIMATION);
         }
 
         mViewAfterSwipedView = viewAfter;
         if (viewAfter != null) {
             oldViews.remove(viewAfter);
-            viewAfter.requestRoundness(/* top = */ 1f, /* bottom = */ 0f, DISMISS_ANIMATION);
         }
 
         // After setting the current Views, reset the views that are still present in the set.
@@ -104,6 +99,34 @@
         }
     }
 
+    void setRoundnessForAffectedViews(float roundness) {
+        if (mViewBeforeSwipedView != null) {
+            mViewBeforeSwipedView.requestBottomRoundness(roundness, DISMISS_ANIMATION);
+        }
+
+        if (mSwipedView != null) {
+            mSwipedView.requestRoundness(roundness, roundness, DISMISS_ANIMATION);
+        }
+
+        if (mViewAfterSwipedView != null) {
+            mViewAfterSwipedView.requestTopRoundness(roundness, DISMISS_ANIMATION);
+        }
+    }
+
+    void setRoundnessForAffectedViews(float roundness, boolean animate) {
+        if (mViewBeforeSwipedView != null) {
+            mViewBeforeSwipedView.requestBottomRoundness(roundness, DISMISS_ANIMATION, animate);
+        }
+
+        if (mSwipedView != null) {
+            mSwipedView.requestRoundness(roundness, roundness, DISMISS_ANIMATION, animate);
+        }
+
+        if (mViewAfterSwipedView != null) {
+            mViewAfterSwipedView.requestTopRoundness(roundness, DISMISS_ANIMATION, animate);
+        }
+    }
+
     void setClearAllInProgress(boolean isClearingAll) {
         mIsClearAllInProgress = isClearingAll;
     }
@@ -138,4 +161,8 @@
     public void setShouldRoundPulsingViews(boolean shouldRoundPulsingViews) {
         mRoundForPulsingViews = shouldRoundPulsingViews;
     }
+
+    public boolean isSwipedViewSet() {
+        return mSwipedView != null;
+    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationSectionsManager.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationSectionsManager.kt
index 043d64e..96f0e6f 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationSectionsManager.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationSectionsManager.kt
@@ -35,6 +35,7 @@
 import com.android.systemui.statusbar.notification.dagger.SocialHeader
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow
 import com.android.systemui.statusbar.notification.row.ExpandableView
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi
 import com.android.systemui.statusbar.notification.stack.PriorityBucket
 import com.android.systemui.statusbar.notification.stack.StackScrollAlgorithm.SectionProvider
 import com.android.systemui.statusbar.policy.ConfigurationController
@@ -164,7 +165,9 @@
             view === socialHeaderView -> BUCKET_SOCIAL
             view === recsHeaderView -> BUCKET_RECS
             view === promoHeaderView -> BUCKET_PROMO
-            view is ExpandableNotificationRow -> view.entry.bucket
+            view is ExpandableNotificationRow ->
+                if (NotificationBundleUi.isEnabled) view.entryAdapter?.sectionBucket
+                else view.entry.bucket
             else -> null
         }
 
@@ -278,13 +281,13 @@
             val fs =
                 when (val first = s.firstVisibleChild) {
                     null -> "(null)"
-                    is ExpandableNotificationRow -> first.entry.key
+                    is ExpandableNotificationRow -> first.loggingKey
                     else -> Integer.toHexString(System.identityHashCode(first))
                 }
             val ls =
                 when (val last = s.lastVisibleChild) {
                     null -> "(null)"
-                    is ExpandableNotificationRow -> last.entry.key
+                    is ExpandableNotificationRow -> last.loggingKey
                     else -> Integer.toHexString(System.identityHashCode(last))
                 }
             Log.d(TAG, "updateSections: f=$fs s=$i")
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java
index 3ff18ef..4390f1b 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java
@@ -117,8 +117,10 @@
 import com.android.systemui.statusbar.notification.emptyshade.shared.ModesEmptyShadeFix;
 import com.android.systemui.statusbar.notification.emptyshade.ui.view.EmptyShadeView;
 import com.android.systemui.statusbar.notification.footer.ui.view.FooterView;
+import com.android.systemui.statusbar.notification.headsup.HeadsUpAnimator;
 import com.android.systemui.statusbar.notification.headsup.HeadsUpTouchHelper;
 import com.android.systemui.statusbar.notification.headsup.HeadsUpUtil;
+import com.android.systemui.statusbar.notification.headsup.NotificationsHunSharedAnimationValues;
 import com.android.systemui.statusbar.notification.logging.NotificationLogger;
 import com.android.systemui.statusbar.notification.row.ActivatableNotificationView;
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
@@ -233,6 +235,8 @@
     private String mLastInitViewDumpString;
     private long mLastInitViewElapsedRealtime;
 
+    @Nullable
+    private final HeadsUpAnimator mHeadsUpAnimator;
     /**
      * The algorithm which calculates the properties for our children
      */
@@ -668,8 +672,13 @@
         mExpandHelper.setEventSource(this);
         mExpandHelper.setScrollAdapter(mScrollAdapter);
 
-        mStackScrollAlgorithm = createStackScrollAlgorithm(context);
-        mStateAnimator = new StackStateAnimator(context, this);
+        if (NotificationsHunSharedAnimationValues.isEnabled()) {
+            mHeadsUpAnimator = new HeadsUpAnimator(context);
+        } else {
+            mHeadsUpAnimator = null;
+        }
+        mStackScrollAlgorithm =  new StackScrollAlgorithm(context, this, mHeadsUpAnimator);
+        mStateAnimator = new StackStateAnimator(context, this, mHeadsUpAnimator);
         setOutlineProvider(mOutlineProvider);
 
         // We could set this whenever we 'requestChildUpdate' much like the viewTreeObserver, but
@@ -789,17 +798,17 @@
     private void logHunSkippedForUnexpectedState(ExpandableNotificationRow enr,
                                                  boolean expected, boolean actual) {
         if (mLogger == null) return;
-        mLogger.hunSkippedForUnexpectedState(enr.getEntry(), expected, actual);
+        mLogger.hunSkippedForUnexpectedState(enr.getLoggingKey(), expected, actual);
     }
 
     private void logHunAnimationSkipped(ExpandableNotificationRow enr, String reason) {
         if (mLogger == null) return;
-        mLogger.hunAnimationSkipped(enr.getEntry(), reason);
+        mLogger.hunAnimationSkipped(enr.getLoggingKey(), reason);
     }
 
     private void logHunAnimationEventAdded(ExpandableNotificationRow enr, int type) {
         if (mLogger == null) return;
-        mLogger.hunAnimationEventAdded(enr.getEntry(), type);
+        mLogger.hunAnimationEventAdded(enr.getLoggingKey(), type);
     }
 
     private void onDrawDebug(Canvas canvas) {
@@ -1024,12 +1033,18 @@
                         || !(view instanceof ExpandableNotificationRow row)) {
                     continue;
                 }
+                int bucket = NotificationBundleUi.isEnabled()
+                        ? row.getEntryAdapter().getSectionBucket()
+                        : row.getEntry().getBucket();
+                boolean isAmbient = NotificationBundleUi.isEnabled()
+                        ? row.getEntryAdapter().isAmbient()
+                        : row.getEntry().isAmbient();
                 currentIndex++;
                 boolean beforeSpeedBump;
                 if (mHighPriorityBeforeSpeedBump) {
-                    beforeSpeedBump = row.getEntry().getBucket() < BUCKET_SILENT;
+                    beforeSpeedBump = bucket < BUCKET_SILENT;
                 } else {
-                    beforeSpeedBump = !row.getEntry().isAmbient();
+                    beforeSpeedBump = !isAmbient;
                 }
                 if (beforeSpeedBump) {
                     speedBumpIndex = currentIndex;
@@ -1810,16 +1825,22 @@
 
     private ExpandableNotificationRow getTopHeadsUpRow() {
         ExpandableNotificationRow row = mTopHeadsUpRow;
-        if (row.isChildInGroup()) {
-            final NotificationEntry groupSummary =
-                    mGroupMembershipManager.getGroupSummary(row.getEntry());
-            if (groupSummary != null) {
-                row = groupSummary.getRow();
+        if (NotificationBundleUi.isEnabled()) {
+            if (mGroupMembershipManager.isChildInGroup(row.getEntryAdapter())
+                    && row.isChildInGroup()) {
+                row = row.getNotificationParent();
+            }
+        } else {
+            if (row.isChildInGroup()) {
+                final NotificationEntry groupSummary =
+                        mGroupMembershipManager.getGroupSummary(row.getEntry());
+                if (groupSummary != null) {
+                    row = groupSummary.getRow();
+                }
             }
         }
         return row;
     }
-
     /**
      * @return the position from where the appear transition ends when expanding.
      * Measured in absolute height.
@@ -1966,10 +1987,19 @@
                     && touchY >= top && touchY <= bottom && touchX >= left && touchX <= right) {
                 if (slidingChild instanceof ExpandableNotificationRow row) {
                     NotificationEntry entry = row.getEntry();
+                    boolean isEntrySummaryForTopHun;
+                    if (NotificationBundleUi.isEnabled()) {
+                        isEntrySummaryForTopHun = Objects.equals(
+                                ((ExpandableNotificationRow) slidingChild).getNotificationParent(),
+                                mTopHeadsUpRow);
+                    } else {
+                        isEntrySummaryForTopHun = mTopHeadsUpRow != null &&
+                                mGroupMembershipManager.getGroupSummary(mTopHeadsUpRow.getEntry())
+                                == entry;
+                    }
                     if (!mIsExpanded && row.isHeadsUp() && row.isPinned()
                             && mTopHeadsUpRow != row
-                            && mGroupMembershipManager.getGroupSummary(mTopHeadsUpRow.getEntry())
-                            != entry) {
+                            && !isEntrySummaryForTopHun) {
                         continue;
                     }
                     return row.getViewAtPosition(touchY - childTop);
@@ -2119,7 +2149,7 @@
         }
     }
 
-    public ViewGroup getViewParentForNotification(NotificationEntry entry) {
+    public ViewGroup getViewParentForNotification() {
         return this;
     }
 
@@ -2902,17 +2932,17 @@
         if (child instanceof ExpandableNotificationRow) {
             if (container instanceof NotificationChildrenContainer) {
                 mLogger.addTransientChildNotificationToChildContainer(
-                        ((ExpandableNotificationRow) child).getEntry(),
+                        ((ExpandableNotificationRow) child).getLoggingKey(),
                         ((NotificationChildrenContainer) container)
-                                .getContainingNotification().getEntry()
+                                .getContainingNotification().getLoggingKey()
                 );
             } else if (container instanceof NotificationStackScrollLayout) {
                 mLogger.addTransientChildNotificationToNssl(
-                        ((ExpandableNotificationRow) child).getEntry()
+                        ((ExpandableNotificationRow) child).getLoggingKey()
                 );
             } else {
                 mLogger.addTransientChildNotificationToViewGroup(
-                        ((ExpandableNotificationRow) child).getEntry(),
+                        ((ExpandableNotificationRow) child).getLoggingKey(),
                         container
                 );
             }
@@ -2922,7 +2952,7 @@
     @Override
     public void addTransientView(View view, int index) {
         if (mLogger != null && view instanceof ExpandableNotificationRow) {
-            mLogger.addTransientRow(((ExpandableNotificationRow) view).getEntry(), index);
+            mLogger.addTransientRow(((ExpandableNotificationRow) view).getLoggingKey(), index);
         }
         super.addTransientView(view, index);
     }
@@ -2930,7 +2960,7 @@
     @Override
     public void removeTransientView(View view) {
         if (mLogger != null && view instanceof ExpandableNotificationRow) {
-            mLogger.removeTransientRow(((ExpandableNotificationRow) view).getEntry());
+            mLogger.removeTransientRow(((ExpandableNotificationRow) view).getLoggingKey());
         }
         super.removeTransientView(view);
     }
@@ -2981,7 +3011,7 @@
         String key = "";
         if (mDebugRemoveAnimation) {
             if (child instanceof ExpandableNotificationRow) {
-                key = ((ExpandableNotificationRow) child).getEntry().getKey();
+                key = ((ExpandableNotificationRow) child).getKey();
             }
             Log.d(TAG, "generateRemoveAnimation " + key);
         }
@@ -3403,7 +3433,7 @@
                         + " isHeadsUp=" + isHeadsUp
                         + " type=" + type
                         + " onBottom=" + onBottom
-                        + " row=" + row.getEntry().getKey());
+                        + " row=" + row.getKey());
             }
             logHunAnimationEventAdded(row, type);
         }
@@ -3478,7 +3508,7 @@
             if (mDebugRemoveAnimation) {
                 String key = "";
                 if (child instanceof ExpandableNotificationRow) {
-                    key = ((ExpandableNotificationRow) child).getEntry().getKey();
+                    key = ((ExpandableNotificationRow) child).getKey();
                 }
                 Log.d(TAG, "created Remove Event - SwipedOut: " + childWasSwipedOut + " " + key);
             }
@@ -3567,10 +3597,6 @@
         mGoToFullShadeNeedsAnimation = false;
     }
 
-    protected StackScrollAlgorithm createStackScrollAlgorithm(Context context) {
-        return new StackScrollAlgorithm(context, this);
-    }
-
     /**
      * @return Whether a y coordinate is inside the content.
      */
@@ -4366,7 +4392,7 @@
         if (mLogger == null) {
             return;
         }
-        mLogger.transientNotificationRowTraversalCleaned(transientView.getEntry(), reason);
+        mLogger.transientNotificationRowTraversalCleaned(transientView.getLoggingKey(), reason);
     }
 
     void onPanelTrackingStarted() {
@@ -5060,7 +5086,7 @@
                     + " addAnimation=" + addAnimation
                     + (row.getEntry() == null ? " entry NULL "
                             : " isSeenInShade=" + row.getEntry().isSeenInShade()
-                                    + " row=" + row.getEntry().getKey())
+                                    + " row=" + row.getKey())
                     + " mIsExpanded=" + mIsExpanded
                     + " isHeadsUp=" + isHeadsUp);
         }
@@ -5096,9 +5122,16 @@
     public void setHeadsUpBoundaries(int height, int bottomBarHeight) {
         SceneContainerFlag.assertInLegacyMode();
         mAmbientState.setMaxHeadsUpTranslation(height - bottomBarHeight);
-        mStackScrollAlgorithm.setHeadsUpAppearHeightBottom(height);
-        mStateAnimator.setHeadsUpAppearHeightBottom(height);
-        mStateAnimator.setStackTopMargin(mAmbientState.getStackTopMargin());
+
+        if (NotificationsHunSharedAnimationValues.isEnabled()) {
+            mHeadsUpAnimator.setHeadsUpAppearHeightBottom(height);
+            mHeadsUpAnimator.setStackTopMargin(mAmbientState.getStackTopMargin());
+        } else {
+            mStackScrollAlgorithm.setHeadsUpAppearHeightBottom(height);
+            mStateAnimator.setHeadsUpAppearHeightBottom(height);
+            mStateAnimator.setStackTopMargin(mAmbientState.getStackTopMargin());
+        }
+
         requestChildrenUpdate();
     }
 
@@ -5825,7 +5858,8 @@
                             targets.getBefore(),
                             targets.getSwiped(),
                             targets.getAfter());
-
+            mController.getNotificationRoundnessManager()
+                    .setRoundnessForAffectedViews(/* roundness */ 1f);
         }
 
         updateFirstAndLastBackgroundViews();
@@ -5836,8 +5870,10 @@
 
     void onSwipeEnd() {
         updateFirstAndLastBackgroundViews();
-        mController.getNotificationRoundnessManager()
-                .setViewsAffectedBySwipe(null, null, null);
+        if (!magneticNotificationSwipes()) {
+            mController.getNotificationRoundnessManager()
+                    .setViewsAffectedBySwipe(null, null, null);
+        }
         // Round bottom corners for notification right before shelf.
         mShelf.updateAppearance();
     }
@@ -6405,13 +6441,16 @@
     static boolean matchesSelection(
             ExpandableNotificationRow row,
             @SelectedRows int selection) {
+        int bucket = NotificationBundleUi.isEnabled()
+                ? row.getEntryAdapter().getSectionBucket()
+                : row.getEntry().getBucket();
         switch (selection) {
             case ROWS_ALL:
                 return true;
             case ROWS_HIGH_PRIORITY:
-                return row.getEntry().getBucket() < BUCKET_SILENT;
+                return bucket < BUCKET_SILENT;
             case ROWS_GENTLE:
-                return row.getEntry().getBucket() == BUCKET_SILENT;
+                return bucket == BUCKET_SILENT;
             default:
                 throw new IllegalArgumentException("Unknown selection: " + selection);
         }
@@ -6763,7 +6802,7 @@
         NotificationChildrenContainer childrenContainer = row.getChildrenContainer();
         if (childrenContainer == null) {
             Log.wtf(TAG, "Tried to update group header alignment for something that's "
-                    + "not a group; key = " + row.getEntry().getKey());
+                    + "not a group; key = " + row.getKey());
             return;
         }
         NotificationHeaderView header = childrenContainer.getGroupHeader();
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutController.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutController.java
index 888c8cc..124e6f5 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutController.java
@@ -122,6 +122,7 @@
 import com.android.systemui.statusbar.notification.row.NotificationGutsManager;
 import com.android.systemui.statusbar.notification.row.NotificationSnooze;
 import com.android.systemui.statusbar.notification.shared.GroupHunAnimationFix;
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
 import com.android.systemui.statusbar.notification.stack.ui.viewbinder.NotificationListViewBinder;
 import com.android.systemui.statusbar.phone.HeadsUpAppearanceController;
 import com.android.systemui.statusbar.phone.KeyguardBypassController;
@@ -545,6 +546,7 @@
 
                 public void handleChildViewDismissed(View view) {
                     // The View needs to clean up the Swipe states, e.g. roundness.
+                    mMagneticNotificationRowManager.resetRoundness();
                     mView.onSwipeEnd();
                     if (mView.getClearAllInProgress()) {
                         return;
@@ -552,7 +554,7 @@
                     if (view instanceof ExpandableNotificationRow row) {
                         if (row.isHeadsUp()) {
                             mHeadsUpManager.addSwipedOutNotification(
-                                    row.getEntry().getSbn().getKey());
+                                    row.getKey());
                         }
                         row.performDismiss(false /* fromAccessibility */);
                     }
@@ -597,7 +599,7 @@
                                 && (parent.areGutsExposed()
                                 || mSwipeHelper.getExposedMenuView() == parent
                                 || (parent.getAttachedChildren().size() == 1
-                                && mDismissibilityProvider.isDismissable(parent.getEntry())))) {
+                                && mDismissibilityProvider.isDismissable(parent.getKey())))) {
                             // In this case the group is expanded and showing the menu for the
                             // group, further interaction should apply to the group, not any
                             // child notifications so we use the parent of the child. We also do the
@@ -629,7 +631,7 @@
                 @Override
                 public void onChildSnapBackOvershoots() {
                     if (Flags.magneticNotificationSwipes()) {
-                        mNotificationRoundnessManager.setViewsAffectedBySwipe(null, null, null);
+                        mMagneticNotificationRowManager.resetRoundness();
                     }
                 }
 
@@ -638,10 +640,12 @@
                     mView.onSwipeEnd();
                     if (animView instanceof ExpandableNotificationRow row) {
                         if (row.isPinned() && !canChildBeDismissed(row)
-                                && row.getEntry().getSbn().getNotification().fullScreenIntent
-                                == null) {
+                                && NotificationBundleUi.isEnabled()
+                                ? !row.getEntryAdapter().isFullScreenCapable()
+                                : (row.getEntry().getSbn().getNotification().fullScreenIntent
+                                        == null)) {
                             mHeadsUpManager.removeNotification(
-                                    row.getEntry().getSbn().getKey(),
+                                    row.getKey(),
                                     /* removeImmediately= */ true,
                                     /* reason= */ "onChildSnappedBack"
                             );
@@ -1907,8 +1911,8 @@
         }
 
         @Override
-        public ViewGroup getViewParentForNotification(NotificationEntry entry) {
-            return mView.getViewParentForNotification(entry);
+        public ViewGroup getViewParentForNotification() {
+            return mView.getViewParentForNotification();
         }
 
         @Override
@@ -1954,12 +1958,11 @@
         @Override
         public void bindRow(ExpandableNotificationRow row) {
             row.setHeadsUpAnimatingAwayListener(animatingAway -> {
-                NotificationEntry entry = row.getEntry();
-                mHeadsUpAppearanceController.updateHeader(entry);
-                mHeadsUpAppearanceController.updateHeadsUpAndPulsingRoundness(entry);
+                mHeadsUpAppearanceController.updateHeader(row);
+                mHeadsUpAppearanceController.updateHeadsUpAndPulsingRoundness(row);
                 if (GroupHunAnimationFix.isEnabled() && !animatingAway) {
                     // invalidate list to make sure the row is sorted to the correct section
-                    mHeadsUpManager.onEntryAnimatingAwayEnded(entry);
+                    mHeadsUpManager.onEntryAnimatingAwayEnded(row.getEntry());
                 }
             });
         }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLogger.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLogger.kt
index 30658710..871b81d 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLogger.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLogger.kt
@@ -23,15 +23,15 @@
     @NotificationRenderLog private val notificationRenderBuffer: LogBuffer,
     @ShadeLog private val shadeLogBuffer: LogBuffer,
 ) {
-    fun hunAnimationSkipped(entry: NotificationEntry, reason: String) {
+    fun hunAnimationSkipped(entry: String, reason: String) {
         buffer.log(TAG, INFO, {
-            str1 = entry.logKey
+            str1 = entry
             str2 = reason
         }, {
             "heads up animation skipped: key: $str1 reason: $str2"
         })
     }
-    fun hunAnimationEventAdded(entry: NotificationEntry, type: Int) {
+    fun hunAnimationEventAdded(entry: String, type: Int) {
         val reason: String
         reason = if (type == ANIMATION_TYPE_HEADS_UP_DISAPPEAR) {
             "HEADS_UP_DISAPPEAR"
@@ -47,16 +47,16 @@
             type.toString()
         }
         buffer.log(TAG, INFO, {
-            str1 = entry.logKey
+            str1 = entry
             str2 = reason
         }, {
             "heads up animation added: $str1 with type $str2"
         })
     }
 
-    fun hunSkippedForUnexpectedState(entry: NotificationEntry, expected: Boolean, actual: Boolean) {
+    fun hunSkippedForUnexpectedState(entry: String, expected: Boolean, actual: Boolean) {
         buffer.log(TAG, INFO, {
-            str1 = entry.logKey
+            str1 = entry
             bool1 = expected
             bool2 = actual
         }, {
@@ -84,9 +84,9 @@
         })
     }
 
-    fun transientNotificationRowTraversalCleaned(entry: NotificationEntry, reason: String) {
+    fun transientNotificationRowTraversalCleaned(entry: String, reason: String) {
         notificationRenderBuffer.log(TAG, INFO, {
-            str1 = entry.logKey
+            str1 = entry
             str2 = reason
         }, {
             "transientNotificationRowTraversalCleaned: key: $str1 reason: $str2"
@@ -94,12 +94,12 @@
     }
 
     fun addTransientChildNotificationToChildContainer(
-            childEntry: NotificationEntry,
-            containerEntry: NotificationEntry,
+            childEntry: String,
+            containerEntry: String,
     ) {
         notificationRenderBuffer.log(TAG, INFO, {
-            str1 = childEntry.logKey
-            str2 = containerEntry.logKey
+            str1 = childEntry
+            str2 = containerEntry
         }, {
             "addTransientChildToContainer from onViewRemovedInternal: childKey: $str1 " +
                     "-- containerKey: $str2"
@@ -107,21 +107,21 @@
     }
 
     fun addTransientChildNotificationToNssl(
-            childEntry: NotificationEntry,
+            childEntry: String,
     ) {
         notificationRenderBuffer.log(TAG, INFO, {
-            str1 = childEntry.logKey
+            str1 = childEntry
         }, {
             "addTransientRowToNssl from onViewRemovedInternal: childKey: $str1"
         })
     }
 
     fun addTransientChildNotificationToViewGroup(
-            childEntry: NotificationEntry,
+            childEntry: String,
             container: ViewGroup
     ) {
         notificationRenderBuffer.log(TAG, ERROR, {
-            str1 = childEntry.logKey
+            str1 = childEntry
             str2 = container.toString()
         }, {
             "addTransientRowTo unhandled ViewGroup from onViewRemovedInternal: childKey: $str1 " +
@@ -130,14 +130,14 @@
     }
 
     fun addTransientRow(
-            childEntry: NotificationEntry,
+            childEntry: String,
             index: Int
     ) {
         notificationRenderBuffer.log(
                 TAG,
                 INFO,
                 {
-                    str1 = childEntry.logKey
+                    str1 = childEntry
                     int1 = index
                 },
                 { "addTransientRow to NSSL: childKey: $str1 -- index: $int1" }
@@ -145,13 +145,13 @@
     }
 
     fun removeTransientRow(
-            childEntry: NotificationEntry,
+            childEntry: String,
     ) {
         notificationRenderBuffer.log(
                 TAG,
                 INFO,
                 {
-                    str1 = childEntry.logKey
+                    str1 = childEntry
                 },
                 { "removeTransientRow from NSSL: childKey: $str1" }
         )
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackSizeCalculator.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackSizeCalculator.kt
index 08bc8f5..4e91680 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackSizeCalculator.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackSizeCalculator.kt
@@ -32,6 +32,7 @@
 import com.android.systemui.statusbar.notification.promoted.PromotedNotificationUiForceExpanded
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow
 import com.android.systemui.statusbar.notification.row.ExpandableView
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi
 import com.android.systemui.statusbar.notification.shared.NotificationMinimalism
 import com.android.systemui.statusbar.policy.SplitShadeStateController
 import com.android.systemui.util.Compile
@@ -407,8 +408,14 @@
                 }
 
             if (counter != null) {
-                val entry = (currentNotification as? ExpandableNotificationRow)?.entry
-                counter.incrementForBucket(entry?.bucket)
+                if (NotificationBundleUi.isEnabled) {
+                    val entry = (currentNotification as? ExpandableNotificationRow)?.entry
+                    counter.incrementForBucket(entry?.bucket)
+                } else {
+                    val entryAdapter =
+                        (currentNotification as? ExpandableNotificationRow)?.entryAdapter
+                    counter.incrementForBucket(entryAdapter?.sectionBucket)
+                }
             }
 
             log {
@@ -461,12 +468,15 @@
         val height = view.heightWithoutLockscreenConstraints.toFloat()
         val gapAndDividerHeight =
             calculateGapAndDividerHeight(stack, previousView, current = view, visibleIndex)
+        val canPeek = view is ExpandableNotificationRow &&
+                if (NotificationBundleUi.isEnabled) view.entryAdapter?.canPeek() == true
+                else view.entry.isStickyAndNotDemoted
 
         var size =
             if (onLockscreen) {
                 if (
                     view is ExpandableNotificationRow &&
-                        (view.entry.isStickyAndNotDemoted ||
+                        (canPeek ||
                             (PromotedNotificationUiForceExpanded.isEnabled &&
                                 view.isPromotedOngoing))
                 ) {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithm.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithm.java
index 08692be..4effb76 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithm.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithm.java
@@ -36,9 +36,12 @@
 import com.android.systemui.statusbar.notification.SourceType;
 import com.android.systemui.statusbar.notification.emptyshade.ui.view.EmptyShadeView;
 import com.android.systemui.statusbar.notification.footer.ui.view.FooterView;
+import com.android.systemui.statusbar.notification.headsup.HeadsUpAnimator;
+import com.android.systemui.statusbar.notification.headsup.NotificationsHunSharedAnimationValues;
 import com.android.systemui.statusbar.notification.row.ActivatableNotificationView;
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
 import com.android.systemui.statusbar.notification.row.ExpandableView;
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
 import com.android.systemui.statusbar.notification.shared.NotificationHeadsUpCycling;
 
 import java.util.ArrayList;
@@ -56,6 +59,9 @@
     private static final String TAG = "StackScrollAlgorithm";
     private static final SourceType STACK_SCROLL_ALGO = SourceType.from("StackScrollAlgorithm");
     private final ViewGroup mHostView;
+    @Nullable
+    private final HeadsUpAnimator mHeadsUpAnimator;
+
     private float mPaddingBetweenElements;
     private float mGapHeight;
     private float mGapHeightOnLockscreen;
@@ -78,8 +84,12 @@
     private int mHeadsUpAppearHeightBottom;
     private int mHeadsUpCyclingPadding;
 
-    public StackScrollAlgorithm(Context context, ViewGroup hostView) {
+    public StackScrollAlgorithm(
+            Context context,
+            ViewGroup hostView,
+            @Nullable HeadsUpAnimator headsUpAnimator) {
         mHostView = hostView;
+        mHeadsUpAnimator = headsUpAnimator;
         initView(context);
     }
 
@@ -111,6 +121,9 @@
         mQuickQsOffsetHeight = SystemBarUtils.getQuickQsOffsetHeight(context);
         mSmallCornerRadius = res.getDimension(R.dimen.notification_corner_radius_small);
         mLargeCornerRadius = res.getDimension(R.dimen.notification_corner_radius);
+        if (NotificationsHunSharedAnimationValues.isEnabled()) {
+            mHeadsUpAnimator.updateResources(context);
+        }
     }
 
     /**
@@ -250,6 +263,7 @@
     }
 
     public void setHeadsUpAppearHeightBottom(int headsUpAppearHeightBottom) {
+        NotificationsHunSharedAnimationValues.assertInLegacyMode();
         mHeadsUpAppearHeightBottom = headsUpAppearHeightBottom;
     }
 
@@ -275,11 +289,7 @@
     public static void debugLogView(View view, String s) {
         String viewString = "";
         if (view instanceof ExpandableNotificationRow row) {
-            if (row.getEntry() == null) {
-                viewString = "ExpandableNotificationRow has null NotificationEntry";
-            } else {
-                viewString = row.getEntry().getSbn().getId() + "";
-            }
+            viewString = row.getKey();
         } else if (view == null) {
             viewString = "View is null";
         } else if (view instanceof SectionHeaderView) {
@@ -413,10 +423,8 @@
      */
     public boolean isCyclingOut(ExpandableNotificationRow row, AmbientState ambientState) {
         if (!NotificationHeadsUpCycling.isEnabled()) return false;
-        if (row.getEntry() == null) return false;
-        if (row.getEntry().getKey() == null) return false;
         String cyclingOutKey = ambientState.getAvalanchePreviousHunKey();
-        return row.getEntry().getKey().equals(cyclingOutKey);
+        return row.getKey().equals(cyclingOutKey);
     }
 
     /**
@@ -424,10 +432,8 @@
      */
     public boolean isCyclingIn(ExpandableNotificationRow row, AmbientState ambientState) {
         if (!NotificationHeadsUpCycling.isEnabled()) return false;
-        if (row.getEntry() == null) return false;
-        if (row.getEntry().getKey() == null) return false;
         String cyclingInKey = ambientState.getAvalancheShowingHunKey();
-        return row.getEntry().getKey().equals(cyclingInKey);
+        return row.getKey().equals(cyclingInKey);
     }
 
     /** Updates the dimmed and hiding sensitive states of the children. */
@@ -919,7 +925,9 @@
                 if (SceneContainerFlag.isEnabled()) {
                     if (shouldHunBeVisibleWhenScrolled(row.isHeadsUp(),
                             childState.headsUpIsVisible, row.showingPulsing(),
-                            ambientState.isOnKeyguard(), row.getEntry().isStickyAndNotDemoted())) {
+                            ambientState.isOnKeyguard(), NotificationBundleUi.isEnabled()
+                                    ? row.getEntryAdapter().canPeek()
+                                    : row.getEntry().isStickyAndNotDemoted())) {
                         // the height of this child before clamping it to the top
                         float unmodifiedChildHeight = childState.height;
                         clampHunToTop(
@@ -971,7 +979,9 @@
                 } else {
                     if (shouldHunBeVisibleWhenScrolled(row.mustStayOnScreen(),
                             childState.headsUpIsVisible, row.showingPulsing(),
-                            ambientState.isOnKeyguard(), row.getEntry().isStickyAndNotDemoted())) {
+                            ambientState.isOnKeyguard(), NotificationBundleUi.isEnabled()
+                                    ? row.getEntryAdapter().canPeek()
+                                    : row.getEntry().isStickyAndNotDemoted())) {
                         // Ensure that the heads up is always visible even when scrolled off.
                         // NSSL y starts at top of screen in non-split-shade, but below the qs
                         // offset
@@ -1045,14 +1055,22 @@
                     childState.setYTranslation(inSpaceTranslation + extraTranslation);
                     cyclingInHunHeight = -1;
                 } else if (!ambientState.isDozing()) {
-                    if (shouldHunAppearFromBottom(ambientState, childState)) {
-                        // move to the bottom of the screen
-                        childState.setYTranslation(
-                                mHeadsUpAppearHeightBottom + mHeadsUpAppearStartAboveScreen);
+                    boolean shouldHunAppearFromBottom =
+                            shouldHunAppearFromBottom(ambientState, childState);
+                    if (NotificationsHunSharedAnimationValues.isEnabled()) {
+                        int yTranslation =
+                                mHeadsUpAnimator.getHeadsUpYTranslation(shouldHunAppearFromBottom);
+                        childState.setYTranslation(yTranslation);
                     } else {
-                        // move to the top of the screen
-                        childState.setYTranslation(-ambientState.getStackTopMargin()
-                                - mHeadsUpAppearStartAboveScreen);
+                        if (shouldHunAppearFromBottom) {
+                            // move to the bottom of the screen
+                            childState.setYTranslation(
+                                    mHeadsUpAppearHeightBottom + mHeadsUpAppearStartAboveScreen);
+                        } else {
+                            // move to the top of the screen
+                            childState.setYTranslation(-ambientState.getStackTopMargin()
+                                    - mHeadsUpAppearStartAboveScreen);
+                        }
                     }
                 } else {
                     // Make sure row yTranslation is at maximum the HUN yTranslation,
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/StackStateAnimator.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/StackStateAnimator.java
index 2b05223..9a5cf9c 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/StackStateAnimator.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/StackStateAnimator.java
@@ -27,6 +27,7 @@
 import android.animation.Animator;
 import android.animation.AnimatorListenerAdapter;
 import android.animation.ValueAnimator;
+import android.annotation.Nullable;
 import android.content.Context;
 import android.util.Property;
 import android.view.View;
@@ -39,6 +40,8 @@
 import com.android.systemui.shared.clocks.AnimatableClockView;
 import com.android.systemui.statusbar.NotificationShelf;
 import com.android.systemui.statusbar.notification.PhysicsPropertyAnimator;
+import com.android.systemui.statusbar.notification.headsup.HeadsUpAnimator;
+import com.android.systemui.statusbar.notification.headsup.NotificationsHunSharedAnimationValues;
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
 import com.android.systemui.statusbar.notification.row.ExpandableView;
 import com.android.systemui.statusbar.notification.row.StackScrollerDecorView;
@@ -83,6 +86,9 @@
     private final ExpandableViewState mTmpState = new ExpandableViewState();
     private final AnimationProperties mAnimationProperties;
     public NotificationStackScrollLayout mHostLayout;
+    @Nullable
+    private final HeadsUpAnimator mHeadsUpAnimator;
+
     private ArrayList<NotificationStackScrollLayout.AnimationEvent> mNewEvents =
             new ArrayList<>();
     private ArrayList<View> mNewAddChildren = new ArrayList<>();
@@ -104,8 +110,12 @@
     private NotificationShelf mShelf;
     private StackStateLogger mLogger;
 
-    public StackStateAnimator(Context context, NotificationStackScrollLayout hostLayout) {
+    public StackStateAnimator(
+            Context context,
+            NotificationStackScrollLayout hostLayout,
+            @Nullable HeadsUpAnimator headsUpAnimator) {
         mHostLayout = hostLayout;
+        mHeadsUpAnimator = headsUpAnimator;
         initView(context);
         mAnimationProperties = new AnimationProperties() {
 
@@ -422,7 +432,7 @@
             if (changingView instanceof ExpandableNotificationRow && mLogger != null) {
                 loggable = true;
                 isHeadsUp = ((ExpandableNotificationRow) changingView).isHeadsUp();
-                key = ((ExpandableNotificationRow) changingView).getEntry().getKey();
+                key = ((ExpandableNotificationRow) changingView).getKey();
             }
             if (event.animationType ==
                     NotificationStackScrollLayout.AnimationEvent.ANIMATION_TYPE_ADD) {
@@ -543,7 +553,6 @@
                 mHeadsUpAppearChildren.add(changingView);
 
                 mTmpState.copyFrom(changingView.getViewState());
-                // translate the HUN in from the top, or the bottom of the screen
                 mTmpState.setYTranslation(getHeadsUpYTranslationStart(event.headsUpFromBottom));
                 // set the height and the initial position
                 mTmpState.applyToView(changingView);
@@ -728,6 +737,10 @@
     }
 
     private float getHeadsUpYTranslationStart(boolean headsUpFromBottom) {
+        if (NotificationsHunSharedAnimationValues.isEnabled()) {
+            return mHeadsUpAnimator.getHeadsUpYTranslation(headsUpFromBottom);
+        }
+
         if (headsUpFromBottom) {
             // start from the bottom of the screen
             return mHeadsUpAppearHeightBottom + mHeadsUpAppearStartAboveScreen;
@@ -814,10 +827,12 @@
     }
 
     public void setHeadsUpAppearHeightBottom(int headsUpAppearHeightBottom) {
+        NotificationsHunSharedAnimationValues.assertInLegacyMode();
         mHeadsUpAppearHeightBottom = headsUpAppearHeightBottom;
     }
 
     public void setStackTopMargin(int stackTopMargin) {
+        NotificationsHunSharedAnimationValues.assertInLegacyMode();
         mStackTopMargin = stackTopMargin;
     }
 
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/ui/viewmodel/SharedNotificationContainerViewModel.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/ui/viewmodel/SharedNotificationContainerViewModel.kt
index 877aa76..33cc62c 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/ui/viewmodel/SharedNotificationContainerViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/ui/viewmodel/SharedNotificationContainerViewModel.kt
@@ -50,7 +50,6 @@
 import com.android.systemui.keyguard.ui.viewmodel.AodToLockscreenTransitionViewModel
 import com.android.systemui.keyguard.ui.viewmodel.AodToOccludedTransitionViewModel
 import com.android.systemui.keyguard.ui.viewmodel.AodToPrimaryBouncerTransitionViewModel
-import com.android.systemui.keyguard.ui.viewmodel.DozingToDreamingTransitionViewModel
 import com.android.systemui.keyguard.ui.viewmodel.DozingToGlanceableHubTransitionViewModel
 import com.android.systemui.keyguard.ui.viewmodel.DozingToLockscreenTransitionViewModel
 import com.android.systemui.keyguard.ui.viewmodel.DozingToOccludedTransitionViewModel
@@ -144,7 +143,6 @@
     private val aodToOccludedTransitionViewModel: AodToOccludedTransitionViewModel,
     private val aodToGlanceableHubTransitionViewModel: AodToGlanceableHubTransitionViewModel,
     private val aodToPrimaryBouncerTransitionViewModel: AodToPrimaryBouncerTransitionViewModel,
-    private val dozingToDreamingTransitionViewModel: DozingToDreamingTransitionViewModel,
     dozingToGlanceableHubTransitionViewModel: DozingToGlanceableHubTransitionViewModel,
     private val dozingToLockscreenTransitionViewModel: DozingToLockscreenTransitionViewModel,
     private val dozingToOccludedTransitionViewModel: DozingToOccludedTransitionViewModel,
@@ -603,7 +601,6 @@
             aodToOccludedTransitionViewModel.lockscreenAlpha(viewState),
             aodToGlanceableHubTransitionViewModel.lockscreenAlpha(viewState),
             aodToPrimaryBouncerTransitionViewModel.notificationAlpha,
-            dozingToDreamingTransitionViewModel.notificationAlpha,
             dozingToLockscreenTransitionViewModel.lockscreenAlpha,
             dozingToOccludedTransitionViewModel.lockscreenAlpha(viewState),
             dozingToPrimaryBouncerTransitionViewModel.notificationAlpha,
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/CentralSurfacesImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/CentralSurfacesImpl.java
index a9b3753..face1c7 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/CentralSurfacesImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/CentralSurfacesImpl.java
@@ -163,7 +163,7 @@
 import com.android.systemui.scrim.ScrimView;
 import com.android.systemui.settings.UserTracker;
 import com.android.systemui.settings.brightness.BrightnessSliderController;
-import com.android.systemui.settings.brightness.domain.interactor.BrightnessMirrorShowingInteractor;
+import com.android.systemui.settings.brightness.data.repository.BrightnessMirrorShowingRepository;
 import com.android.systemui.shade.CameraLauncher;
 import com.android.systemui.shade.GlanceableHubContainerController;
 import com.android.systemui.shade.NotificationShadeWindowView;
@@ -589,7 +589,7 @@
 
     private final ColorExtractor.OnColorsChangedListener mOnColorsChangedListener =
             (extractor, which) -> updateTheme();
-    private final BrightnessMirrorShowingInteractor mBrightnessMirrorShowingInteractor;
+    private final BrightnessMirrorShowingRepository mBrightnessMirrorShowingRepository;
 
     // Only use before the scene container. Null if scene container is enabled.
     @Nullable private final GlanceableHubContainerController mGlanceableHubContainerController;
@@ -709,7 +709,7 @@
             AlternateBouncerInteractor alternateBouncerInteractor,
             UserTracker userTracker,
             ActivityStarter activityStarter,
-            BrightnessMirrorShowingInteractor brightnessMirrorShowingInteractor,
+            BrightnessMirrorShowingRepository brightnessMirrorShowingRepository,
             GlanceableHubContainerController glanceableHubContainerController,
             EmergencyGestureIntentFactory emergencyGestureIntentFactory,
             ViewCaptureAwareWindowManager viewCaptureAwareWindowManager,
@@ -805,7 +805,7 @@
         mAlternateBouncerInteractor = alternateBouncerInteractor;
         mUserTracker = userTracker;
         mActivityStarter = activityStarter;
-        mBrightnessMirrorShowingInteractor = brightnessMirrorShowingInteractor;
+        mBrightnessMirrorShowingRepository = brightnessMirrorShowingRepository;
         if (!SceneContainerFlag.isEnabled()) {
             mGlanceableHubContainerController = glanceableHubContainerController;
         } else {
@@ -1110,7 +1110,7 @@
                 mIdleOnCommunalConsumer);
         if (SceneContainerFlag.isEnabled() || QSComposeFragment.isEnabled()) {
             mJavaAdapter.alwaysCollectFlow(
-                    mBrightnessMirrorShowingInteractor.isShowing(),
+                    mBrightnessMirrorShowingRepository.isShowing(),
                     this::setBrightnessMirrorShowing
             );
         }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/HeadsUpAppearanceController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/HeadsUpAppearanceController.java
index 548ab83..7f4ac37 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/HeadsUpAppearanceController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/HeadsUpAppearanceController.java
@@ -215,13 +215,13 @@
     @Override
     public void onHeadsUpPinned(NotificationEntry entry) {
         updatePinnedStatus();
-        updateHeader(entry);
-        updateHeadsUpAndPulsingRoundness(entry);
+        updateHeader(entry.getRow());
+        updateHeadsUpAndPulsingRoundness(entry.getRow());
     }
 
     @Override
     public void onHeadsUpStateChanged(@NonNull NotificationEntry entry, boolean isHeadsUp) {
-        updateHeadsUpAndPulsingRoundness(entry);
+        updateHeadsUpAndPulsingRoundness(entry.getRow());
         mPhoneStatusBarTransitions.onHeadsUpStateChanged(isHeadsUp);
     }
 
@@ -416,8 +416,8 @@
     @Override
     public void onHeadsUpUnPinned(NotificationEntry entry) {
         updatePinnedStatus();
-        updateHeader(entry);
-        updateHeadsUpAndPulsingRoundness(entry);
+        updateHeader(entry.getRow());
+        updateHeadsUpAndPulsingRoundness(entry.getRow());
     }
 
     public void setAppearFraction(float expandedHeight, float appearFraction) {
@@ -448,9 +448,8 @@
         ExpandableNotificationRow previousTracked = mTrackedChild;
         mTrackedChild = trackedChild;
         if (previousTracked != null) {
-            NotificationEntry entry = previousTracked.getEntry();
-            updateHeader(entry);
-            updateHeadsUpAndPulsingRoundness(entry);
+            updateHeader(previousTracked);
+            updateHeadsUpAndPulsingRoundness(previousTracked);
         }
     }
 
@@ -460,13 +459,12 @@
 
     private void updateHeadsUpHeaders() {
         mHeadsUpManager.getAllEntries().forEach(entry -> {
-            updateHeader(entry);
-            updateHeadsUpAndPulsingRoundness(entry);
+            updateHeader(entry.getRow());
+            updateHeadsUpAndPulsingRoundness(entry.getRow());
         });
     }
 
-    public void updateHeader(NotificationEntry entry) {
-        ExpandableNotificationRow row = entry.getRow();
+    public void updateHeader(ExpandableNotificationRow row) {
         float headerVisibleAmount = 1.0f;
         // To fix the invisible HUN group header issue
         if (!AsyncGroupHeaderViewInflation.isEnabled()) {
@@ -480,10 +478,9 @@
 
     /**
      * Update the HeadsUp and the Pulsing roundness based on current state
-     * @param entry target notification
+     * @param row target notification row
      */
-    public void updateHeadsUpAndPulsingRoundness(NotificationEntry entry) {
-        ExpandableNotificationRow row = entry.getRow();
+    public void updateHeadsUpAndPulsingRoundness(ExpandableNotificationRow row) {
         boolean isTrackedChild = row == mTrackedChild;
         if (row.isPinned() || row.isHeadsUpAnimatingAway() || isTrackedChild) {
             float roundness = MathUtils.saturate(1f - mAppearFraction);
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/LSShadeTransitionLogger.kt b/packages/SystemUI/src/com/android/systemui/statusbar/phone/LSShadeTransitionLogger.kt
index 686efb7..edaf400 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/LSShadeTransitionLogger.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/LSShadeTransitionLogger.kt
@@ -34,9 +34,8 @@
     private val displayMetrics: DisplayMetrics
 ) {
     fun logUnSuccessfulDragDown(startingChild: View?) {
-        val entry = (startingChild as? ExpandableNotificationRow)?.entry
         buffer.log(TAG, LogLevel.INFO, {
-            str1 = entry?.key ?: "no entry"
+            str1 = (startingChild as? ExpandableNotificationRow)?.loggingKey ?: "no entry"
         }, {
             "Tried to drag down but can't drag down on $str1"
         })
@@ -49,27 +48,24 @@
     }
 
     fun logDragDownStarted(startingChild: ExpandableView?) {
-        val entry = (startingChild as? ExpandableNotificationRow)?.entry
         buffer.log(TAG, LogLevel.INFO, {
-            str1 = entry?.key ?: "no entry"
+            str1 = (startingChild as? ExpandableNotificationRow)?.loggingKey ?: "no entry"
         }, {
             "The drag down has started on $str1"
         })
     }
 
     fun logDraggedDownLockDownShade(startingChild: View?) {
-        val entry = (startingChild as? ExpandableNotificationRow)?.entry
         buffer.log(TAG, LogLevel.INFO, {
-            str1 = entry?.key ?: "no entry"
+            str1 = (startingChild as? ExpandableNotificationRow)?.loggingKey ?: "no entry"
         }, {
             "Dragged down in locked down shade on $str1"
         })
     }
 
     fun logDraggedDown(startingChild: View?, dragLengthY: Int) {
-        val entry = (startingChild as? ExpandableNotificationRow)?.entry
         buffer.log(TAG, LogLevel.INFO, {
-            str1 = entry?.key ?: "no entry"
+            str1 = (startingChild as? ExpandableNotificationRow)?.loggingKey ?: "no entry"
         }, {
             "Drag down succeeded on $str1"
         })
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java
index 66f0d4a..74a42ef 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java
@@ -533,7 +533,10 @@
     private void handleBlurSupportedChanged(boolean isBlurSupported) {
         this.mIsBlurSupported = isBlurSupported;
         if (Flags.bouncerUiRevamp()) {
-            updateDefaultScrimAlphas();
+            // TODO: animate blur fallback when the bouncer is pulled up.
+            for (ScrimState state : ScrimState.values()) {
+                state.setDefaultScrimAlpha(getDefaultScrimAlpha(true));
+            }
             if (isBlurSupported) {
                 ScrimState.BOUNCER_SCRIMMED.setNotifBlurRadius(mBlurConfig.getMaxBlurRadiusPx());
             } else {
@@ -541,7 +544,17 @@
             }
         }
         if (Flags.notificationShadeBlur()) {
+            float inFrontAlpha = mInFrontAlpha;
+            float behindAlpha = mBehindAlpha;
+            float notifAlpha = mNotificationsAlpha;
+
             mState.prepare(mState);
+            applyState();
+            startScrimAnimation(mScrimBehind, behindAlpha);
+            startScrimAnimation(mNotificationsScrim, notifAlpha);
+            startScrimAnimation(mScrimInFront, inFrontAlpha);
+            dispatchBackScrimState(mScrimBehind.getViewAlpha());
+        } else if (Flags.bouncerUiRevamp()) {
             applyAndDispatchState();
         }
     }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarNotificationActivityStarter.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarNotificationActivityStarter.java
index ba41fd4..df1680a 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarNotificationActivityStarter.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarNotificationActivityStarter.java
@@ -670,7 +670,7 @@
     }
 
     private void removeHunAfterClick(ExpandableNotificationRow row) {
-        String key = row.getEntry().getSbn().getKey();
+        String key = row.getKey();
         if (mHeadsUpManager != null && mHeadsUpManager.isHeadsUpEntry(key)) {
             // Release the HUN notification to the shade.
             if (mPresenter.isPresenterFullyCollapsed()) {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarNotificationPresenter.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarNotificationPresenter.java
index 4d1d64e..74b1c3b 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarNotificationPresenter.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarNotificationPresenter.java
@@ -58,6 +58,7 @@
 import com.android.systemui.statusbar.SysuiStatusBarStateController;
 import com.android.systemui.statusbar.notification.AboveShelfObserver;
 import com.android.systemui.statusbar.notification.DynamicPrivacyController;
+import com.android.systemui.statusbar.notification.collection.EntryAdapter;
 import com.android.systemui.statusbar.notification.collection.NotificationEntry;
 import com.android.systemui.statusbar.notification.collection.render.NotifShadeEventSource;
 import com.android.systemui.statusbar.notification.domain.interactor.NotificationAlertsInteractor;
@@ -262,6 +263,23 @@
         }
     }
 
+    @Override
+    public void onExpandClicked(ExpandableNotificationRow row, EntryAdapter clickedEntry,
+            boolean nowExpanded) {
+        mHeadsUpManager.setExpanded(clickedEntry.getKey(), row, nowExpanded);
+        mPowerInteractor.wakeUpIfDozing("NOTIFICATION_CLICK", PowerManager.WAKE_REASON_GESTURE);
+        if (nowExpanded) {
+            if (mStatusBarStateController.getState() == StatusBarState.KEYGUARD) {
+                mShadeTransitionController.goToLockedShade(row, /* needsQSAnimation = */ true);
+            } else if (clickedEntry.isSensitive().getValue() && isInLockedDownShade()) {
+                mStatusBarStateController.setLeaveOpenOnKeyguardHide(true);
+                // launch the bouncer if the device is locked
+                mActivityStarter.dismissKeyguardThenExecute(() -> false /* dismissAction */
+                        , null /* cancelRunnable */, false /* afterKeyguardGone */);
+            }
+        }
+    }
+
     /** @return true if the Shade is shown over the Lockscreen, and the device is locked */
     private boolean isInLockedDownShade() {
         if (SceneContainerFlag.isEnabled()) {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/dagger/StatusBarPhoneModule.kt b/packages/SystemUI/src/com/android/systemui/statusbar/phone/dagger/StatusBarPhoneModule.kt
index 037dda9..323b7d8 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/dagger/StatusBarPhoneModule.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/dagger/StatusBarPhoneModule.kt
@@ -15,10 +15,8 @@
  */
 package com.android.systemui.statusbar.phone.dagger
 
-import android.view.Display
 import com.android.systemui.CoreStartable
 import com.android.systemui.dagger.SysUISingleton
-import com.android.systemui.dagger.qualifiers.Background
 import com.android.systemui.dagger.qualifiers.Default
 import com.android.systemui.statusbar.CommandQueue
 import com.android.systemui.statusbar.core.CommandQueueInitializer
@@ -29,7 +27,6 @@
 import com.android.systemui.statusbar.core.StatusBarInitializer
 import com.android.systemui.statusbar.core.StatusBarInitializerImpl
 import com.android.systemui.statusbar.core.StatusBarInitializerStore
-import com.android.systemui.statusbar.core.StatusBarOrchestrator
 import com.android.systemui.statusbar.core.StatusBarRootModernization
 import com.android.systemui.statusbar.data.repository.DarkIconDispatcherStore
 import com.android.systemui.statusbar.data.repository.PrivacyDotViewControllerStoreModule
@@ -50,7 +47,6 @@
 import dagger.Provides
 import dagger.multibindings.ClassKey
 import dagger.multibindings.IntoMap
-import kotlinx.coroutines.CoroutineScope
 
 /** Similar in purpose to [StatusBarModule], but scoped only to phones */
 @Module(
@@ -122,29 +118,6 @@
 
         @Provides
         @SysUISingleton
-        @Default // Dagger does not support providing @AssistedInject types without a qualifier
-        fun orchestrator(
-            @Background backgroundApplicationScope: CoroutineScope,
-            statusBarWindowStateRepositoryStore: StatusBarWindowStateRepositoryStore,
-            statusBarModeRepositoryStore: StatusBarModeRepositoryStore,
-            initializerStore: StatusBarInitializerStore,
-            statusBarWindowControllerStore: StatusBarWindowControllerStore,
-            autoHideControllerStore: AutoHideControllerStore,
-            statusBarOrchestratorFactory: StatusBarOrchestrator.Factory,
-        ): StatusBarOrchestrator {
-            return statusBarOrchestratorFactory.create(
-                Display.DEFAULT_DISPLAY,
-                backgroundApplicationScope,
-                statusBarWindowStateRepositoryStore.defaultDisplay,
-                statusBarModeRepositoryStore.defaultDisplay,
-                initializerStore.defaultDisplay,
-                statusBarWindowControllerStore.defaultDisplay,
-                autoHideControllerStore.defaultDisplay,
-            )
-        }
-
-        @Provides
-        @SysUISingleton
         @IntoMap
         @ClassKey(MultiDisplayStatusBarStarter::class)
         fun multiDisplayStarter(
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ongoingcall/OngoingCallController.kt b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ongoingcall/OngoingCallController.kt
index 949cb0a..b662892 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ongoingcall/OngoingCallController.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ongoingcall/OngoingCallController.kt
@@ -72,7 +72,7 @@
     private val swipeStatusBarAwayGestureHandler: SwipeStatusBarAwayGestureHandler,
     private val statusBarModeRepository: StatusBarModeRepositoryStore,
     @OngoingCallLog private val logger: LogBuffer,
-) : CallbackController<OngoingCallListener>, Dumpable, CoreStartable {
+) : CallbackController<OngoingCallListener>, CoreStartable {
     private var isFullscreen: Boolean = false
     /** Non-null if there's an active call notification. */
     private var callNotificationInfo: CallNotificationInfo? = null
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconViewModel.kt b/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconViewModel.kt
index ac301b0..3b40cde 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconViewModel.kt
@@ -19,8 +19,6 @@
 import com.android.systemui.Flags.statusBarStaticInoutIndicators
 import com.android.systemui.common.shared.model.ContentDescription
 import com.android.systemui.common.shared.model.Icon
-import com.android.systemui.flags.FeatureFlagsClassic
-import com.android.systemui.flags.Flags.NEW_NETWORK_SLICE_UI
 import com.android.systemui.log.table.logDiffsForTable
 import com.android.systemui.res.R
 import com.android.systemui.statusbar.core.NewStatusBarIcons
@@ -79,7 +77,6 @@
     iconInteractor: MobileIconInteractor,
     airplaneModeInteractor: AirplaneModeInteractor,
     constants: ConnectivityConstants,
-    flags: FeatureFlagsClassic,
     scope: CoroutineScope,
 ) : MobileIconViewModelCommon {
     private val cellProvider by lazy {
@@ -88,7 +85,6 @@
             iconInteractor,
             airplaneModeInteractor,
             constants,
-            flags,
             scope,
         )
     }
@@ -179,7 +175,6 @@
     iconInteractor: MobileIconInteractor,
     airplaneModeInteractor: AirplaneModeInteractor,
     constants: ConnectivityConstants,
-    flags: FeatureFlagsClassic,
     scope: CoroutineScope,
 ) : MobileIconViewModelCommon {
     override val isVisible: StateFlow<Boolean> =
@@ -286,16 +281,13 @@
             .stateIn(scope, SharingStarted.WhileSubscribed(), null)
 
     override val networkTypeBackground =
-        if (!flags.isEnabled(NEW_NETWORK_SLICE_UI)) {
-                flowOf(null)
-            } else {
-                iconInteractor.showSliceAttribution.map {
-                    when {
-                        it && NewStatusBarIcons.isEnabled ->
-                            Icon.Resource(R.drawable.mobile_network_type_background_updated, null)
-                        it -> Icon.Resource(R.drawable.mobile_network_type_background, null)
-                        else -> null
-                    }
+        iconInteractor.showSliceAttribution
+            .map {
+                when {
+                    it && NewStatusBarIcons.isEnabled ->
+                        Icon.Resource(R.drawable.mobile_network_type_background_updated, null)
+                    it -> Icon.Resource(R.drawable.mobile_network_type_background, null)
+                    else -> null
                 }
             }
             .stateIn(scope, SharingStarted.WhileSubscribed(), null)
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconsViewModel.kt b/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconsViewModel.kt
index 288e49e..494d95e 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconsViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconsViewModel.kt
@@ -21,7 +21,6 @@
 import com.android.systemui.coroutines.newTracingContext
 import com.android.systemui.dagger.SysUISingleton
 import com.android.systemui.dagger.qualifiers.Background
-import com.android.systemui.flags.FeatureFlagsClassic
 import com.android.systemui.statusbar.phone.StatusBarLocation
 import com.android.systemui.statusbar.pipeline.airplane.domain.interactor.AirplaneModeInteractor
 import com.android.systemui.statusbar.pipeline.mobile.domain.interactor.MobileIconsInteractor
@@ -57,7 +56,6 @@
     private val interactor: MobileIconsInteractor,
     private val airplaneModeInteractor: AirplaneModeInteractor,
     private val constants: ConnectivityConstants,
-    private val flags: FeatureFlagsClassic,
     @Background private val scope: CoroutineScope,
 ) {
     @VisibleForTesting
@@ -131,7 +129,6 @@
                 interactor.getMobileConnectionInteractorForSubId(subId),
                 airplaneModeInteractor,
                 constants,
-                flags,
                 vmScope,
             )
 
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/satellite/domain/interactor/DeviceBasedSatelliteInteractor.kt b/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/satellite/domain/interactor/DeviceBasedSatelliteInteractor.kt
index 569e02c..4041f3f 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/satellite/domain/interactor/DeviceBasedSatelliteInteractor.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/satellite/domain/interactor/DeviceBasedSatelliteInteractor.kt
@@ -16,7 +16,6 @@
 
 package com.android.systemui.statusbar.pipeline.satellite.domain.interactor
 
-import com.android.internal.telephony.flags.Flags
 import com.android.systemui.dagger.SysUISingleton
 import com.android.systemui.dagger.qualifiers.Background
 import com.android.systemui.log.LogBuffer
@@ -57,35 +56,19 @@
 
     /** Must be observed by any UI showing Satellite iconography */
     val isSatelliteAllowed =
-        if (Flags.oemEnabledSatelliteFlag()) {
-                repo.isSatelliteAllowedForCurrentLocation
-            } else {
-                flowOf(false)
-            }
-            .distinctUntilChanged()
+        repo.isSatelliteAllowedForCurrentLocation
             .logDiffsForTable(tableLog, columnName = COL_ALLOWED, initialValue = false)
             .stateIn(scope, SharingStarted.WhileSubscribed(), false)
 
     /** See [SatelliteConnectionState] for relevant states */
     val connectionState =
-        if (Flags.oemEnabledSatelliteFlag()) {
-                repo.connectionState
-            } else {
-
-                flowOf(SatelliteConnectionState.Off)
-            }
-            .distinctUntilChanged()
+        repo.connectionState
             .logDiffsForTable(tableLog, initialValue = SatelliteConnectionState.Off)
             .stateIn(scope, SharingStarted.WhileSubscribed(), SatelliteConnectionState.Off)
 
     /** 0-4 description of the connection strength */
     val signalStrength =
-        if (Flags.oemEnabledSatelliteFlag()) {
-                repo.signalStrength
-            } else {
-                flowOf(0)
-            }
-            .distinctUntilChanged()
+        repo.signalStrength
             .logDiffsForTable(tableLog, columnName = COL_LEVEL, initialValue = 0)
             .stateIn(scope, SharingStarted.WhileSubscribed(), 0)
 
@@ -114,28 +97,24 @@
 
     /** When all connections are considered OOS, satellite connectivity is potentially valid */
     val areAllConnectionsOutOfService =
-        if (Flags.oemEnabledSatelliteFlag()) {
-                combine(allConnectionsOos, iconsInteractor.isDeviceInEmergencyCallsOnlyMode) {
-                    connectionsOos,
-                    deviceEmergencyOnly ->
-                    logBuffer.log(
-                        TAG,
-                        LogLevel.INFO,
-                        {
-                            bool1 = connectionsOos
-                            bool2 = deviceEmergencyOnly
-                        },
-                        {
-                            "Updating OOS status. allConnectionsOOs=$bool1 " +
-                                "deviceEmergencyOnly=$bool2"
-                        },
-                    )
-                    // If no connections exist, or all are OOS, then we look to the device-based
-                    // service state to detect if any calls are possible
-                    connectionsOos && !deviceEmergencyOnly
-                }
-            } else {
-                flowOf(false)
+        combine(allConnectionsOos, iconsInteractor.isDeviceInEmergencyCallsOnlyMode) {
+                connectionsOos,
+                deviceEmergencyOnly ->
+                logBuffer.log(
+                    TAG,
+                    LogLevel.INFO,
+                    {
+                        bool1 = connectionsOos
+                        bool2 = deviceEmergencyOnly
+                    },
+                    {
+                        "Updating OOS status. allConnectionsOOs=$bool1 " +
+                            "deviceEmergencyOnly=$bool2"
+                    },
+                )
+                // If no connections exist, or all are OOS, then we look to the device-based
+                // service state to detect if any calls are possible
+                connectionsOos && !deviceEmergencyOnly
             }
             .distinctUntilChanged()
             .logDiffsForTable(tableLog, columnName = COL_FULL_OOS, initialValue = true)
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/satellite/ui/DeviceBasedSatelliteBindableIcon.kt b/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/satellite/ui/DeviceBasedSatelliteBindableIcon.kt
index f5d0f6b..d51d8da 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/satellite/ui/DeviceBasedSatelliteBindableIcon.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/pipeline/satellite/ui/DeviceBasedSatelliteBindableIcon.kt
@@ -17,7 +17,6 @@
 package com.android.systemui.statusbar.pipeline.satellite.ui
 
 import android.content.Context
-import com.android.internal.telephony.flags.Flags.oemEnabledSatelliteFlag
 import com.android.systemui.dagger.SysUISingleton
 import com.android.systemui.statusbar.pipeline.icons.shared.model.BindableIcon
 import com.android.systemui.statusbar.pipeline.icons.shared.model.ModernStatusBarViewCreator
@@ -29,10 +28,7 @@
 @SysUISingleton
 class DeviceBasedSatelliteBindableIcon
 @Inject
-constructor(
-    context: Context,
-    viewModel: DeviceBasedSatelliteViewModel,
-) : BindableIcon {
+constructor(context: Context, viewModel: DeviceBasedSatelliteViewModel) : BindableIcon {
     override val slot: String =
         context.getString(com.android.internal.R.string.status_bar_oem_satellite)
 
@@ -42,5 +38,5 @@
         }
     }
 
-    override val shouldBindIcon: Boolean = oemEnabledSatelliteFlag()
+    override val shouldBindIcon: Boolean = true
 }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/Clock.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/Clock.java
index dd742ff..9a81992 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/Clock.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/Clock.java
@@ -108,10 +108,6 @@
     private boolean mShowSeconds;
     private Handler mSecondsHandler;
 
-    // Fields to cache the width so the clock remains at an approximately constant width
-    private int mCharsAtCurrentWidth = -1;
-    private int mCachedWidth = -1;
-
     /**
      * Color to be set on this {@link TextView}, when wallpaperTextColor is <b>not</b> utilized.
      */
@@ -326,32 +322,6 @@
         setContentDescription(mContentDescriptionFormat.format(mCalendar.getTime()));
     }
 
-    /**
-     * In order to avoid the clock growing and shrinking due to proportional fonts, we want to
-     * cache the drawn width at a given number of characters (removing the cache when it changes),
-     * and only use the biggest value. This means that the clock width with grow to the maximum
-     * size over time, but reset whenever the number of characters changes (or the configuration
-     * changes)
-     */
-    @Override
-    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
-        super.onMeasure(widthMeasureSpec, heightMeasureSpec);
-
-        int chars = getText().length();
-        if (chars != mCharsAtCurrentWidth) {
-            mCharsAtCurrentWidth = chars;
-            mCachedWidth = getMeasuredWidth();
-            return;
-        }
-
-        int measuredWidth = getMeasuredWidth();
-        if (mCachedWidth > measuredWidth) {
-            setMeasuredDimension(mCachedWidth, getMeasuredHeight());
-        } else {
-            mCachedWidth = measuredWidth;
-        }
-    }
-
     @Override
     public void onTuningChanged(String key, String newValue) {
         if (CLOCK_SECONDS.equals(key)) {
@@ -402,9 +372,6 @@
     }
 
     private void reloadDimens() {
-        // reset mCachedWidth so the new width would be updated properly when next onMeasure
-        mCachedWidth = -1;
-
         FontSizeUtils.updateFontSize(this, R.dimen.status_bar_clock_size);
         setPaddingRelative(
                 mContext.getResources().getDimensionPixelSize(
diff --git a/packages/SystemUI/src/com/android/systemui/temporarydisplay/TemporaryViewDisplayController.kt b/packages/SystemUI/src/com/android/systemui/temporarydisplay/TemporaryViewDisplayController.kt
index 3c53d2d..6355767 100644
--- a/packages/SystemUI/src/com/android/systemui/temporarydisplay/TemporaryViewDisplayController.kt
+++ b/packages/SystemUI/src/com/android/systemui/temporarydisplay/TemporaryViewDisplayController.kt
@@ -34,7 +34,6 @@
 import androidx.annotation.VisibleForTesting
 import com.android.app.viewcapture.ViewCaptureAwareWindowManager
 import com.android.systemui.CoreStartable
-import com.android.systemui.Dumpable
 import com.android.systemui.dagger.qualifiers.Main
 import com.android.systemui.dump.DumpManager
 import com.android.systemui.statusbar.policy.ConfigurationController
@@ -81,7 +80,7 @@
     private val wakeLockBuilder: WakeLock.Builder,
     private val systemClock: SystemClock,
     internal val tempViewUiEventLogger: TemporaryViewUiEventLogger,
-) : CoreStartable, Dumpable {
+) : CoreStartable {
     /**
      * Window layout params that will be used as a starting point for the [windowLayoutParams] of
      * all subclasses.
diff --git a/packages/SystemUI/src/com/android/systemui/volume/dialog/VolumeDialog.kt b/packages/SystemUI/src/com/android/systemui/volume/dialog/VolumeDialog.kt
index 86defff..bb8fe46 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/dialog/VolumeDialog.kt
+++ b/packages/SystemUI/src/com/android/systemui/volume/dialog/VolumeDialog.kt
@@ -17,7 +17,6 @@
 package com.android.systemui.volume.dialog
 
 import android.content.Context
-import android.graphics.PixelFormat
 import android.os.Bundle
 import android.view.MotionEvent
 import android.view.View
@@ -51,10 +50,8 @@
                     WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED
             )
             addPrivateFlags(WindowManager.LayoutParams.PRIVATE_FLAG_TRUSTED_OVERLAY)
-
             setType(WindowManager.LayoutParams.TYPE_VOLUME_OVERLAY)
             setWindowAnimations(-1)
-            setFormat(PixelFormat.TRANSLUCENT)
 
             attributes =
                 attributes.apply {
diff --git a/packages/SystemUI/src/com/android/systemui/volume/dialog/domain/interactor/VolumeDialogStateInteractor.kt b/packages/SystemUI/src/com/android/systemui/volume/dialog/domain/interactor/VolumeDialogStateInteractor.kt
index b3c92f8..fee49de 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/dialog/domain/interactor/VolumeDialogStateInteractor.kt
+++ b/packages/SystemUI/src/com/android/systemui/volume/dialog/domain/interactor/VolumeDialogStateInteractor.kt
@@ -95,6 +95,10 @@
         volumeDialogStateRepository.updateState { it.copy(isShowingCsdWarning = model) }
     }
 
+    fun setHovering(isHovering: Boolean) {
+        volumeDialogStateRepository.updateState { it.copy(isHovering = isHovering) }
+    }
+
     /** Returns a copy of [model] filled with the values from [VolumeDialogController.State]. */
     private fun VolumeDialogController.State.copyIntoModel(
         model: VolumeDialogStateModel
diff --git a/packages/SystemUI/src/com/android/systemui/volume/dialog/domain/interactor/VolumeDialogVisibilityInteractor.kt b/packages/SystemUI/src/com/android/systemui/volume/dialog/domain/interactor/VolumeDialogVisibilityInteractor.kt
index afe3d7b..bd23e8c 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/dialog/domain/interactor/VolumeDialogVisibilityInteractor.kt
+++ b/packages/SystemUI/src/com/android/systemui/volume/dialog/domain/interactor/VolumeDialogVisibilityInteractor.kt
@@ -18,6 +18,8 @@
 
 import android.annotation.SuppressLint
 import android.provider.Settings
+import android.view.accessibility.AccessibilityManager
+import com.android.systemui.accessibility.data.repository.AccessibilityRepository
 import com.android.systemui.plugins.VolumeDialogController
 import com.android.systemui.shared.settings.data.repository.SecureSettingsRepository
 import com.android.systemui.volume.Events
@@ -25,11 +27,13 @@
 import com.android.systemui.volume.dialog.dagger.scope.VolumeDialogPluginScope
 import com.android.systemui.volume.dialog.data.VolumeDialogVisibilityRepository
 import com.android.systemui.volume.dialog.domain.model.VolumeDialogEventModel
+import com.android.systemui.volume.dialog.shared.model.VolumeDialogSafetyWarningModel
 import com.android.systemui.volume.dialog.shared.model.VolumeDialogVisibilityModel
 import com.android.systemui.volume.dialog.shared.model.VolumeDialogVisibilityModel.Dismissed
 import com.android.systemui.volume.dialog.shared.model.VolumeDialogVisibilityModel.Visible
 import com.android.systemui.volume.dialog.utils.VolumeTracer
 import javax.inject.Inject
+import kotlin.time.Duration
 import kotlin.time.Duration.Companion.milliseconds
 import kotlin.time.Duration.Companion.seconds
 import kotlin.time.DurationUnit
@@ -38,7 +42,7 @@
 import kotlinx.coroutines.flow.Flow
 import kotlinx.coroutines.flow.MutableSharedFlow
 import kotlinx.coroutines.flow.SharingStarted
-import kotlinx.coroutines.flow.filterNotNull
+import kotlinx.coroutines.flow.first
 import kotlinx.coroutines.flow.launchIn
 import kotlinx.coroutines.flow.mapLatest
 import kotlinx.coroutines.flow.mapNotNull
@@ -58,12 +62,15 @@
 constructor(
     @VolumeDialogPlugin coroutineScope: CoroutineScope,
     callbacksInteractor: VolumeDialogCallbacksInteractor,
+    private val stateInteractor: VolumeDialogStateInteractor,
     private val tracer: VolumeTracer,
     private val repository: VolumeDialogVisibilityRepository,
+    private val accessibilityRepository: AccessibilityRepository,
     private val controller: VolumeDialogController,
     private val secureSettingsRepository: SecureSettingsRepository,
 ) {
 
+    /** @see computeTimeout */
     private val defaultTimeout = 3.seconds
 
     @SuppressLint("SharedFlowCreation")
@@ -71,20 +78,12 @@
     val dialogVisibility: Flow<VolumeDialogVisibilityModel> =
         repository.dialogVisibility
             .onEach { controller.notifyVisible(it is Visible) }
-            .stateIn(coroutineScope, SharingStarted.Eagerly, null)
-            .filterNotNull()
+            .stateIn(coroutineScope, SharingStarted.Eagerly, VolumeDialogVisibilityModel.Invisible)
 
     init {
         merge(
                 mutableDismissDialogEvents.mapLatest {
-                    delay(
-                        secureSettingsRepository
-                            .getInt(
-                                Settings.Secure.VOLUME_DIALOG_DISMISS_TIMEOUT,
-                                defaultTimeout.toInt(DurationUnit.MILLISECONDS),
-                            )
-                            .milliseconds
-                    )
+                    delay(computeTimeout())
                     VolumeDialogEventModel.DismissRequested(Events.DISMISS_REASON_TIMEOUT)
                 },
                 callbacksInteractor.event,
@@ -104,13 +103,7 @@
      * [dialogVisibility].
      */
     fun dismissDialog(reason: Int) {
-        updateVisibility { visibilityModel ->
-            if (visibilityModel is Dismissed) {
-                visibilityModel
-            } else {
-                Dismissed(reason)
-            }
-        }
+        updateVisibility { Dismissed(reason) }
     }
 
     /** Resets current dialog timeout. */
@@ -121,7 +114,47 @@
     private fun updateVisibility(
         update: (VolumeDialogVisibilityModel) -> VolumeDialogVisibilityModel
     ) {
-        repository.updateVisibility { update(it).also(tracer::traceVisibilityStart) }
+        repository.updateVisibility { currentVisibility ->
+            val newVisibility = update(currentVisibility)
+            // Don't update if the visibility is of the same type
+            if (currentVisibility::class == newVisibility::class) {
+                currentVisibility
+            } else {
+                tracer.traceVisibilityStart(newVisibility)
+                newVisibility
+            }
+        }
+    }
+
+    private suspend fun computeTimeout(): Duration {
+        val defaultDialogTimeoutMillis =
+            secureSettingsRepository
+                .getInt(
+                    Settings.Secure.VOLUME_DIALOG_DISMISS_TIMEOUT,
+                    defaultTimeout.toInt(DurationUnit.MILLISECONDS),
+                )
+                .milliseconds
+        val currentDialogState = stateInteractor.volumeDialogState.first()
+        return when {
+            currentDialogState.isHovering ->
+                accessibilityRepository.getRecommendedTimeout(
+                    defaultDialogTimeoutMillis,
+                    AccessibilityManager.FLAG_CONTENT_CONTROLS,
+                )
+
+            currentDialogState.isShowingSafetyWarning is VolumeDialogSafetyWarningModel.Visible ->
+                accessibilityRepository.getRecommendedTimeout(
+                    defaultDialogTimeoutMillis,
+                    AccessibilityManager.FLAG_CONTENT_TEXT or
+                        AccessibilityManager.FLAG_CONTENT_CONTROLS,
+                )
+
+            else ->
+                accessibilityRepository.getRecommendedTimeout(
+                    defaultDialogTimeoutMillis,
+                    AccessibilityManager.FLAG_CONTENT_CONTROLS,
+                )
+        }
     }
 
     private fun VolumeDialogEventModel.toVisibilityModel(): VolumeDialogVisibilityModel? {
@@ -129,6 +162,7 @@
             is VolumeDialogEventModel.DismissRequested -> Dismissed(reason)
             is VolumeDialogEventModel.ShowRequested ->
                 Visible(reason, keyguardLocked, lockTaskModeState)
+
             else -> null
         }
     }
diff --git a/packages/SystemUI/src/com/android/systemui/volume/dialog/ringer/ui/binder/VolumeDialogRingerViewBinder.kt b/packages/SystemUI/src/com/android/systemui/volume/dialog/ringer/ui/binder/VolumeDialogRingerViewBinder.kt
index 14eede6..3677d3b 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/dialog/ringer/ui/binder/VolumeDialogRingerViewBinder.kt
+++ b/packages/SystemUI/src/com/android/systemui/volume/dialog/ringer/ui/binder/VolumeDialogRingerViewBinder.kt
@@ -17,6 +17,7 @@
 package com.android.systemui.volume.dialog.ringer.ui.binder
 
 import android.animation.ArgbEvaluator
+import android.content.res.Configuration
 import android.graphics.drawable.GradientDrawable
 import android.view.LayoutInflater
 import android.view.View
@@ -127,6 +128,16 @@
                 when (ringerState) {
                     is RingerViewModelState.Available -> {
                         val uiModel = ringerState.uiModel
+                        val orientation =
+                            if (
+                                view.context.resources.getBoolean(
+                                    R.bool.volume_dialog_ringer_drawer_should_open_to_the_side
+                                )
+                            ) {
+                                ringerState.orientation
+                            } else {
+                                Configuration.ORIENTATION_PORTRAIT
+                            }
 
                         // Set up view background and visibility
                         drawerContainer.visibility = View.VISIBLE
@@ -144,7 +155,7 @@
                                 drawerContainer.closeDrawer(
                                     ringerBackgroundView,
                                     uiModel.currentButtonIndex,
-                                    ringerState.orientation,
+                                    orientation,
                                 )
                             }
                             is RingerDrawerState.Closed -> {
@@ -186,7 +197,7 @@
                                         drawerContainer.closeDrawer(
                                             ringerBackgroundView,
                                             uiModel.currentButtonIndex,
-                                            ringerState.orientation,
+                                            orientation,
                                         )
                                     }
                                 }
@@ -206,11 +217,7 @@
                                 } else {
                                     ringerDrawerTransitionListener.setProgressChangeEnabled(true)
                                 }
-                                updateOpenState(
-                                    drawerContainer,
-                                    ringerState.orientation,
-                                    ringerBackgroundView,
-                                )
+                                updateOpenState(drawerContainer, orientation, ringerBackgroundView)
                                 drawerContainer
                                     .getTransition(R.id.close_to_open_transition)
                                     .setInterpolatorInfo(
diff --git a/packages/SystemUI/src/com/android/systemui/volume/dialog/shared/model/VolumeDialogStateModel.kt b/packages/SystemUI/src/com/android/systemui/volume/dialog/shared/model/VolumeDialogStateModel.kt
index 89456fe..e5c3e5c 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/dialog/shared/model/VolumeDialogStateModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/volume/dialog/shared/model/VolumeDialogStateModel.kt
@@ -24,6 +24,7 @@
     val isShowingSafetyWarning: VolumeDialogSafetyWarningModel =
         VolumeDialogSafetyWarningModel.Invisible,
     val isShowingCsdWarning: VolumeDialogCsdWarningModel = VolumeDialogCsdWarningModel.Invisible,
+    val isHovering: Boolean = false,
     val streamModels: Map<Int, VolumeDialogStreamModel> = mapOf(),
     val ringerModeInternal: Int = 0,
     val ringerModeExternal: Int = 0,
diff --git a/packages/SystemUI/src/com/android/systemui/volume/dialog/sliders/ui/VolumeDialogSliderViewBinder.kt b/packages/SystemUI/src/com/android/systemui/volume/dialog/sliders/ui/VolumeDialogSliderViewBinder.kt
index a0e3fbd..43d1ef4 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/dialog/sliders/ui/VolumeDialogSliderViewBinder.kt
+++ b/packages/SystemUI/src/com/android/systemui/volume/dialog/sliders/ui/VolumeDialogSliderViewBinder.kt
@@ -29,18 +29,13 @@
 import androidx.compose.foundation.layout.padding
 import androidx.compose.foundation.layout.size
 import androidx.compose.material3.ExperimentalMaterial3Api
-import androidx.compose.material3.ExperimentalMaterial3ExpressiveApi
 import androidx.compose.material3.Icon
 import androidx.compose.material3.MaterialTheme
 import androidx.compose.material3.SliderDefaults
-import androidx.compose.material3.SliderState
-import androidx.compose.material3.VerticalSlider
 import androidx.compose.runtime.Composable
 import androidx.compose.runtime.LaunchedEffect
 import androidx.compose.runtime.getValue
-import androidx.compose.runtime.mutableFloatStateOf
 import androidx.compose.runtime.remember
-import androidx.compose.runtime.setValue
 import androidx.compose.ui.Alignment
 import androidx.compose.ui.Modifier
 import androidx.compose.ui.input.pointer.pointerInput
@@ -49,16 +44,17 @@
 import androidx.lifecycle.compose.collectAsStateWithLifecycle
 import com.android.compose.theme.PlatformTheme
 import com.android.compose.ui.graphics.painter.DrawablePainter
+import com.android.systemui.haptics.slider.SliderHapticFeedbackFilter
 import com.android.systemui.haptics.slider.compose.ui.SliderHapticsViewModel
-import com.android.systemui.lifecycle.rememberViewModel
 import com.android.systemui.res.R
 import com.android.systemui.volume.dialog.sliders.dagger.VolumeDialogSliderScope
 import com.android.systemui.volume.dialog.sliders.ui.compose.VolumeDialogSliderTrack
 import com.android.systemui.volume.dialog.sliders.ui.viewmodel.VolumeDialogOverscrollViewModel
 import com.android.systemui.volume.dialog.sliders.ui.viewmodel.VolumeDialogSliderViewModel
-import com.android.systemui.volume.haptics.ui.VolumeHapticsConfigsProvider
+import com.android.systemui.volume.ui.slider.AccessibilityParams
+import com.android.systemui.volume.ui.slider.Haptics
+import com.android.systemui.volume.ui.slider.Slider
 import javax.inject.Inject
-import kotlin.math.round
 import kotlinx.coroutines.coroutineScope
 import kotlinx.coroutines.currentCoroutineContext
 import kotlinx.coroutines.isActive
@@ -90,7 +86,7 @@
     }
 }
 
-@OptIn(ExperimentalMaterial3Api::class, ExperimentalMaterial3ExpressiveApi::class)
+@OptIn(ExperimentalMaterial3Api::class)
 @Composable
 private fun VolumeDialogSlider(
     viewModel: VolumeDialogSliderViewModel,
@@ -108,59 +104,8 @@
         )
     val collectedSliderStateModel by viewModel.state.collectAsStateWithLifecycle(null)
     val sliderStateModel = collectedSliderStateModel ?: return
-
-    val steps = with(sliderStateModel.valueRange) { endInclusive - start - 1 }.toInt()
-
     val interactionSource = remember { MutableInteractionSource() }
-    val hapticsViewModel: SliderHapticsViewModel? =
-        hapticsViewModelFactory?.let {
-            rememberViewModel(traceName = "SliderHapticsViewModel") {
-                it.create(
-                    interactionSource,
-                    sliderStateModel.valueRange,
-                    Orientation.Vertical,
-                    VolumeHapticsConfigsProvider.sliderHapticFeedbackConfig(
-                        sliderStateModel.valueRange
-                    ),
-                    VolumeHapticsConfigsProvider.seekableSliderTrackerConfig,
-                )
-            }
-        }
 
-    val sliderState =
-        remember(steps, sliderStateModel.valueRange) {
-            SliderState(
-                    value = sliderStateModel.value,
-                    valueRange = sliderStateModel.valueRange,
-                    steps = steps,
-                )
-                .also { sliderState ->
-                    sliderState.onValueChangeFinished = {
-                        viewModel.onSliderChangeFinished(sliderState.value)
-                        hapticsViewModel?.onValueChangeEnded()
-                    }
-                    sliderState.onValueChange = { newValue ->
-                        sliderState.value = newValue
-                        hapticsViewModel?.addVelocityDataPoint(newValue)
-                        overscrollViewModel.setSlider(
-                            value = sliderState.value,
-                            min = sliderState.valueRange.start,
-                            max = sliderState.valueRange.endInclusive,
-                        )
-                        viewModel.setStreamVolume(newValue, true)
-                    }
-                }
-        }
-
-    var lastDiscreteStep by remember { mutableFloatStateOf(round(sliderStateModel.value)) }
-    LaunchedEffect(sliderStateModel.value) {
-        val value = sliderStateModel.value
-        sliderState.value = value
-        if (value != lastDiscreteStep) {
-            lastDiscreteStep = value
-            hapticsViewModel?.onValueChange(value)
-        }
-    }
     LaunchedEffect(interactionSource) {
         interactionSource.interactions.collect {
             when (it) {
@@ -171,24 +116,33 @@
         }
     }
 
-    VerticalSlider(
-        state = sliderState,
-        enabled = !sliderStateModel.isDisabled,
-        reverseDirection = true,
+    Slider(
+        value = sliderStateModel.value,
+        valueRange = sliderStateModel.valueRange,
+        onValueChanged = { value ->
+            overscrollViewModel.setSlider(
+                value = value,
+                min = sliderStateModel.valueRange.start,
+                max = sliderStateModel.valueRange.endInclusive,
+            )
+            viewModel.setStreamVolume(value, true)
+        },
+        onValueChangeFinished = { viewModel.onSliderChangeFinished(it) },
+        isEnabled = !sliderStateModel.isDisabled,
+        isReverseDirection = true,
+        isVertical = true,
         colors = colors,
         interactionSource = interactionSource,
-        modifier =
-            modifier.pointerInput(Unit) {
-                coroutineScope {
-                    val currentContext = currentCoroutineContext()
-                    awaitPointerEventScope {
-                        while (currentContext.isActive) {
-                            viewModel.onTouchEvent(awaitPointerEvent())
-                        }
-                    }
-                }
-            },
-        track = {
+        haptics =
+            hapticsViewModelFactory?.let {
+                Haptics.Enabled(
+                    hapticsViewModelFactory = it,
+                    hapticFilter = SliderHapticFeedbackFilter(),
+                    orientation = Orientation.Vertical,
+                )
+            } ?: Haptics.Disabled,
+        stepDistance = 1f,
+        track = { sliderState ->
             VolumeDialogSliderTrack(
                 sliderState,
                 colors = colors,
@@ -201,6 +155,18 @@
                 },
             )
         },
+        accessibilityParams = AccessibilityParams(label = sliderStateModel.label),
+        modifier =
+            modifier.pointerInput(Unit) {
+                coroutineScope {
+                    val currentContext = currentCoroutineContext()
+                    awaitPointerEventScope {
+                        while (currentContext.isActive) {
+                            viewModel.onTouchEvent(awaitPointerEvent())
+                        }
+                    }
+                }
+            },
     )
 }
 
diff --git a/packages/SystemUI/src/com/android/systemui/volume/dialog/sliders/ui/viewmodel/VolumeDialogSliderStateModel.kt b/packages/SystemUI/src/com/android/systemui/volume/dialog/sliders/ui/viewmodel/VolumeDialogSliderStateModel.kt
index b01046b..88a061f 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/dialog/sliders/ui/viewmodel/VolumeDialogSliderStateModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/volume/dialog/sliders/ui/viewmodel/VolumeDialogSliderStateModel.kt
@@ -16,17 +16,21 @@
 
 package com.android.systemui.volume.dialog.sliders.ui.viewmodel
 
+import android.content.Context
 import android.graphics.drawable.Drawable
 import com.android.systemui.volume.dialog.shared.model.VolumeDialogStreamModel
+import com.android.systemui.volume.dialog.shared.model.streamLabel
 
 data class VolumeDialogSliderStateModel(
     val value: Float,
     val isDisabled: Boolean,
     val valueRange: ClosedFloatingPointRange<Float>,
     val icon: Drawable,
+    val label: String,
 )
 
 fun VolumeDialogStreamModel.toStateModel(
+    context: Context,
     isDisabled: Boolean,
     icon: Drawable,
 ): VolumeDialogSliderStateModel {
@@ -35,5 +39,6 @@
         isDisabled = isDisabled,
         valueRange = levelMin.toFloat()..levelMax.toFloat(),
         icon = icon,
+        label = streamLabel(context),
     )
 }
diff --git a/packages/SystemUI/src/com/android/systemui/volume/dialog/sliders/ui/viewmodel/VolumeDialogSliderViewModel.kt b/packages/SystemUI/src/com/android/systemui/volume/dialog/sliders/ui/viewmodel/VolumeDialogSliderViewModel.kt
index 19b2880..1f11f2d 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/dialog/sliders/ui/viewmodel/VolumeDialogSliderViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/volume/dialog/sliders/ui/viewmodel/VolumeDialogSliderViewModel.kt
@@ -16,6 +16,7 @@
 
 package com.android.systemui.volume.dialog.sliders.ui.viewmodel
 
+import android.content.Context
 import androidx.compose.ui.geometry.Offset
 import androidx.compose.ui.input.pointer.PointerEvent
 import androidx.compose.ui.input.pointer.PointerEventType
@@ -63,6 +64,7 @@
 class VolumeDialogSliderViewModel
 @Inject
 constructor(
+    private val context: Context,
     private val sliderType: VolumeDialogSliderType,
     private val interactor: VolumeDialogSliderInteractor,
     private val visibilityInteractor: VolumeDialogVisibilityInteractor,
@@ -114,7 +116,7 @@
                     }
                 },
             ) { isDisabledByZenMode, model, icon ->
-                model.toStateModel(icon = icon, isDisabled = isDisabledByZenMode)
+                model.toStateModel(context = context, icon = icon, isDisabled = isDisabledByZenMode)
             }
             .stateIn(coroutineScope, SharingStarted.Eagerly, null)
             .filterNotNull()
diff --git a/packages/SystemUI/src/com/android/systemui/volume/dialog/ui/binder/VolumeDialogViewBinder.kt b/packages/SystemUI/src/com/android/systemui/volume/dialog/ui/binder/VolumeDialogViewBinder.kt
index 0c10aaa..5de8fe5 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/dialog/ui/binder/VolumeDialogViewBinder.kt
+++ b/packages/SystemUI/src/com/android/systemui/volume/dialog/ui/binder/VolumeDialogViewBinder.kt
@@ -18,10 +18,12 @@
 
 import android.app.Dialog
 import android.content.Context
+import android.view.MotionEvent
 import android.view.View
 import android.view.ViewGroup
 import android.view.ViewTreeObserver
 import android.view.WindowInsets
+import android.view.accessibility.AccessibilityEvent
 import androidx.compose.ui.util.lerp
 import androidx.core.view.updatePadding
 import androidx.dynamicanimation.animation.DynamicAnimation
@@ -47,6 +49,7 @@
 import kotlinx.coroutines.ExperimentalCoroutinesApi
 import kotlinx.coroutines.flow.Flow
 import kotlinx.coroutines.flow.MutableStateFlow
+import kotlinx.coroutines.flow.filter
 import kotlinx.coroutines.flow.mapLatest
 import kotlinx.coroutines.flow.onEach
 import kotlinx.coroutines.flow.scan
@@ -81,9 +84,18 @@
         // Root view of the Volume Dialog.
         val root: ViewGroup = dialog.requireViewById(R.id.volume_dialog)
 
+        root.accessibilityDelegate = Accessibility(viewModel)
+        root.setOnHoverListener { _, event ->
+            viewModel.onHover(
+                event.actionMasked == MotionEvent.ACTION_HOVER_ENTER ||
+                    event.actionMasked == MotionEvent.ACTION_HOVER_MOVE
+            )
+            true
+        }
         animateVisibility(root, dialog, viewModel.dialogVisibilityModel)
 
         viewModel.dialogTitle
+            .filter { it.isNotEmpty() }
             .onEach { dialog.window?.setTitle(it) }
             .launchInTraced("VDVB#dialogTitle", this)
         viewModel.isHalfOpened
@@ -148,8 +160,9 @@
                         junkListener?.let(animation::removeUpdateListener)
                         junkListener =
                             jankListenerFactory.show(view).also(animation::addUpdateListener)
-                        animation.animateToFinalPosition(FRACTION_SHOW)
+                        animation.suspendAnimate(FRACTION_SHOW)
                     }
+
                     is VolumeDialogVisibilityModel.Dismissed -> {
                         tracer.traceVisibilityEnd(it)
                         junkListener?.let(animation::removeUpdateListener)
@@ -158,6 +171,7 @@
                         animation.suspendAnimate(FRACTION_HIDE)
                         dialog.dismiss()
                     }
+
                     is VolumeDialogVisibilityModel.Invisible -> {
                         // do nothing
                     }
@@ -200,4 +214,29 @@
         }
         animate().setDuration(150).translationY(offsetPx).suspendAnimate()
     }
+
+    private class Accessibility(private val viewModel: VolumeDialogViewModel) :
+        View.AccessibilityDelegate() {
+
+        override fun dispatchPopulateAccessibilityEvent(
+            host: View,
+            event: AccessibilityEvent,
+        ): Boolean {
+            // Activities populate their title here. Follow that example.
+            val title = viewModel.dialogTitle.value
+            if (title.isNotEmpty()) {
+                event.text.add(title)
+            }
+            return true
+        }
+
+        override fun onRequestSendAccessibilityEvent(
+            host: ViewGroup,
+            child: View,
+            event: AccessibilityEvent,
+        ): Boolean {
+            viewModel.resetDialogTimeout()
+            return super.onRequestSendAccessibilityEvent(host, child, event)
+        }
+    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/volume/dialog/ui/viewmodel/VolumeDialogViewModel.kt b/packages/SystemUI/src/com/android/systemui/volume/dialog/ui/viewmodel/VolumeDialogViewModel.kt
index 8bfbc36..2d8674b 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/dialog/ui/viewmodel/VolumeDialogViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/volume/dialog/ui/viewmodel/VolumeDialogViewModel.kt
@@ -27,6 +27,7 @@
 import com.android.systemui.statusbar.policy.DevicePostureController
 import com.android.systemui.statusbar.policy.devicePosture
 import com.android.systemui.statusbar.policy.onConfigChanged
+import com.android.systemui.volume.dialog.dagger.scope.VolumeDialog
 import com.android.systemui.volume.dialog.dagger.scope.VolumeDialogScope
 import com.android.systemui.volume.dialog.domain.interactor.VolumeDialogStateInteractor
 import com.android.systemui.volume.dialog.domain.interactor.VolumeDialogVisibilityInteractor
@@ -36,11 +37,14 @@
 import com.android.systemui.volume.dialog.sliders.domain.interactor.VolumeDialogSlidersInteractor
 import com.android.systemui.volume.dialog.sliders.domain.model.VolumeDialogSliderType
 import javax.inject.Inject
+import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.flow.Flow
+import kotlinx.coroutines.flow.SharingStarted
+import kotlinx.coroutines.flow.StateFlow
 import kotlinx.coroutines.flow.combine
-import kotlinx.coroutines.flow.filterNotNull
 import kotlinx.coroutines.flow.map
 import kotlinx.coroutines.flow.onStart
+import kotlinx.coroutines.flow.stateIn
 import kotlinx.coroutines.suspendCancellableCoroutine
 
 /** Provides a state for the Volume Dialog. */
@@ -49,9 +53,10 @@
 @Inject
 constructor(
     private val context: Context,
-    dialogVisibilityInteractor: VolumeDialogVisibilityInteractor,
+    @VolumeDialog coroutineScope: CoroutineScope,
+    private val dialogVisibilityInteractor: VolumeDialogVisibilityInteractor,
     volumeDialogSlidersInteractor: VolumeDialogSlidersInteractor,
-    volumeDialogStateInteractor: VolumeDialogStateInteractor,
+    private val volumeDialogStateInteractor: VolumeDialogStateInteractor,
     devicePostureController: DevicePostureController,
     configurationController: ConfigurationController,
 ) {
@@ -67,16 +72,16 @@
         }
     val dialogVisibilityModel: Flow<VolumeDialogVisibilityModel> =
         dialogVisibilityInteractor.dialogVisibility
-    val dialogTitle: Flow<String> =
+    val dialogTitle: StateFlow<String> =
         combine(
                 volumeDialogStateInteractor.volumeDialogState,
                 volumeDialogSlidersInteractor.sliders.map { it.slider },
             ) { state: VolumeDialogStateModel, sliderType: VolumeDialogSliderType ->
                 state.streamModels[sliderType.audioStream]?.let { model ->
                     context.getString(R.string.volume_dialog_title, model.streamLabel(context))
-                }
+                } ?: ""
             }
-            .filterNotNull()
+            .stateIn(coroutineScope, SharingStarted.Eagerly, "")
 
     private val touchableBoundsViews: MutableCollection<View> = mutableSetOf()
 
@@ -101,4 +106,13 @@
         touchableBoundsViews.addAll(views)
         it.invokeOnCancellation { touchableBoundsViews.removeAll(views.toSet()) }
     }
+
+    fun onHover(isHovering: Boolean) {
+        volumeDialogStateInteractor.setHovering(isHovering)
+        resetDialogTimeout()
+    }
+
+    fun resetDialogTimeout() {
+        dialogVisibilityInteractor.resetDismissTimeout()
+    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/volume/panel/component/volume/slider/ui/viewmodel/AudioSharingStreamSliderViewModel.kt b/packages/SystemUI/src/com/android/systemui/volume/panel/component/volume/slider/ui/viewmodel/AudioSharingStreamSliderViewModel.kt
index 3efb2b4..3d98eba 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/panel/component/volume/slider/ui/viewmodel/AudioSharingStreamSliderViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/volume/panel/component/volume/slider/ui/viewmodel/AudioSharingStreamSliderViewModel.kt
@@ -116,8 +116,8 @@
         override val isEnabled: Boolean
             get() = true
 
-        override val a11yStep: Int
-            get() = 1
+        override val a11yStep: Float
+            get() = 1f
 
         override val disabledMessage: String?
             get() = null
diff --git a/packages/SystemUI/src/com/android/systemui/volume/panel/component/volume/slider/ui/viewmodel/AudioStreamSliderViewModel.kt b/packages/SystemUI/src/com/android/systemui/volume/panel/component/volume/slider/ui/viewmodel/AudioStreamSliderViewModel.kt
index f9d776b..9d32285 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/panel/component/volume/slider/ui/viewmodel/AudioStreamSliderViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/volume/panel/component/volume/slider/ui/viewmodel/AudioStreamSliderViewModel.kt
@@ -165,7 +165,7 @@
             label = label,
             disabledMessage = disabledMessage,
             isEnabled = isEnabled,
-            a11yStep = volumeRange.step,
+            a11yStep = volumeRange.step.toFloat(),
             a11yClickDescription =
                 if (isAffectedByMute) {
                     context.getString(
@@ -307,7 +307,7 @@
         override val label: String,
         override val disabledMessage: String?,
         override val isEnabled: Boolean,
-        override val a11yStep: Int,
+        override val a11yStep: Float,
         override val a11yClickDescription: String?,
         override val a11yStateDescription: String?,
         override val isMutable: Boolean,
diff --git a/packages/SystemUI/src/com/android/systemui/volume/panel/component/volume/slider/ui/viewmodel/CastVolumeSliderViewModel.kt b/packages/SystemUI/src/com/android/systemui/volume/panel/component/volume/slider/ui/viewmodel/CastVolumeSliderViewModel.kt
index d74a433..a6c8091 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/panel/component/volume/slider/ui/viewmodel/CastVolumeSliderViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/volume/panel/component/volume/slider/ui/viewmodel/CastVolumeSliderViewModel.kt
@@ -86,7 +86,7 @@
             icon = Icon.Resource(R.drawable.ic_cast, null),
             label = context.getString(R.string.media_device_cast),
             isEnabled = true,
-            a11yStep = 1,
+            a11yStep = 1f,
         )
     }
 
@@ -96,7 +96,7 @@
         override val icon: Icon,
         override val label: String,
         override val isEnabled: Boolean,
-        override val a11yStep: Int,
+        override val a11yStep: Float,
     ) : SliderState {
         override val hapticFilter: SliderHapticFeedbackFilter
             get() = SliderHapticFeedbackFilter()
diff --git a/packages/SystemUI/src/com/android/systemui/volume/panel/component/volume/slider/ui/viewmodel/SliderState.kt b/packages/SystemUI/src/com/android/systemui/volume/panel/component/volume/slider/ui/viewmodel/SliderState.kt
index f135371..4bc237b 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/panel/component/volume/slider/ui/viewmodel/SliderState.kt
+++ b/packages/SystemUI/src/com/android/systemui/volume/panel/component/volume/slider/ui/viewmodel/SliderState.kt
@@ -36,7 +36,7 @@
      * A11y slider controls works by adjusting one step up or down. The default slider step isn't
      * enough to trigger rounding to the correct value.
      */
-    val a11yStep: Int
+    val a11yStep: Float
     val a11yClickDescription: String?
     val a11yStateDescription: String?
     val disabledMessage: String?
@@ -49,7 +49,7 @@
         override val icon: Icon? = null
         override val label: String = ""
         override val disabledMessage: String? = null
-        override val a11yStep: Int = 0
+        override val a11yStep: Float = 0f
         override val a11yClickDescription: String? = null
         override val a11yStateDescription: String? = null
         override val isEnabled: Boolean = true
diff --git a/packages/SystemUI/src/com/android/systemui/volume/ui/slider/Slider.kt b/packages/SystemUI/src/com/android/systemui/volume/ui/slider/Slider.kt
new file mode 100644
index 0000000..720d550
--- /dev/null
+++ b/packages/SystemUI/src/com/android/systemui/volume/ui/slider/Slider.kt
@@ -0,0 +1,265 @@
+/*
+ * Copyright (C) 2025 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.
+ */
+
+@file:OptIn(ExperimentalMaterial3Api::class, ExperimentalMaterial3ExpressiveApi::class)
+
+package com.android.systemui.volume.ui.slider
+
+import androidx.compose.animation.core.Animatable
+import androidx.compose.animation.core.Spring
+import androidx.compose.animation.core.SpringSpec
+import androidx.compose.foundation.gestures.Orientation
+import androidx.compose.foundation.interaction.MutableInteractionSource
+import androidx.compose.material3.ExperimentalMaterial3Api
+import androidx.compose.material3.ExperimentalMaterial3ExpressiveApi
+import androidx.compose.material3.Slider
+import androidx.compose.material3.SliderColors
+import androidx.compose.material3.SliderDefaults
+import androidx.compose.material3.SliderState
+import androidx.compose.material3.VerticalSlider
+import androidx.compose.runtime.Composable
+import androidx.compose.runtime.LaunchedEffect
+import androidx.compose.runtime.getValue
+import androidx.compose.runtime.mutableFloatStateOf
+import androidx.compose.runtime.mutableStateOf
+import androidx.compose.runtime.remember
+import androidx.compose.runtime.rememberCoroutineScope
+import androidx.compose.runtime.setValue
+import androidx.compose.runtime.snapshotFlow
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.semantics.ProgressBarRangeInfo
+import androidx.compose.ui.semantics.SemanticsPropertyReceiver
+import androidx.compose.ui.semantics.clearAndSetSemantics
+import androidx.compose.ui.semantics.contentDescription
+import androidx.compose.ui.semantics.disabled
+import androidx.compose.ui.semantics.progressBarRangeInfo
+import androidx.compose.ui.semantics.setProgress
+import androidx.compose.ui.semantics.stateDescription
+import com.android.systemui.haptics.slider.SliderHapticFeedbackFilter
+import com.android.systemui.haptics.slider.compose.ui.SliderHapticsViewModel
+import com.android.systemui.lifecycle.rememberViewModel
+import com.android.systemui.res.R
+import com.android.systemui.volume.haptics.ui.VolumeHapticsConfigsProvider
+import kotlin.math.round
+import kotlinx.coroutines.Job
+import kotlinx.coroutines.flow.distinctUntilChanged
+import kotlinx.coroutines.flow.filter
+import kotlinx.coroutines.flow.map
+import kotlinx.coroutines.launch
+
+private val defaultSpring =
+    SpringSpec<Float>(dampingRatio = Spring.DampingRatioNoBouncy, stiffness = Spring.StiffnessHigh)
+private val defaultTrack: @Composable (SliderState) -> Unit =
+    @Composable { SliderDefaults.Track(it) }
+
+@Composable
+fun Slider(
+    value: Float,
+    valueRange: ClosedFloatingPointRange<Float>,
+    onValueChanged: (Float) -> Unit,
+    onValueChangeFinished: ((Float) -> Unit)?,
+    stepDistance: Float,
+    isEnabled: Boolean,
+    accessibilityParams: AccessibilityParams,
+    modifier: Modifier = Modifier,
+    colors: SliderColors = SliderDefaults.colors(),
+    interactionSource: MutableInteractionSource = remember { MutableInteractionSource() },
+    haptics: Haptics = Haptics.Disabled,
+    isVertical: Boolean = false,
+    isReverseDirection: Boolean = false,
+    track: (@Composable (SliderState) -> Unit)? = null,
+) {
+    require(stepDistance > 0) { "stepDistance must be positive" }
+    val coroutineScope = rememberCoroutineScope()
+    val snappedValue = snapValue(value, valueRange, stepDistance)
+    val hapticsViewModel = haptics.createViewModel(snappedValue, valueRange, interactionSource)
+
+    val animatable = remember { Animatable(snappedValue) }
+    var animationJob: Job? by remember { mutableStateOf(null) }
+    val sliderState =
+        remember(valueRange) { SliderState(value = snappedValue, valueRange = valueRange) }
+    val valueChange: (Float) -> Unit = { newValue ->
+        hapticsViewModel?.onValueChange(newValue)
+        val snappedNewValue = snapValue(newValue, valueRange, stepDistance)
+        if (animatable.targetValue != snappedNewValue) {
+            onValueChanged(snappedNewValue)
+            animationJob?.cancel()
+            animationJob =
+                coroutineScope.launch {
+                    animatable.animateTo(
+                        targetValue = snappedNewValue,
+                        animationSpec = defaultSpring,
+                    )
+                }
+        }
+    }
+    val semantics =
+        accessibilityParams.createSemantics(
+            animatable.targetValue,
+            valueRange,
+            valueChange,
+            isEnabled,
+            stepDistance,
+        )
+
+    LaunchedEffect(snappedValue) {
+        if (!animatable.isRunning && animatable.targetValue != snappedValue) {
+            animationJob?.cancel()
+            animationJob =
+                coroutineScope.launch {
+                    animatable.animateTo(targetValue = snappedValue, animationSpec = defaultSpring)
+                }
+        }
+    }
+
+    sliderState.onValueChangeFinished = {
+        hapticsViewModel?.onValueChangeEnded()
+        onValueChangeFinished?.invoke(animatable.targetValue)
+    }
+    sliderState.onValueChange = valueChange
+    sliderState.value = animatable.value
+
+    if (isVertical) {
+        VerticalSlider(
+            state = sliderState,
+            enabled = isEnabled,
+            reverseDirection = isReverseDirection,
+            interactionSource = interactionSource,
+            colors = colors,
+            track = track ?: defaultTrack,
+            modifier = modifier.clearAndSetSemantics(semantics),
+        )
+    } else {
+        Slider(
+            state = sliderState,
+            enabled = isEnabled,
+            interactionSource = interactionSource,
+            colors = colors,
+            track = track ?: defaultTrack,
+            modifier = modifier.clearAndSetSemantics(semantics),
+        )
+    }
+}
+
+private fun snapValue(
+    value: Float,
+    valueRange: ClosedFloatingPointRange<Float>,
+    stepDistance: Float,
+): Float {
+    if (stepDistance == 0f) {
+        return value
+    }
+    val coercedValue = value.coerceIn(valueRange)
+    return Math.round(coercedValue / stepDistance) * stepDistance
+}
+
+@Composable
+private fun AccessibilityParams.createSemantics(
+    value: Float,
+    valueRange: ClosedFloatingPointRange<Float>,
+    onValueChanged: (Float) -> Unit,
+    isEnabled: Boolean,
+    stepDistance: Float,
+): SemanticsPropertyReceiver.() -> Unit {
+    val semanticsContentDescription =
+        disabledMessage
+            ?.takeIf { !isEnabled }
+            ?.let { message ->
+                stringResource(R.string.volume_slider_disabled_message_template, label, message)
+            } ?: label
+    return {
+        contentDescription = semanticsContentDescription
+        if (isEnabled) {
+            currentStateDescription?.let { stateDescription = it }
+            progressBarRangeInfo = ProgressBarRangeInfo(value, valueRange)
+        } else {
+            disabled()
+        }
+        setProgress { targetValue ->
+            val targetDirection =
+                when {
+                    targetValue > value -> 1
+                    targetValue < value -> -1
+                    else -> 0
+                }
+
+            val newValue =
+                (value + targetDirection * stepDistance).coerceIn(
+                    valueRange.start,
+                    valueRange.endInclusive,
+                )
+            onValueChanged(newValue)
+            true
+        }
+    }
+}
+
+@Composable
+private fun Haptics.createViewModel(
+    value: Float,
+    valueRange: ClosedFloatingPointRange<Float>,
+    interactionSource: MutableInteractionSource,
+): SliderHapticsViewModel? {
+    return when (this) {
+        is Haptics.Disabled -> null
+        is Haptics.Enabled -> {
+            hapticsViewModelFactory.let {
+                rememberViewModel(traceName = "SliderHapticsViewModel") {
+                        it.create(
+                            interactionSource,
+                            valueRange,
+                            orientation,
+                            VolumeHapticsConfigsProvider.sliderHapticFeedbackConfig(
+                                valueRange,
+                                hapticFilter,
+                            ),
+                            VolumeHapticsConfigsProvider.seekableSliderTrackerConfig,
+                        )
+                    }
+                    .also { hapticsViewModel ->
+                        var lastDiscreteStep by remember { mutableFloatStateOf(value) }
+                        LaunchedEffect(value) {
+                            snapshotFlow { value }
+                                .map { round(it) }
+                                .filter { it != lastDiscreteStep }
+                                .distinctUntilChanged()
+                                .collect { discreteStep ->
+                                    lastDiscreteStep = discreteStep
+                                    hapticsViewModel.onValueChange(discreteStep)
+                                }
+                        }
+                    }
+            }
+        }
+    }
+}
+
+data class AccessibilityParams(
+    val label: String,
+    val currentStateDescription: String? = null,
+    val disabledMessage: String? = null,
+)
+
+sealed interface Haptics {
+    data object Disabled : Haptics
+
+    data class Enabled(
+        val hapticsViewModelFactory: SliderHapticsViewModel.Factory,
+        val hapticFilter: SliderHapticFeedbackFilter,
+        val orientation: Orientation,
+    ) : Haptics
+}
diff --git a/packages/SystemUI/src/com/android/systemui/wallpapers/ui/viewmodel/WallpaperFocalAreaViewModel.kt b/packages/SystemUI/src/com/android/systemui/wallpapers/ui/viewmodel/WallpaperFocalAreaViewModel.kt
index 4cd49d0..1e78b12 100644
--- a/packages/SystemUI/src/com/android/systemui/wallpapers/ui/viewmodel/WallpaperFocalAreaViewModel.kt
+++ b/packages/SystemUI/src/com/android/systemui/wallpapers/ui/viewmodel/WallpaperFocalAreaViewModel.kt
@@ -26,6 +26,7 @@
 import javax.inject.Inject
 import kotlinx.coroutines.flow.combine
 import kotlinx.coroutines.flow.filter
+import kotlinx.coroutines.flow.filterNotNull
 import kotlinx.coroutines.flow.map
 
 class WallpaperFocalAreaViewModel
@@ -39,25 +40,31 @@
     val wallpaperFocalAreaBounds =
         combine(
                 wallpaperFocalAreaInteractor.wallpaperFocalAreaBounds,
+                keyguardTransitionInteractor.startedKeyguardTransitionStep,
+                // Emit transition state when FINISHED instead of STARTED to avoid race with
+                // wakingup command, causing layout change command not be received.
                 keyguardTransitionInteractor
                     .transition(
                         edge = Edge.create(to = Scenes.Lockscreen),
                         edgeWithoutSceneContainer = Edge.create(to = KeyguardState.LOCKSCREEN),
                     )
-                    .filter { transitionStep ->
-                        // Should not filter by TransitionState.STARTED, it may race with
-                        // wakingup command, causing layout change command not be received.
-                        transitionStep.transitionState == TransitionState.FINISHED
-                    },
-                ::Pair,
+                    .filter { it.transitionState == TransitionState.FINISHED },
+                ::Triple,
             )
-            .map { (bounds, _) -> bounds }
+            .map { (bounds, startedStep, _) ->
+                // Avoid sending wrong bounds when transitioning from LOCKSCREEN to GONE
+                if (
+                    startedStep.to == KeyguardState.LOCKSCREEN &&
+                        startedStep.from != KeyguardState.LOCKSCREEN
+                ) {
+                    bounds
+                } else {
+                    null
+                }
+            }
+            .filterNotNull()
 
     fun setFocalAreaBounds(bounds: RectF) {
         wallpaperFocalAreaInteractor.setFocalAreaBounds(bounds)
     }
-
-    fun setTapPosition(x: Float, y: Float) {
-        wallpaperFocalAreaInteractor.setTapPosition(x, y)
-    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/wmshell/BubblesManager.java b/packages/SystemUI/src/com/android/systemui/wmshell/BubblesManager.java
index b23efce..8a447f7 100644
--- a/packages/SystemUI/src/com/android/systemui/wmshell/BubblesManager.java
+++ b/packages/SystemUI/src/com/android/systemui/wmshell/BubblesManager.java
@@ -70,6 +70,7 @@
 import com.android.systemui.statusbar.notification.collection.notifcollection.CommonNotifCollection;
 import com.android.systemui.statusbar.notification.collection.notifcollection.DismissedByUserStats;
 import com.android.systemui.statusbar.notification.collection.notifcollection.NotifCollectionListener;
+import com.android.systemui.statusbar.notification.collection.notifcollection.UpdateSource;
 import com.android.systemui.statusbar.notification.collection.render.NotificationVisibilityProvider;
 import com.android.systemui.statusbar.notification.interruption.VisualInterruptionDecisionProvider;
 import com.android.systemui.statusbar.phone.StatusBarWindowCallback;
@@ -444,8 +445,8 @@
             }
 
             @Override
-            public void onEntryUpdated(NotificationEntry entry, boolean fromSystem) {
-                BubblesManager.this.onEntryUpdated(entry, fromSystem);
+            public void onEntryUpdated(NotificationEntry entry, UpdateSource source) {
+                BubblesManager.this.onEntryUpdated(entry, source != UpdateSource.SystemUi);
             }
 
             @Override
diff --git a/packages/SystemUI/tests/src/com/android/systemui/biometrics/ui/viewmodel/PromptViewModelTest.kt b/packages/SystemUI/tests/src/com/android/systemui/biometrics/ui/viewmodel/PromptViewModelTest.kt
index b6c6347..0e68fce 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/biometrics/ui/viewmodel/PromptViewModelTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/biometrics/ui/viewmodel/PromptViewModelTest.kt
@@ -28,6 +28,7 @@
 import android.graphics.Rect
 import android.graphics.drawable.BitmapDrawable
 import android.hardware.biometrics.BiometricFingerprintConstants
+import android.hardware.biometrics.BiometricPrompt
 import android.hardware.biometrics.PromptContentItemBulletedText
 import android.hardware.biometrics.PromptContentView
 import android.hardware.biometrics.PromptContentViewWithMoreOptionsButton
@@ -42,6 +43,7 @@
 import android.view.HapticFeedbackConstants
 import android.view.MotionEvent
 import android.view.Surface
+import android.view.accessibility.accessibilityManager
 import androidx.test.filters.SmallTest
 import com.android.app.activityTaskManager
 import com.android.keyguard.AuthInteractionProperties
@@ -200,6 +202,8 @@
         overrideResource(R.dimen.biometric_dialog_face_icon_size, mockFaceIconSize)
 
         kosmos.applicationContext = context
+        whenever(kosmos.accessibilityManager.getRecommendedTimeoutMillis(anyInt(), anyInt()))
+            .thenReturn(BiometricPrompt.HIDE_DIALOG_DELAY)
 
         if (testCase.fingerprint?.isAnyUdfpsType == true) {
             kosmos.authController = authController
diff --git a/packages/SystemUI/tests/src/com/android/systemui/bluetooth/qsdialog/BluetoothDetailsContentViewModelTest.kt b/packages/SystemUI/tests/src/com/android/systemui/bluetooth/qsdialog/BluetoothDetailsContentViewModelTest.kt
index f04fc86..dbbdcf7 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/bluetooth/qsdialog/BluetoothDetailsContentViewModelTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/bluetooth/qsdialog/BluetoothDetailsContentViewModelTest.kt
@@ -28,9 +28,11 @@
 import com.android.settingslib.bluetooth.CachedBluetoothDevice
 import com.android.settingslib.bluetooth.LocalBluetoothManager
 import com.android.settingslib.flags.Flags
+import com.android.systemui.Flags.FLAG_QS_TILE_DETAILED_VIEW
 import com.android.systemui.SysuiTestCase
 import com.android.systemui.animation.DialogTransitionAnimator
 import com.android.systemui.animation.Expandable
+import com.android.systemui.flags.EnableSceneContainer
 import com.android.systemui.kosmos.testDispatcher
 import com.android.systemui.kosmos.testScope
 import com.android.systemui.plugins.ActivityStarter
@@ -194,9 +196,9 @@
     }
 
     @Test
-    fun testShowDetailsContent_noAnimation() {
+    fun testShowDialog_noAnimation() {
         testScope.runTest {
-            bluetoothDetailsContentViewModel.showDetailsContent(null, null)
+            bluetoothDetailsContentViewModel.showDialog(null)
             runCurrent()
 
             verify(mDialogTransitionAnimator, never()).show(any(), any(), any())
@@ -204,9 +206,9 @@
     }
 
     @Test
-    fun testShowDetailsContent_animated() {
+    fun testShowDialog_animated() {
         testScope.runTest {
-            bluetoothDetailsContentViewModel.showDetailsContent(expandable, null)
+            bluetoothDetailsContentViewModel.showDialog(expandable)
             runCurrent()
 
             verify(mDialogTransitionAnimator).show(any(), any(), anyBoolean())
@@ -214,9 +216,11 @@
     }
 
     @Test
-    fun testShowDetailsContent_animated_inDetailsView() {
+    @EnableSceneContainer
+    @EnableFlags(FLAG_QS_TILE_DETAILED_VIEW)
+    fun testBindDetailsView() {
         testScope.runTest {
-            bluetoothDetailsContentViewModel.showDetailsContent(expandable, mockView)
+            bluetoothDetailsContentViewModel.bindDetailsView(mockView)
             runCurrent()
 
             verify(bluetoothDetailsContentManager).bind(mockView)
@@ -225,10 +229,10 @@
     }
 
     @Test
-    fun testShowDetailsContent_animated_callInBackgroundThread() {
+    fun testShowDialog_animated_callInBackgroundThread() {
         testScope.runTest {
             backgroundExecutor.execute {
-                bluetoothDetailsContentViewModel.showDetailsContent(expandable, null)
+                bluetoothDetailsContentViewModel.showDialog(expandable)
                 runCurrent()
 
                 verify(mDialogTransitionAnimator).show(any(), any(), anyBoolean())
@@ -237,10 +241,12 @@
     }
 
     @Test
-    fun testShowDetailsContent_animated_callInBackgroundThread_inDetailsView() {
+    @EnableSceneContainer
+    @EnableFlags(FLAG_QS_TILE_DETAILED_VIEW)
+    fun testBindDetailsView_callInBackgroundThread() {
         testScope.runTest {
             backgroundExecutor.execute {
-                bluetoothDetailsContentViewModel.showDetailsContent(expandable, mockView)
+                bluetoothDetailsContentViewModel.bindDetailsView(mockView)
                 runCurrent()
 
                 verify(bluetoothDetailsContentManager).bind(mockView)
@@ -250,9 +256,21 @@
     }
 
     @Test
-    fun testShowDetailsContent_fetchDeviceItem() {
+    fun testShowDialog_fetchDeviceItem() {
         testScope.runTest {
-            bluetoothDetailsContentViewModel.showDetailsContent(null, null)
+            bluetoothDetailsContentViewModel.showDialog(null)
+            runCurrent()
+
+            verify(deviceItemInteractor).deviceItemUpdate
+        }
+    }
+
+    @Test
+    @EnableSceneContainer
+    @EnableFlags(FLAG_QS_TILE_DETAILED_VIEW)
+    fun testBindDetailsView_fetchDeviceItem() {
+        testScope.runTest {
+            bluetoothDetailsContentViewModel.bindDetailsView(mockView)
             runCurrent()
 
             verify(deviceItemInteractor).deviceItemUpdate
@@ -263,7 +281,24 @@
     fun testStartSettingsActivity_activityLaunched_dialogDismissed() {
         testScope.runTest {
             whenever(deviceItem.cachedBluetoothDevice).thenReturn(cachedBluetoothDevice)
-            bluetoothDetailsContentViewModel.showDetailsContent(null, null)
+            bluetoothDetailsContentViewModel.showDialog(null)
+            runCurrent()
+
+            val clickedView = View(context)
+            bluetoothDetailsContentViewModel.onPairNewDeviceClicked(clickedView)
+
+            verify(uiEventLogger).log(BluetoothTileDialogUiEvent.PAIR_NEW_DEVICE_CLICKED)
+            verify(activityStarter).postStartActivityDismissingKeyguard(any(), anyInt(), nullable())
+        }
+    }
+
+    @Test
+    @EnableSceneContainer
+    @EnableFlags(FLAG_QS_TILE_DETAILED_VIEW)
+    fun testStartSettingsActivity_activityLaunched_detailsViewDismissed() {
+        testScope.runTest {
+            whenever(deviceItem.cachedBluetoothDevice).thenReturn(cachedBluetoothDevice)
+            bluetoothDetailsContentViewModel.bindDetailsView(mockView)
             runCurrent()
 
             val clickedView = View(context)
diff --git a/packages/SystemUI/tests/src/com/android/systemui/media/controls/domain/pipeline/MediaDataFilterImplTest.kt b/packages/SystemUI/tests/src/com/android/systemui/media/controls/domain/pipeline/MediaDataFilterImplTest.kt
index b731c4f..0a8325d 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/media/controls/domain/pipeline/MediaDataFilterImplTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/media/controls/domain/pipeline/MediaDataFilterImplTest.kt
@@ -38,11 +38,7 @@
 import com.android.systemui.media.controls.shared.model.SmartspaceMediaData
 import com.android.systemui.media.controls.shared.model.SmartspaceMediaLoadingModel
 import com.android.systemui.media.controls.ui.controller.MediaPlayerData
-import com.android.systemui.media.controls.util.MediaFlags
-import com.android.systemui.media.controls.util.MediaSmartspaceLogger
 import com.android.systemui.media.controls.util.MediaUiEventLogger
-import com.android.systemui.media.controls.util.mediaSmartspaceLogger
-import com.android.systemui.media.controls.util.mockMediaSmartspaceLogger
 import com.android.systemui.settings.UserTracker
 import com.android.systemui.statusbar.NotificationLockscreenUserManager
 import com.android.systemui.testKosmos
@@ -95,7 +91,6 @@
     @Mock private lateinit var smartspaceData: SmartspaceMediaData
     @Mock private lateinit var smartspaceMediaRecommendationItem: SmartspaceAction
     @Mock private lateinit var logger: MediaUiEventLogger
-    @Mock private lateinit var mediaFlags: MediaFlags
     @Mock private lateinit var cardAction: SmartspaceAction
 
     private lateinit var mediaDataFilter: MediaDataFilterImpl
@@ -104,12 +99,7 @@
     private lateinit var dataGuest: MediaData
     private lateinit var dataPrivateProfile: MediaData
     private val clock = FakeSystemClock()
-    private val smartspaceLogger = kosmos.mockMediaSmartspaceLogger
-    private val repository: MediaFilterRepository =
-        with(kosmos) {
-            mediaSmartspaceLogger = mockMediaSmartspaceLogger
-            mediaFilterRepository
-        }
+    private val repository: MediaFilterRepository = with(kosmos) { mediaFilterRepository }
     private val mediaLogger = kosmos.mockMediaLogger
 
     @Before
@@ -126,7 +116,6 @@
                 executor,
                 clock,
                 logger,
-                mediaFlags,
                 repository,
                 mediaLogger,
             )
@@ -541,22 +530,8 @@
     @Test
     fun onSwipeToDismiss_setsTimedOut() {
         mediaDataFilter.onMediaDataLoaded(KEY, null, dataMain)
-        mediaDataFilter.onSwipeToDismiss(1)
+        mediaDataFilter.onSwipeToDismiss()
 
-        verify(smartspaceLogger, never())
-            .logSmartspaceCardUIEvent(
-                eq(MediaSmartspaceLogger.SMARTSPACE_CARD_DISMISS_EVENT),
-                anyInt(),
-                anyInt(),
-                anyInt(),
-                anyInt(),
-                anyBoolean(),
-                anyBoolean(),
-                anyInt(),
-                anyInt(),
-                anyInt(),
-                eq(true),
-            )
         verify(mediaDataProcessor).setInactive(eq(KEY), eq(true), eq(true))
     }
 
diff --git a/packages/SystemUI/tests/src/com/android/systemui/media/controls/domain/pipeline/MediaDataProcessorTest.kt b/packages/SystemUI/tests/src/com/android/systemui/media/controls/domain/pipeline/MediaDataProcessorTest.kt
index f9e8cbfc..93c27f0 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/media/controls/domain/pipeline/MediaDataProcessorTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/media/controls/domain/pipeline/MediaDataProcessorTest.kt
@@ -243,7 +243,6 @@
                 mediaDataCombineLatest = mediaDataCombineLatest,
                 mediaDataFilter = mediaDataFilter,
                 mediaFilterRepository = mediaFilterRepository,
-                mediaFlags = kosmos.mediaFlags,
             )
         mediaCarouselInteractor.start()
         verify(mediaTimeoutListener).stateCallback = capture(stateCallbackCaptor)
diff --git a/packages/SystemUI/tests/src/com/android/systemui/media/controls/ui/controller/MediaCarouselControllerTest.kt b/packages/SystemUI/tests/src/com/android/systemui/media/controls/ui/controller/MediaCarouselControllerTest.kt
index 58bae30..2001a3e 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/media/controls/ui/controller/MediaCarouselControllerTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/media/controls/ui/controller/MediaCarouselControllerTest.kt
@@ -56,7 +56,6 @@
 import com.android.systemui.media.controls.ui.view.MediaHostState
 import com.android.systemui.media.controls.ui.view.MediaScrollView
 import com.android.systemui.media.controls.ui.viewmodel.mediaCarouselViewModel
-import com.android.systemui.media.controls.util.MediaFlags
 import com.android.systemui.media.controls.util.MediaUiEventLogger
 import com.android.systemui.plugins.ActivityStarter
 import com.android.systemui.plugins.FalsingManager
@@ -136,7 +135,6 @@
     @Mock lateinit var mediaViewController: MediaViewController
     @Mock lateinit var mediaCarousel: MediaScrollView
     @Mock lateinit var pageIndicator: PageIndicator
-    @Mock lateinit var mediaFlags: MediaFlags
     @Mock lateinit var keyguardUpdateMonitor: KeyguardUpdateMonitor
     @Mock lateinit var globalSettings: GlobalSettings
     private val transitionRepository = kosmos.fakeKeyguardTransitionRepository
@@ -196,7 +194,6 @@
                 dumpManager = dumpManager,
                 logger = logger,
                 debugLogger = debugLogger,
-                mediaFlags = mediaFlags,
                 keyguardUpdateMonitor = keyguardUpdateMonitor,
                 keyguardTransitionInteractor = kosmos.keyguardTransitionInteractor,
                 globalSettings = globalSettings,
diff --git a/packages/SystemUI/tests/src/com/android/systemui/media/controls/ui/viewmodel/SeekBarViewModelTest.kt b/packages/SystemUI/tests/src/com/android/systemui/media/controls/ui/viewmodel/SeekBarViewModelTest.kt
index e035a02..f394c80 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/media/controls/ui/viewmodel/SeekBarViewModelTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/media/controls/ui/viewmodel/SeekBarViewModelTest.kt
@@ -16,6 +16,9 @@
 
 package com.android.systemui.media.controls.ui.viewmodel
 
+import android.icu.text.MeasureFormat
+import android.icu.util.Measure
+import android.icu.util.MeasureUnit
 import android.media.MediaMetadata
 import android.media.session.MediaController
 import android.media.session.MediaSession
@@ -34,6 +37,7 @@
 import com.android.systemui.util.concurrency.FakeRepeatableExecutor
 import com.android.systemui.util.time.FakeSystemClock
 import com.google.common.truth.Truth.assertThat
+import java.util.Locale
 import org.junit.After
 import org.junit.Before
 import org.junit.Ignore
@@ -155,6 +159,7 @@
         whenever(mockController.getPlaybackState()).thenReturn(state)
         // WHEN the controller is updated
         viewModel.updateController(mockController)
+        fakeExecutor.runNextReady()
         // THEN the duration is extracted
         assertThat(viewModel.progress.value!!.duration).isEqualTo(duration)
         assertThat(viewModel.progress.value!!.enabled).isTrue()
@@ -173,6 +178,7 @@
         whenever(mockController.getMetadata()).thenReturn(metadata)
         // WHEN the controller is updated
         viewModel.updateController(mockController)
+        fakeExecutor.runNextReady()
         // THEN the duration is extracted
         assertThat(viewModel.progress.value!!.duration).isEqualTo(duration)
         assertThat(viewModel.progress.value!!.enabled).isFalse()
@@ -197,6 +203,7 @@
         whenever(mockController.getPlaybackState()).thenReturn(state)
         // WHEN the controller is updated
         viewModel.updateController(mockController)
+        fakeExecutor.runNextReady()
         // THEN the seek bar is disabled
         assertThat(viewModel.progress.value!!.enabled).isFalse()
     }
@@ -220,6 +227,7 @@
         whenever(mockController.getPlaybackState()).thenReturn(state)
         // WHEN the controller is updated
         viewModel.updateController(mockController)
+        fakeExecutor.runNextReady()
         // THEN the seek bar is disabled
         assertThat(viewModel.progress.value!!.enabled).isFalse()
     }
@@ -238,6 +246,7 @@
         whenever(mockController.getPlaybackState()).thenReturn(state)
         // WHEN the controller is updated
         viewModel.updateController(mockController)
+        fakeExecutor.runNextReady()
         // THEN the seek bar is disabled
         assertThat(viewModel.progress.value!!.enabled).isFalse()
     }
@@ -254,6 +263,7 @@
         whenever(mockController.getPlaybackState()).thenReturn(state)
         // WHEN the controller is updated
         viewModel.updateController(mockController)
+        fakeExecutor.runNextReady()
         // THEN elapsed time is captured
         assertThat(viewModel.progress.value!!.elapsedTime).isEqualTo(200.toInt())
     }
@@ -536,6 +546,7 @@
         whenever(mockController.getPlaybackState()).thenReturn(state)
         // WHEN the controller is updated
         viewModel.updateController(mockController)
+        fakeExecutor.runNextReady()
         // THEN a task is queued
         assertThat(fakeExecutor.numPending()).isEqualTo(1)
     }
@@ -551,6 +562,7 @@
         whenever(mockController.getPlaybackState()).thenReturn(state)
         // WHEN updated
         viewModel.updateController(mockController)
+        fakeExecutor.runNextReady()
         // THEN an update task is not queued
         assertThat(fakeExecutor.numPending()).isEqualTo(0)
     }
@@ -572,6 +584,7 @@
         whenever(mockController.getPlaybackState()).thenReturn(state)
         // WHEN updated
         viewModel.updateController(mockController)
+        fakeExecutor.runNextReady()
         // THEN an update task is queued
         assertThat(fakeExecutor.numPending()).isEqualTo(1)
     }
@@ -593,6 +606,7 @@
         whenever(mockController.getPlaybackState()).thenReturn(state)
         // WHEN updated
         viewModel.updateController(mockController)
+        fakeExecutor.runNextReady()
         // THEN an update task is not queued
         assertThat(fakeExecutor.numPending()).isEqualTo(0)
     }
@@ -719,6 +733,7 @@
             }
         whenever(mockController.getPlaybackState()).thenReturn(state)
         viewModel.updateController(mockController)
+        fakeExecutor.runNextReady()
         // WHEN start listening
         viewModel.listening = true
         // THEN an update task is queued
@@ -820,6 +835,7 @@
         whenever(mockController.playbackState).thenReturn(state)
         val captor = ArgumentCaptor.forClass(MediaController.Callback::class.java)
         viewModel.updateController(mockController)
+        fakeExecutor.runNextReady()
         verify(mockController).registerCallback(captor.capture())
         assertThat(viewModel.progress.value!!.elapsedTime).isEqualTo(firstPosition.toInt())
 
@@ -831,8 +847,48 @@
                 build()
             }
         captor.value.onPlaybackStateChanged(secondState)
+        fakeExecutor.runNextReady()
 
         // THEN then elapsed time should be updated
         assertThat(viewModel.progress.value!!.elapsedTime).isEqualTo(secondPosition.toInt())
     }
+
+    @Test
+    fun contentDescriptionUpdated() {
+        // When there is a duration and position
+        val duration = (1.5 * 60 * 60 * 1000).toLong()
+        val metadata =
+            MediaMetadata.Builder().run {
+                putLong(MediaMetadata.METADATA_KEY_DURATION, duration)
+                build()
+            }
+        whenever(mockController.getMetadata()).thenReturn(metadata)
+
+        val elapsedTime = 3000L
+        val state =
+            PlaybackState.Builder().run {
+                setState(PlaybackState.STATE_PLAYING, elapsedTime, 1f)
+                build()
+            }
+        whenever(mockController.getPlaybackState()).thenReturn(state)
+
+        viewModel.updateController(mockController)
+        fakeExecutor.runNextReady()
+
+        // Then the content description is set
+        val result = viewModel.progress.value!!
+
+        val expectedProgress =
+            MeasureFormat.getInstance(Locale.getDefault(), MeasureFormat.FormatWidth.WIDE)
+                .formatMeasures(Measure(3, MeasureUnit.SECOND))
+        val expectedDuration =
+            MeasureFormat.getInstance(Locale.getDefault(), MeasureFormat.FormatWidth.WIDE)
+                .formatMeasures(
+                    Measure(1, MeasureUnit.HOUR),
+                    Measure(30, MeasureUnit.MINUTE),
+                    Measure(0, MeasureUnit.SECOND),
+                )
+        assertThat(result.durationDescription).isEqualTo(expectedDuration)
+        assertThat(result.elapsedTimeDescription).isEqualTo(expectedProgress)
+    }
 }
diff --git a/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaSwitchingControllerTest.java b/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaSwitchingControllerTest.java
index 88c2697..5c26dac 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaSwitchingControllerTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaSwitchingControllerTest.java
@@ -1573,6 +1573,25 @@
         assertThat(items.get(1).isFirstDeviceInGroup()).isFalse();
     }
 
+    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_DEVICE_GROUPING)
+    @Test
+    public void deviceListUpdateWithDifferentDevices_firstSelectedDeviceIsFirstDeviceInGroup() {
+        when(mLocalMediaManager.isPreferenceRouteListingExist()).thenReturn(true);
+        doReturn(mMediaDevices)
+                .when(mLocalMediaManager)
+                .getSelectedMediaDevice();
+        mMediaSwitchingController.start(mCb);
+        reset(mCb);
+        mMediaSwitchingController.getMediaItemList().clear();
+        mMediaSwitchingController.onDeviceListUpdate(mMediaDevices);
+        mMediaDevices.clear();
+        mMediaDevices.add(mMediaDevice2);
+        mMediaSwitchingController.onDeviceListUpdate(mMediaDevices);
+
+        List<MediaItem> items = mMediaSwitchingController.getMediaItemList();
+        assertThat(items.get(0).isFirstDeviceInGroup()).isTrue();
+    }
+
     private int getNumberOfConnectDeviceButtons() {
         int numberOfConnectDeviceButtons = 0;
         for (MediaItem item : mMediaSwitchingController.getMediaItemList()) {
diff --git a/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/BluetoothTileTest.kt b/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/BluetoothTileTest.kt
index a7464e6..6f71df5 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/BluetoothTileTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/BluetoothTileTest.kt
@@ -40,7 +40,6 @@
 import com.android.systemui.util.mockito.whenever
 import com.google.common.truth.Truth.assertThat
 import dagger.Lazy
-import kotlin.test.assertTrue
 import kotlinx.coroutines.Job
 import org.junit.After
 import org.junit.Before
@@ -97,7 +96,9 @@
                 qsLogger,
                 bluetoothController,
                 featureFlags,
-            ) { bluetoothDetailsContentViewModel }
+            ) {
+                bluetoothDetailsContentViewModel
+            }
 
         tile.initialize()
         testableLooper.processAllMessages()
@@ -206,7 +207,6 @@
     @Test
     @DisableFlags(QsDetailedView.FLAG_NAME)
     fun handleClick_hasSatelliteFeatureButNoQsTileDialogAndClickIsProcessing_doNothing() {
-        mSetFlagsRule.enableFlags(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
         `when`(featureFlags.isEnabled(com.android.systemui.flags.Flags.BLUETOOTH_QS_TILE_DIALOG))
             .thenReturn(false)
         `when`(clickJob.isCompleted).thenReturn(false)
@@ -218,34 +218,8 @@
     }
 
     @Test
-    @DisableFlags(QsDetailedView.FLAG_NAME)
-    fun handleClick_noSatelliteFeatureAndNoQsTileDialog_directSetBtEnable() {
-        mSetFlagsRule.disableFlags(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
-        `when`(featureFlags.isEnabled(com.android.systemui.flags.Flags.BLUETOOTH_QS_TILE_DIALOG))
-            .thenReturn(false)
-
-        tile.handleClick(null)
-
-        verify(bluetoothController).setBluetoothEnabled(any())
-    }
-
-    @Test
-    @DisableFlags(QsDetailedView.FLAG_NAME)
-    fun handleClick_noSatelliteFeatureButHasQsTileDialog_showDialog() {
-        mSetFlagsRule.disableFlags(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
-        `when`(featureFlags.isEnabled(com.android.systemui.flags.Flags.BLUETOOTH_QS_TILE_DIALOG))
-            .thenReturn(true)
-
-        tile.handleClick(null)
-
-        verify(bluetoothDetailsContentViewModel)
-            .showDetailsContent(/* expandable= */ null, /* view= */ null)
-    }
-
-    @Test
     @EnableFlags(QsDetailedView.FLAG_NAME)
     fun handleClick_hasSatelliteFeatureAndQsDetailedViewIsEnabledAndClickIsProcessing_doNothing() {
-        mSetFlagsRule.enableFlags(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
         `when`(featureFlags.isEnabled(com.android.systemui.flags.Flags.BLUETOOTH_QS_TILE_DIALOG))
             .thenReturn(false)
         `when`(clickJob.isCompleted).thenReturn(false)
@@ -259,19 +233,6 @@
     }
 
     @Test
-    @EnableFlags(QsDetailedView.FLAG_NAME)
-    fun handleClick_noSatelliteFeatureAndQsDetailedViewIsEnabled_returnDetailsViewModel() {
-        mSetFlagsRule.disableFlags(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
-        `when`(featureFlags.isEnabled(com.android.systemui.flags.Flags.BLUETOOTH_QS_TILE_DIALOG))
-            .thenReturn(false)
-        var currentModel: TileDetailsViewModel? = null
-
-        tile.getDetailsViewModel { model: TileDetailsViewModel? -> currentModel = model }
-
-        assertTrue(currentModel != null)
-    }
-
-    @Test
     fun testMetadataListener_whenDisconnected_isUnregistered() {
         val state = QSTile.BooleanState()
         val cachedDevice = mock<CachedBluetoothDevice>()
diff --git a/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetDialogDelegateLegacyTest.java b/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetDialogDelegateLegacyTest.java
index 3d0a8f6..ebbe023 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetDialogDelegateLegacyTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetDialogDelegateLegacyTest.java
@@ -878,4 +878,18 @@
         mMobileDataLayout.setVisibility(mobileDataVisible ? View.VISIBLE : View.GONE);
         mConnectedWifi.setVisibility(connectedWifiVisible ? View.VISIBLE : View.GONE);
     }
+
+    @Test
+    public void updateDialog_wifiIsDisabled_turnOffProgressBar() {
+        when(mInternetDetailsContentController.isWifiEnabled()).thenReturn(false);
+        mInternetDialogDelegateLegacy.mIsProgressBarVisible = true;
+
+        mInternetDialogDelegateLegacy.updateDialog(false);
+
+        mBgExecutor.runAllReady();
+        mInternetDialogDelegateLegacy.mDataInternetContent.observe(
+                mInternetDialogDelegateLegacy.mLifecycleOwner, i -> {
+                    assertThat(mInternetDialogDelegateLegacy.mIsProgressBarVisible).isFalse();
+                });
+    }
 }
diff --git a/packages/SystemUI/tests/src/com/android/systemui/screenshot/ActionIntentCreatorTest.kt b/packages/SystemUI/tests/src/com/android/systemui/screenshot/ActionIntentCreatorTest.kt
index 67eaf7b..6005725 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/screenshot/ActionIntentCreatorTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/screenshot/ActionIntentCreatorTest.kt
@@ -19,29 +19,39 @@
 import android.content.ComponentName
 import android.content.Context
 import android.content.Intent
+import android.content.pm.ActivityInfo
+import android.content.pm.PackageInfo
+import android.content.pm.PackageManager
 import android.net.Uri
+import android.platform.test.annotations.DisableFlags
+import android.platform.test.annotations.EnableFlags
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.ext.truth.content.IntentSubject.assertThat as assertThatIntent
 import androidx.test.filters.SmallTest
-import com.android.systemui.res.R
 import com.android.systemui.SysuiTestCase
+import com.android.systemui.res.R
+import com.android.systemui.shared.Flags
 import com.android.systemui.util.mockito.eq
 import com.android.systemui.util.mockito.mock
 import com.google.common.truth.Truth.assertThat
 import com.google.common.truth.Truth.assertWithMessage
 import org.junit.Test
 import org.junit.runner.RunWith
+import org.mockito.ArgumentMatchers.anyInt
 import org.mockito.Mockito.`when` as whenever
 
 @SmallTest
 @RunWith(AndroidJUnit4::class)
 class ActionIntentCreatorTest : SysuiTestCase() {
+    val context = mock<Context>()
+    val packageManager = mock<PackageManager>()
+    private val actionIntentCreator = ActionIntentCreator(context, packageManager)
 
     @Test
     fun testCreateShare() {
         val uri = Uri.parse("content://fake")
 
-        val output = ActionIntentCreator.createShare(uri)
+        val output = actionIntentCreator.createShare(uri)
 
         assertThatIntent(output).hasAction(Intent.ACTION_CHOOSER)
         assertThatIntent(output)
@@ -66,7 +76,7 @@
     fun testCreateShare_embeddedUserIdRemoved() {
         val uri = Uri.parse("content://555@fake")
 
-        val output = ActionIntentCreator.createShare(uri)
+        val output = actionIntentCreator.createShare(uri)
 
         assertThatIntent(output.getParcelableExtra(Intent.EXTRA_INTENT, Intent::class.java))
             .hasData(Uri.parse("content://fake"))
@@ -77,7 +87,7 @@
         val uri = Uri.parse("content://fake")
         val subject = "Example subject"
 
-        val output = ActionIntentCreator.createShareWithSubject(uri, subject)
+        val output = actionIntentCreator.createShareWithSubject(uri, subject)
 
         assertThatIntent(output).hasAction(Intent.ACTION_CHOOSER)
         assertThatIntent(output)
@@ -101,7 +111,7 @@
         val uri = Uri.parse("content://fake")
         val extraText = "Extra text"
 
-        val output = ActionIntentCreator.createShareWithText(uri, extraText)
+        val output = actionIntentCreator.createShareWithText(uri, extraText)
 
         assertThatIntent(output).hasAction(Intent.ACTION_CHOOSER)
         assertThatIntent(output)
@@ -121,13 +131,13 @@
     }
 
     @Test
-    fun testCreateEdit() {
+    @DisableFlags(Flags.FLAG_USE_PREFERRED_IMAGE_EDITOR)
+    fun testCreateEditLegacy() {
         val uri = Uri.parse("content://fake")
-        val context = mock<Context>()
 
         whenever(context.getString(eq(R.string.config_screenshotEditor))).thenReturn("")
 
-        val output = ActionIntentCreator.createEdit(uri, context)
+        val output = actionIntentCreator.createEdit(uri)
 
         assertThatIntent(output).hasAction(Intent.ACTION_EDIT)
         assertThatIntent(output).hasData(uri)
@@ -144,26 +154,126 @@
     }
 
     @Test
-    fun testCreateEdit_embeddedUserIdRemoved() {
+    @DisableFlags(Flags.FLAG_USE_PREFERRED_IMAGE_EDITOR)
+    fun testCreateEditLegacy_embeddedUserIdRemoved() {
         val uri = Uri.parse("content://555@fake")
-        val context = mock<Context>()
         whenever(context.getString(eq(R.string.config_screenshotEditor))).thenReturn("")
 
-        val output = ActionIntentCreator.createEdit(uri, context)
+        val output = actionIntentCreator.createEdit(uri)
 
         assertThatIntent(output).hasData(Uri.parse("content://fake"))
     }
 
     @Test
-    fun testCreateEdit_withEditor() {
+    @DisableFlags(Flags.FLAG_USE_PREFERRED_IMAGE_EDITOR)
+    fun testCreateEditLegacy_withEditor() {
         val uri = Uri.parse("content://fake")
-        val context = mock<Context>()
         val component = ComponentName("com.android.foo", "com.android.foo.Something")
 
         whenever(context.getString(eq(R.string.config_screenshotEditor)))
             .thenReturn(component.flattenToString())
 
-        val output = ActionIntentCreator.createEdit(uri, context)
+        val output = actionIntentCreator.createEdit(uri)
+
+        assertThatIntent(output).hasComponent(component)
+    }
+
+    @Test
+    @EnableFlags(Flags.FLAG_USE_PREFERRED_IMAGE_EDITOR)
+    fun testCreateEdit() {
+        val uri = Uri.parse("content://fake")
+
+        whenever(context.getString(eq(R.string.config_screenshotEditor))).thenReturn("")
+
+        val output = actionIntentCreator.createEdit(uri)
+
+        assertThatIntent(output).hasAction(Intent.ACTION_EDIT)
+        assertThatIntent(output).hasData(uri)
+        assertThatIntent(output).hasType("image/png")
+        assertWithMessage("getComponent()").that(output.component).isNull()
+        assertThat(output.getStringExtra("edit_source")).isEqualTo("screenshot")
+        assertThatIntent(output)
+            .hasFlags(
+                Intent.FLAG_GRANT_READ_URI_PERMISSION or
+                    Intent.FLAG_GRANT_WRITE_URI_PERMISSION or
+                    Intent.FLAG_ACTIVITY_NEW_TASK or
+                    Intent.FLAG_ACTIVITY_CLEAR_TASK
+            )
+    }
+
+    @Test
+    @EnableFlags(Flags.FLAG_USE_PREFERRED_IMAGE_EDITOR)
+    fun testCreateEdit_embeddedUserIdRemoved() {
+        val uri = Uri.parse("content://555@fake")
+        whenever(context.getString(eq(R.string.config_screenshotEditor))).thenReturn("")
+
+        val output = actionIntentCreator.createEdit(uri)
+
+        assertThatIntent(output).hasData(Uri.parse("content://fake"))
+    }
+
+    @Test
+    @EnableFlags(Flags.FLAG_USE_PREFERRED_IMAGE_EDITOR)
+    fun testCreateEdit_withPreferredEditorEnabled() {
+        val uri = Uri.parse("content://fake")
+        val fallbackComponent = ComponentName("com.android.foo", "com.android.foo.Something")
+        val preferredComponent = ComponentName("com.android.bar", "com.android.bar.Something")
+
+        val packageInfo =
+            PackageInfo().apply {
+                activities =
+                    arrayOf(
+                        ActivityInfo().apply {
+                            packageName = preferredComponent.packageName
+                            name = preferredComponent.className
+                        }
+                    )
+            }
+        whenever(packageManager.getPackageInfo(eq(preferredComponent.packageName), anyInt()))
+            .thenReturn(packageInfo)
+        whenever(context.getString(eq(R.string.config_screenshotEditor)))
+            .thenReturn(fallbackComponent.flattenToString())
+        whenever(context.getString(eq(R.string.config_preferredScreenshotEditor)))
+            .thenReturn(preferredComponent.flattenToString())
+
+        val output = actionIntentCreator.createEdit(uri)
+
+        assertThatIntent(output).hasComponent(preferredComponent)
+    }
+
+    @Test
+    @EnableFlags(Flags.FLAG_USE_PREFERRED_IMAGE_EDITOR)
+    fun testCreateEdit_withPreferredEditorDisabled() {
+        val uri = Uri.parse("content://fake")
+        val fallbackComponent = ComponentName("com.android.foo", "com.android.foo.Something")
+        val preferredComponent = ComponentName("com.android.bar", "com.android.bar.Something")
+
+        val packageInfo =
+            PackageInfo().apply {
+                activities = arrayOf() // no activities
+            }
+        whenever(packageManager.getPackageInfo(eq(preferredComponent.packageName), anyInt()))
+            .thenReturn(packageInfo)
+        whenever(context.getString(eq(R.string.config_screenshotEditor)))
+            .thenReturn(fallbackComponent.flattenToString())
+        whenever(context.getString(eq(R.string.config_preferredScreenshotEditor)))
+            .thenReturn(preferredComponent.flattenToString())
+
+        val output = actionIntentCreator.createEdit(uri)
+
+        assertThatIntent(output).hasComponent(fallbackComponent)
+    }
+
+    @Test
+    @EnableFlags(Flags.FLAG_USE_PREFERRED_IMAGE_EDITOR)
+    fun testCreateEdit_withFallbackEditor() {
+        val uri = Uri.parse("content://fake")
+        val component = ComponentName("com.android.foo", "com.android.foo.Something")
+
+        whenever(context.getString(eq(R.string.config_screenshotEditor)))
+            .thenReturn(component.flattenToString())
+
+        val output = actionIntentCreator.createEdit(uri)
 
         assertThatIntent(output).hasComponent(component)
     }
diff --git a/packages/SystemUI/tests/src/com/android/systemui/shade/NotificationShadeWindowViewControllerTest.kt b/packages/SystemUI/tests/src/com/android/systemui/shade/NotificationShadeWindowViewControllerTest.kt
index 856ece7..e42bf19 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/shade/NotificationShadeWindowViewControllerTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/shade/NotificationShadeWindowViewControllerTest.kt
@@ -55,7 +55,7 @@
 import com.android.systemui.qs.flags.QSComposeFragment
 import com.android.systemui.res.R
 import com.android.systemui.settings.brightness.data.repository.BrightnessMirrorShowingRepository
-import com.android.systemui.settings.brightness.domain.interactor.BrightnessMirrorShowingInteractor
+import com.android.systemui.settings.brightness.domain.interactor.BrightnessMirrorShowingInteractorPassThrough
 import com.android.systemui.shade.NotificationShadeWindowView.InteractionEventHandler
 import com.android.systemui.shade.data.repository.ShadeAnimationRepository
 import com.android.systemui.shade.data.repository.ShadeRepositoryImpl
@@ -168,7 +168,7 @@
 
     private val brightnessMirrorShowingRepository = BrightnessMirrorShowingRepository()
     private val brightnessMirrorShowingInteractor =
-        BrightnessMirrorShowingInteractor(brightnessMirrorShowingRepository)
+        BrightnessMirrorShowingInteractorPassThrough(brightnessMirrorShowingRepository)
 
     private lateinit var falsingCollector: FalsingCollectorFake
     private lateinit var fakeClock: FakeSystemClock
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/row/ChannelEditorDialogControllerTest.kt b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/row/ChannelEditorDialogControllerTest.kt
index c5b19ab..0b2fea5 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/row/ChannelEditorDialogControllerTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/row/ChannelEditorDialogControllerTest.kt
@@ -31,13 +31,13 @@
 import android.view.View
 
 import com.android.systemui.SysuiTestCase
+import com.android.systemui.shade.domain.interactor.FakeShadeDialogContextInteractor
 
 import org.junit.Assert.assertEquals
 import org.junit.Before
 import org.junit.runner.RunWith
 import org.junit.Test
 import org.mockito.Answers
-import org.mockito.ArgumentMatchers.anyBoolean
 import org.mockito.ArgumentMatchers.eq
 import org.mockito.Mock
 import org.mockito.Mockito
@@ -66,11 +66,14 @@
     @Mock
     private lateinit var dialog: ChannelEditorDialog
 
+    private val shadeDialogContextInteractor = FakeShadeDialogContextInteractor(mContext)
+
     @Before
     fun setup() {
         MockitoAnnotations.initMocks(this)
         `when`(dialogBuilder.build()).thenReturn(dialog)
-        controller = ChannelEditorDialogController(mContext, mockNoMan, dialogBuilder)
+        controller =
+            ChannelEditorDialogController(shadeDialogContextInteractor, mockNoMan, dialogBuilder)
 
         channel1 = NotificationChannel(TEST_CHANNEL, TEST_CHANNEL_NAME, IMPORTANCE_DEFAULT)
         channel2 = NotificationChannel(TEST_CHANNEL2, TEST_CHANNEL_NAME2, IMPORTANCE_NONE)
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowTest.java
index 24d8d1c..acfa94a 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowTest.java
@@ -611,7 +611,8 @@
     public void testCanDismiss_immediately() throws Exception {
         ExpandableNotificationRow row =
                 mNotificationTestHelper.createRow(mNotificationTestHelper.createNotification());
-        when(mNotificationTestHelper.getDismissibilityProvider().isDismissable(row.getEntry()))
+        when(mNotificationTestHelper.getDismissibilityProvider().isDismissable(
+                row.getEntry().getKey()))
                 .thenReturn(true);
         row.performDismiss(false);
         verify(mNotificationTestHelper.getOnUserInteractionCallback())
@@ -623,7 +624,8 @@
     public void testCanDismiss() throws Exception {
         ExpandableNotificationRow row =
                 mNotificationTestHelper.createRow(mNotificationTestHelper.createNotification());
-        when(mNotificationTestHelper.getDismissibilityProvider().isDismissable(row.getEntry()))
+        when(mNotificationTestHelper.getDismissibilityProvider().isDismissable(
+                row.getEntry().getKey()))
                 .thenReturn(true);
         row.performDismiss(false);
         TestableLooper.get(this).processAllMessages();
@@ -635,7 +637,8 @@
     public void testCannotDismiss() throws Exception {
         ExpandableNotificationRow row =
                 mNotificationTestHelper.createRow(mNotificationTestHelper.createNotification());
-        when(mNotificationTestHelper.getDismissibilityProvider().isDismissable(row.getEntry()))
+        when(mNotificationTestHelper.getDismissibilityProvider().isDismissable(
+                row.getEntry().getKey()))
                 .thenReturn(false);
         row.performDismiss(false);
         verify(mNotificationTestHelper.getOnUserInteractionCallback(), never())
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutTest.java
index 955de273..2a58890 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutTest.java
@@ -82,13 +82,16 @@
 import com.android.systemui.statusbar.NotificationShelf;
 import com.android.systemui.statusbar.StatusBarState;
 import com.android.systemui.statusbar.SysuiStatusBarStateController;
+import com.android.systemui.statusbar.notification.collection.EntryAdapter;
 import com.android.systemui.statusbar.notification.collection.NotificationEntry;
 import com.android.systemui.statusbar.notification.collection.render.GroupExpansionManager;
 import com.android.systemui.statusbar.notification.collection.render.GroupMembershipManager;
+import com.android.systemui.statusbar.notification.data.repository.HeadsUpRepository;
 import com.android.systemui.statusbar.notification.emptyshade.shared.ModesEmptyShadeFix;
 import com.android.systemui.statusbar.notification.emptyshade.ui.view.EmptyShadeView;
 import com.android.systemui.statusbar.notification.footer.ui.view.FooterView;
 import com.android.systemui.statusbar.notification.headsup.AvalancheController;
+import com.android.systemui.statusbar.notification.headsup.HeadsUpManager;
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
 import com.android.systemui.statusbar.notification.row.ExpandableView;
 import com.android.systemui.statusbar.notification.shared.NotificationThrottleHun;
@@ -157,6 +160,7 @@
     @Mock private StatusBarKeyguardViewManager mStatusBarKeyguardViewManager;
     @Mock private LargeScreenShadeInterpolator mLargeScreenShadeInterpolator;
     @Mock private AvalancheController mAvalancheController;
+    @Mock private HeadsUpRepository mHeadsUpRepository;
 
     public NotificationStackScrollLayoutTest(FlagsParameterization flags) {
         super();
@@ -176,6 +180,7 @@
                 mBypassController,
                 mStatusBarKeyguardViewManager,
                 mLargeScreenShadeInterpolator,
+                mHeadsUpRepository,
                 mAvalancheController
         ));
 
@@ -728,6 +733,9 @@
         NotificationEntry entry = mock(NotificationEntry.class);
         when(row.getEntry()).thenReturn(entry);
         when(entry.isAmbient()).thenReturn(false);
+        EntryAdapter entryAdapter = mock(EntryAdapter.class);
+        when(entryAdapter.isAmbient()).thenReturn(false);
+        when(row.getEntryAdapter()).thenReturn(entryAdapter);
         mStackScroller.addContainerView(row);
 
         // speed bump = 1
@@ -744,6 +752,9 @@
         NotificationEntry entry = mock(NotificationEntry.class);
         when(row.getEntry()).thenReturn(entry);
         when(entry.isAmbient()).thenReturn(true);
+        EntryAdapter entryAdapter = mock(EntryAdapter.class);
+        when(entryAdapter.isAmbient()).thenReturn(true);
+        when(row.getEntryAdapter()).thenReturn(entryAdapter);
         mStackScroller.addContainerView(row);
 
         // speed bump is set to 0
@@ -760,6 +771,9 @@
         NotificationEntry entry = mock(NotificationEntry.class);
         when(row.getEntry()).thenReturn(entry);
         when(entry.isAmbient()).thenReturn(false);
+        EntryAdapter entryAdapter = mock(EntryAdapter.class);
+        when(entryAdapter.isAmbient()).thenReturn(false);
+        when(row.getEntryAdapter()).thenReturn(entryAdapter);
         mStackScroller.addContainerView(row);
 
         // speed bump is 1
@@ -1373,6 +1387,9 @@
         when(row.canViewBeCleared()).thenReturn(true);
         when(row.getEntry()).thenReturn(entry);
         when(entry.isClearable()).thenReturn(true);
+        EntryAdapter entryAdapter = mock(EntryAdapter.class);
+        when(entryAdapter.isClearable()).thenReturn(true);
+        when(row.getEntryAdapter()).thenReturn(entryAdapter);
 
         return row;
     }
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/CentralSurfacesImplTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/CentralSurfacesImplTest.java
index 7d3aa47..89b7bee 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/CentralSurfacesImplTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/CentralSurfacesImplTest.java
@@ -144,7 +144,7 @@
 import com.android.systemui.scene.shared.flag.SceneContainerFlag;
 import com.android.systemui.settings.UserTracker;
 import com.android.systemui.settings.brightness.BrightnessSliderController;
-import com.android.systemui.settings.brightness.domain.interactor.BrightnessMirrorShowingInteractor;
+import com.android.systemui.settings.brightness.data.repository.BrightnessMirrorShowingRepository;
 import com.android.systemui.shade.CameraLauncher;
 import com.android.systemui.shade.GlanceableHubContainerController;
 import com.android.systemui.shade.NotificationPanelView;
@@ -388,8 +388,8 @@
     private final ScreenLifecycle mScreenLifecycle = new ScreenLifecycle(mDumpManager);
     private MessageRouterImpl mMessageRouter = new MessageRouterImpl(mMainExecutor);
 
-    private final BrightnessMirrorShowingInteractor mBrightnessMirrorShowingInteractor =
-            mKosmos.getBrightnessMirrorShowingInteractor();
+    private final BrightnessMirrorShowingRepository mBrightnessMirrorShowingRepository =
+            mKosmos.getBrightnessMirrorShowingRepository();
 
     private final StatusBarModePerDisplayRepository mStatusBarModePerDisplayRepository =
             mKosmos.getStatusBarModePerDisplayRepository();
@@ -639,7 +639,7 @@
                 mAlternateBouncerInteractor,
                 mUserTracker,
                 mActivityStarter,
-                mBrightnessMirrorShowingInteractor,
+                mBrightnessMirrorShowingRepository,
                 mGlanceableHubContainerController,
                 mEmergencyGestureIntentFactory,
                 mViewCaptureAwareWindowManager,
@@ -1146,11 +1146,11 @@
         final ScrimStartable scrimStartable = mKosmos.getScrimStartable();
         scrimStartable.start();
 
-        mBrightnessMirrorShowingInteractor.setMirrorShowing(true);
+        mBrightnessMirrorShowingRepository.setMirrorShowing(true);
         mTestScope.getTestScheduler().runCurrent();
         verify(mScrimController, atLeastOnce()).transitionTo(ScrimState.BRIGHTNESS_MIRROR);
 
-        mBrightnessMirrorShowingInteractor.setMirrorShowing(false);
+        mBrightnessMirrorShowingRepository.setMirrorShowing(false);
         mTestScope.getTestScheduler().runCurrent();
         ArgumentCaptor<ScrimState> captor = ArgumentCaptor.forClass(ScrimState.class);
         // The default is to call the one with the callback argument
@@ -1162,12 +1162,12 @@
     @DisableSceneContainer
     @EnableFlags(QSComposeFragment.FLAG_NAME)
     public void brightnesShowingChanged_qsUiRefactorFlagEnabled_ScrimControllerNotified() {
-        mBrightnessMirrorShowingInteractor.setMirrorShowing(true);
+        mBrightnessMirrorShowingRepository.setMirrorShowing(true);
         mTestScope.getTestScheduler().runCurrent();
         verify(mScrimController, atLeastOnce()).legacyTransitionTo(ScrimState.BRIGHTNESS_MIRROR);
         clearInvocations(mScrimController);
 
-        mBrightnessMirrorShowingInteractor.setMirrorShowing(false);
+        mBrightnessMirrorShowingRepository.setMirrorShowing(false);
         mTestScope.getTestScheduler().runCurrent();
         ArgumentCaptor<ScrimState> captor = ArgumentCaptor.forClass(ScrimState.class);
         // The default is to call the one with the callback argument
@@ -1179,7 +1179,7 @@
     @DisableSceneContainer
     @DisableFlags(QSComposeFragment.FLAG_NAME)
     public void brightnesShowingChanged_flagsDisabled_ScrimControllerNotified() {
-        mBrightnessMirrorShowingInteractor.setMirrorShowing(true);
+        mBrightnessMirrorShowingRepository.setMirrorShowing(true);
         mTestScope.getTestScheduler().runCurrent();
         verify(mScrimController, never()).legacyTransitionTo(ScrimState.BRIGHTNESS_MIRROR);
         verify(mScrimController, never())
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/data/repository/demo/DemoMobileConnectionParameterizedTest.kt b/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/mobile/data/repository/demo/DemoMobileConnectionParameterizedTest.kt
similarity index 100%
rename from packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/data/repository/demo/DemoMobileConnectionParameterizedTest.kt
rename to packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/mobile/data/repository/demo/DemoMobileConnectionParameterizedTest.kt
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/domain/interactor/MobileIconsInteractorTest.kt b/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/mobile/domain/interactor/MobileIconsInteractorTest.kt
similarity index 96%
rename from packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/domain/interactor/MobileIconsInteractorTest.kt
rename to packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/mobile/domain/interactor/MobileIconsInteractorTest.kt
index 6066a38..9e914ad 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/domain/interactor/MobileIconsInteractorTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/mobile/domain/interactor/MobileIconsInteractorTest.kt
@@ -65,10 +65,10 @@
             mobileConnectionsRepository.fake.run {
                 setMobileConnectionRepositoryMap(
                     mapOf(
-                        SUB_1_ID to CONNECTION_1,
-                        SUB_2_ID to CONNECTION_2,
-                        SUB_3_ID to CONNECTION_3,
-                        SUB_4_ID to CONNECTION_4,
+                        SUB_1_ID to FakeMobileConnectionRepository(SUB_1_ID, mock()),
+                        SUB_2_ID to FakeMobileConnectionRepository(SUB_2_ID, mock()),
+                        SUB_3_ID to FakeMobileConnectionRepository(SUB_3_ID, mock()),
+                        SUB_4_ID to FakeMobileConnectionRepository(SUB_4_ID, mock()),
                     )
                 )
                 setActiveMobileDataSubscriptionId(SUB_1_ID)
@@ -496,7 +496,10 @@
     @Test
     fun activeDataConnection_turnedOn() =
         kosmos.runTest {
-            CONNECTION_1.setDataEnabled(true)
+            (fakeMobileConnectionsRepository.getRepoForSubId(SUB_1_ID)
+                    as FakeMobileConnectionRepository)
+                .dataEnabled
+                .value = true
 
             val latest by collectLastValue(underTest.activeDataConnectionHasDataEnabled)
 
@@ -506,10 +509,17 @@
     @Test
     fun activeDataConnection_turnedOff() =
         kosmos.runTest {
-            CONNECTION_1.setDataEnabled(true)
+            (fakeMobileConnectionsRepository.getRepoForSubId(SUB_1_ID)
+                    as FakeMobileConnectionRepository)
+                .dataEnabled
+                .value = true
+
             val latest by collectLastValue(underTest.activeDataConnectionHasDataEnabled)
 
-            CONNECTION_1.setDataEnabled(false)
+            (fakeMobileConnectionsRepository.getRepoForSubId(SUB_1_ID)
+                    as FakeMobileConnectionRepository)
+                .dataEnabled
+                .value = false
 
             assertThat(latest).isFalse()
         }
@@ -921,20 +931,18 @@
     @EnableFlags(NewStatusBarIcons.FLAG_NAME, StatusBarRootModernization.FLAG_NAME)
     fun isStackable_checksForTerrestrialConnections() =
         kosmos.runTest {
-            val exclusivelyNonTerrestrialSub =
-                SubscriptionModel(
-                    isExclusivelyNonTerrestrial = true,
-                    subscriptionId = 5,
-                    carrierName = "Carrier 5",
-                    profileClass = PROFILE_CLASS_UNSET,
-                )
-
             val latest by collectLastValue(underTest.isStackable)
 
             connectionsRepository.setSubscriptions(listOf(SUB_1, SUB_2))
+            setNumberOfLevelsForSubId(SUB_1_ID, 5)
+            setNumberOfLevelsForSubId(SUB_2_ID, 5)
             assertThat(latest).isTrue()
 
-            connectionsRepository.setSubscriptions(listOf(SUB_1, exclusivelyNonTerrestrialSub))
+            (fakeMobileConnectionsRepository.getRepoForSubId(SUB_1_ID)
+                    as FakeMobileConnectionRepository)
+                .isNonTerrestrial
+                .value = true
+
             assertThat(latest).isFalse()
         }
 
@@ -1006,7 +1014,6 @@
                 carrierName = "Carrier $SUB_1_ID",
                 profileClass = PROFILE_CLASS_UNSET,
             )
-        private val CONNECTION_1 = FakeMobileConnectionRepository(SUB_1_ID, mock())
 
         private const val SUB_2_ID = 2
         private val SUB_2 =
@@ -1015,7 +1022,6 @@
                 carrierName = "Carrier $SUB_2_ID",
                 profileClass = PROFILE_CLASS_UNSET,
             )
-        private val CONNECTION_2 = FakeMobileConnectionRepository(SUB_2_ID, mock())
 
         private const val SUB_3_ID = 3
         private val SUB_3_OPP =
@@ -1026,7 +1032,6 @@
                 carrierName = "Carrier $SUB_3_ID",
                 profileClass = PROFILE_CLASS_UNSET,
             )
-        private val CONNECTION_3 = FakeMobileConnectionRepository(SUB_3_ID, mock())
 
         private const val SUB_4_ID = 4
         private val SUB_4_OPP =
@@ -1037,6 +1042,5 @@
                 carrierName = "Carrier $SUB_4_ID",
                 profileClass = PROFILE_CLASS_UNSET,
             )
-        private val CONNECTION_4 = FakeMobileConnectionRepository(SUB_4_ID, mock())
     }
 }
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/mobile/ui/view/ModernStatusBarMobileViewTest.kt b/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/mobile/ui/view/ModernStatusBarMobileViewTest.kt
index ce99e59..cbe986b 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/mobile/ui/view/ModernStatusBarMobileViewTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/mobile/ui/view/ModernStatusBarMobileViewTest.kt
@@ -26,8 +26,6 @@
 import android.widget.ImageView
 import androidx.test.filters.SmallTest
 import com.android.systemui.SysuiTestCase
-import com.android.systemui.flags.FakeFeatureFlagsClassic
-import com.android.systemui.flags.Flags
 import com.android.systemui.log.table.logcatTableLogBuffer
 import com.android.systemui.res.R
 import com.android.systemui.statusbar.StatusBarIconView
@@ -62,7 +60,6 @@
     private lateinit var testableLooper: TestableLooper
     private val testDispatcher = UnconfinedTestDispatcher()
     private val testScope = TestScope(testDispatcher)
-    private val flags = FakeFeatureFlagsClassic().also { it.set(Flags.NEW_NETWORK_SLICE_UI, false) }
 
     @Mock private lateinit var viewLogger: MobileViewLogger
     @Mock private lateinit var constants: ConnectivityConstants
@@ -102,12 +99,7 @@
     @Test
     fun setVisibleState_icon_iconShownDotHidden() {
         val view =
-            ModernStatusBarMobileView.constructAndBind(
-                context,
-                viewLogger,
-                SLOT_NAME,
-                viewModel,
-            )
+            ModernStatusBarMobileView.constructAndBind(context, viewLogger, SLOT_NAME, viewModel)
 
         view.setVisibleState(StatusBarIconView.STATE_ICON, /* animate= */ false)
 
@@ -123,12 +115,7 @@
     @Test
     fun setVisibleState_dot_iconHiddenDotShown() {
         val view =
-            ModernStatusBarMobileView.constructAndBind(
-                context,
-                viewLogger,
-                SLOT_NAME,
-                viewModel,
-            )
+            ModernStatusBarMobileView.constructAndBind(context, viewLogger, SLOT_NAME, viewModel)
         view.setVisibleState(StatusBarIconView.STATE_DOT, /* animate= */ false)
 
         ViewUtils.attachView(view)
@@ -143,12 +130,7 @@
     @Test
     fun setVisibleState_hidden_iconAndDotHidden() {
         val view =
-            ModernStatusBarMobileView.constructAndBind(
-                context,
-                viewLogger,
-                SLOT_NAME,
-                viewModel,
-            )
+            ModernStatusBarMobileView.constructAndBind(context, viewLogger, SLOT_NAME, viewModel)
         view.setVisibleState(StatusBarIconView.STATE_HIDDEN, /* animate= */ false)
 
         ViewUtils.attachView(view)
@@ -166,12 +148,7 @@
         createViewModel()
 
         val view =
-            ModernStatusBarMobileView.constructAndBind(
-                context,
-                viewLogger,
-                SLOT_NAME,
-                viewModel,
-            )
+            ModernStatusBarMobileView.constructAndBind(context, viewLogger, SLOT_NAME, viewModel)
         ViewUtils.attachView(view)
         testableLooper.processAllMessages()
 
@@ -186,12 +163,7 @@
         createViewModel()
 
         val view =
-            ModernStatusBarMobileView.constructAndBind(
-                context,
-                viewLogger,
-                SLOT_NAME,
-                viewModel,
-            )
+            ModernStatusBarMobileView.constructAndBind(context, viewLogger, SLOT_NAME, viewModel)
         ViewUtils.attachView(view)
         testableLooper.processAllMessages()
 
@@ -205,12 +177,7 @@
         airplaneModeRepository.setIsAirplaneMode(false)
 
         val view =
-            ModernStatusBarMobileView.constructAndBind(
-                context,
-                viewLogger,
-                SLOT_NAME,
-                viewModel,
-            )
+            ModernStatusBarMobileView.constructAndBind(context, viewLogger, SLOT_NAME, viewModel)
         ViewUtils.attachView(view)
         testableLooper.processAllMessages()
 
@@ -224,12 +191,7 @@
         airplaneModeRepository.setIsAirplaneMode(true)
 
         val view =
-            ModernStatusBarMobileView.constructAndBind(
-                context,
-                viewLogger,
-                SLOT_NAME,
-                viewModel,
-            )
+            ModernStatusBarMobileView.constructAndBind(context, viewLogger, SLOT_NAME, viewModel)
         ViewUtils.attachView(view)
         testableLooper.processAllMessages()
 
@@ -241,12 +203,7 @@
     @Test
     fun onDarkChanged_iconHasNewColor() {
         val view =
-            ModernStatusBarMobileView.constructAndBind(
-                context,
-                viewLogger,
-                SLOT_NAME,
-                viewModel,
-            )
+            ModernStatusBarMobileView.constructAndBind(context, viewLogger, SLOT_NAME, viewModel)
         ViewUtils.attachView(view)
         testableLooper.processAllMessages()
 
@@ -263,12 +220,7 @@
     @Test
     fun setStaticDrawableColor_iconHasNewColor() {
         val view =
-            ModernStatusBarMobileView.constructAndBind(
-                context,
-                viewLogger,
-                SLOT_NAME,
-                viewModel,
-            )
+            ModernStatusBarMobileView.constructAndBind(context, viewLogger, SLOT_NAME, viewModel)
         ViewUtils.attachView(view)
         testableLooper.processAllMessages()
 
@@ -285,17 +237,11 @@
     @Test
     fun colorChange_layersUpdateWithContrast() {
         // Allow the slice, and set it to visible. This cause us to use special color logic
-        flags.set(Flags.NEW_NETWORK_SLICE_UI, true)
         interactor.showSliceAttribution.value = true
         createViewModel()
 
         val view =
-            ModernStatusBarMobileView.constructAndBind(
-                context,
-                viewLogger,
-                SLOT_NAME,
-                viewModel,
-            )
+            ModernStatusBarMobileView.constructAndBind(context, viewLogger, SLOT_NAME, viewModel)
         ViewUtils.attachView(view)
         testableLooper.processAllMessages()
 
@@ -340,7 +286,6 @@
                 interactor,
                 airplaneModeInteractor,
                 constants,
-                flags,
                 testScope.backgroundScope,
             )
         viewModel = QsMobileIconViewModel(viewModelCommon)
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconViewModelTest.kt b/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconViewModelTest.kt
similarity index 97%
rename from packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconViewModelTest.kt
rename to packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconViewModelTest.kt
index 804e7d63..6ae6fe6 100644
--- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconViewModelTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconViewModelTest.kt
@@ -31,7 +31,6 @@
 import com.android.systemui.coroutines.collectLastValue
 import com.android.systemui.flags.FakeFeatureFlagsClassic
 import com.android.systemui.flags.Flags
-import com.android.systemui.flags.Flags.NEW_NETWORK_SLICE_UI
 import com.android.systemui.log.table.logcatTableLogBuffer
 import com.android.systemui.res.R
 import com.android.systemui.statusbar.connectivity.MobileIconCarrierIdOverridesFake
@@ -94,7 +93,6 @@
 
     private val flags =
         FakeFeatureFlagsClassic().also {
-            it.set(Flags.NEW_NETWORK_SLICE_UI, false)
             it.set(Flags.FILTER_PROVISIONING_NETWORK_SUBSCRIPTIONS, true)
         }
     private val testDispatcher = UnconfinedTestDispatcher()
@@ -430,6 +428,7 @@
                         assertWithMessage("Level $i is expected to be 'no signal'")
                             .that((latest as MobileContentDescription.Cellular).levelDescriptionRes)
                             .isEqualTo(NO_SIGNAL)
+
                     else ->
                         assertWithMessage("Level $i is expected not to be null")
                             .that(latest)
@@ -454,6 +453,7 @@
                         assertWithMessage("Level $i is expected to be 'no signal'")
                             .that((latest as MobileContentDescription.Cellular).levelDescriptionRes)
                             .isEqualTo(NO_SIGNAL)
+
                     else ->
                         assertWithMessage("Level $i is not expected to be null")
                             .that(latest)
@@ -834,22 +834,8 @@
         }
 
     @Test
-    fun netTypeBackground_flagOff_isNull() =
+    fun netTypeBackground_nullWhenNoPrioritizedCapabilities() =
         testScope.runTest {
-            flags.set(NEW_NETWORK_SLICE_UI, false)
-            createAndSetViewModel()
-
-            val latest by collectLastValue(underTest.networkTypeBackground)
-
-            repository.hasPrioritizedNetworkCapabilities.value = true
-
-            assertThat(latest).isNull()
-        }
-
-    @Test
-    fun netTypeBackground_flagOn_nullWhenNoPrioritizedCapabilities() =
-        testScope.runTest {
-            flags.set(NEW_NETWORK_SLICE_UI, true)
             createAndSetViewModel()
 
             val latest by collectLastValue(underTest.networkTypeBackground)
@@ -861,9 +847,8 @@
 
     @Test
     @EnableFlags(NewStatusBarIcons.FLAG_NAME, StatusBarRootModernization.FLAG_NAME)
-    fun netTypeBackground_sliceUiEnabled_notNullWhenPrioritizedCapabilities_newIcons() =
+    fun netTypeBackground_notNullWhenPrioritizedCapabilities_newIcons() =
         testScope.runTest {
-            flags.set(NEW_NETWORK_SLICE_UI, true)
             createAndSetViewModel()
 
             val latest by collectLastValue(underTest.networkTypeBackground)
@@ -876,9 +861,8 @@
 
     @Test
     @DisableFlags(NewStatusBarIcons.FLAG_NAME, StatusBarRootModernization.FLAG_NAME)
-    fun netTypeBackground_sliceUiDisabled_notNullWhenPrioritizedCapabilities_oldIcons() =
+    fun netTypeBackground_notNullWhenPrioritizedCapabilities_oldIcons() =
         testScope.runTest {
-            flags.set(NEW_NETWORK_SLICE_UI, true)
             createAndSetViewModel()
 
             val latest by collectLastValue(underTest.networkTypeBackground)
@@ -1075,7 +1059,6 @@
                 interactor,
                 airplaneModeInteractor,
                 constants,
-                flags,
                 testScope.backgroundScope,
             )
     }
diff --git a/packages/SystemUI/tests/src/com/android/systemui/stylus/StylusManagerTest.kt b/packages/SystemUI/tests/src/com/android/systemui/stylus/StylusManagerTest.kt
index 516541d..242865b 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/stylus/StylusManagerTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/stylus/StylusManagerTest.kt
@@ -28,6 +28,7 @@
 import com.android.dx.mockito.inline.extended.ExtendedMockito.never
 import com.android.dx.mockito.inline.extended.ExtendedMockito.times
 import com.android.dx.mockito.inline.extended.ExtendedMockito.verify
+import com.android.dx.mockito.inline.extended.MockedVoidMethod
 import com.android.dx.mockito.inline.extended.StaticMockitoSession
 import com.android.internal.logging.InstanceId
 import com.android.internal.logging.UiEventLogger
@@ -245,7 +246,7 @@
     @Test
     fun onInputDeviceAdded_btStylus_firstUsed_setsFlag() {
         stylusManager.onInputDeviceAdded(BT_STYLUS_DEVICE_ID)
-        verify({ InputSettings.setStylusEverUsed(mContext, true) }, times(1))
+        verify(MockedVoidMethod { InputSettings.setStylusEverUsed(mContext, true) }, times(1))
     }
 
     @Test
@@ -511,7 +512,7 @@
 
         stylusManager.onBatteryStateChanged(STYLUS_DEVICE_ID, 1, batteryState)
 
-        verify({ InputSettings.setStylusEverUsed(mContext, true) }, times(1))
+        verify(MockedVoidMethod { InputSettings.setStylusEverUsed(mContext, true) }, times(1))
     }
 
     @Test
@@ -612,7 +613,7 @@
 
         stylusManager.onBatteryStateChanged(STYLUS_DEVICE_ID, 1, batteryState)
 
-        verify({ InputSettings.setStylusEverUsed(mContext, true) }, never())
+        verify(MockedVoidMethod { InputSettings.setStylusEverUsed(mContext, true) }, never())
     }
 
     @Test
diff --git a/packages/SystemUI/tests/src/com/android/systemui/wmshell/BubblesTest.java b/packages/SystemUI/tests/src/com/android/systemui/wmshell/BubblesTest.java
index 68d84ec..8281132 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/wmshell/BubblesTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/wmshell/BubblesTest.java
@@ -135,11 +135,14 @@
 import com.android.systemui.statusbar.RankingBuilder;
 import com.android.systemui.statusbar.SysuiStatusBarStateController;
 import com.android.systemui.statusbar.notification.NotifPipelineFlags;
+import com.android.systemui.statusbar.notification.collection.GroupEntry;
+import com.android.systemui.statusbar.notification.collection.GroupEntryBuilder;
 import com.android.systemui.statusbar.notification.collection.NotifPipeline;
 import com.android.systemui.statusbar.notification.collection.NotificationEntry;
 import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
 import com.android.systemui.statusbar.notification.collection.notifcollection.CommonNotifCollection;
 import com.android.systemui.statusbar.notification.collection.notifcollection.NotifCollectionListener;
+import com.android.systemui.statusbar.notification.collection.notifcollection.UpdateSource;
 import com.android.systemui.statusbar.notification.collection.render.NotificationVisibilityProvider;
 import com.android.systemui.statusbar.notification.headsup.HeadsUpManager;
 import com.android.systemui.statusbar.notification.interruption.AvalancheProvider;
@@ -150,6 +153,7 @@
 import com.android.systemui.statusbar.notification.interruption.VisualInterruptionDecisionProviderTestUtil;
 import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
 import com.android.systemui.statusbar.notification.row.NotificationTestHelper;
+import com.android.systemui.statusbar.notification.shared.NotificationBundleUi;
 import com.android.systemui.statusbar.phone.DozeParameters;
 import com.android.systemui.statusbar.phone.KeyguardBypassController;
 import com.android.systemui.statusbar.policy.BatteryController;
@@ -214,6 +218,9 @@
 import org.mockito.MockitoAnnotations;
 import org.mockito.stubbing.Answer;
 
+import platform.test.runner.parameterized.ParameterizedAndroidJunit4;
+import platform.test.runner.parameterized.Parameters;
+
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
@@ -222,9 +229,6 @@
 import java.util.Optional;
 import java.util.concurrent.Executor;
 
-import platform.test.runner.parameterized.ParameterizedAndroidJunit4;
-import platform.test.runner.parameterized.Parameters;
-
 @SmallTest
 @RunWith(ParameterizedAndroidJunit4.class)
 @TestableLooper.RunWithLooper(setAsMainLooper = true)
@@ -890,7 +894,7 @@
         assertFalse(mBubbleData.getBubbleInStackWithKey(mRow.getKey()).showDot());
 
         // Send update
-        mEntryListener.onEntryUpdated(mRow, /* fromSystem= */ true);
+        mEntryListener.onEntryUpdated(mRow, /* source= */ UpdateSource.App);
 
         // Nothing should have changed
         // Notif is suppressed after expansion
@@ -1058,7 +1062,8 @@
     @Test
     public void testAddNotif_notBubble() {
         mEntryListener.onEntryAdded(mNonBubbleNotifRow.getEntry());
-        mEntryListener.onEntryUpdated(mNonBubbleNotifRow.getEntry(), /* fromSystem= */ true);
+        mEntryListener.onEntryUpdated(mNonBubbleNotifRow.getEntry(),
+                /* source= */ UpdateSource.App);
 
         assertThat(mBubbleController.hasBubbles()).isFalse();
     }
@@ -1096,7 +1101,7 @@
         NotificationListenerService.Ranking ranking = new RankingBuilder(
                 mRow.getRanking()).setCanBubble(false).build();
         mRow.setRanking(ranking);
-        mEntryListener.onEntryUpdated(mRow, /* fromSystem= */ true);
+        mEntryListener.onEntryUpdated(mRow, /* source= */ UpdateSource.App);
 
         assertFalse(mBubbleController.hasBubbles());
         verify(mDeleteIntent, never()).send();
@@ -1227,8 +1232,36 @@
     }
 
     @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
     public void testBubbleSummaryDismissal_suppressesSummaryAndBubbleFromShade() throws Exception {
         // GIVEN a group summary with a bubble child
+        NotificationEntry groupedBubble = mNotificationTestHelper.createBubbleEntryInGroup();
+        GroupEntry groupSummary = mNotificationTestHelper.createGroupEntry(
+                0, List.of(groupedBubble));
+        mEntryListener.onEntryAdded(groupedBubble);
+        when(mCommonNotifCollection.getEntry(groupedBubble.getKey()))
+                .thenReturn(groupedBubble);
+        assertTrue(mBubbleData.hasBubbleInStackWithKey(groupedBubble.getKey()));
+
+        // WHEN the summary is dismissed
+        mBubblesManager.handleDismissalInterception(groupSummary.getSummary());
+
+        // THEN the summary and bubbled child are suppressed from the shade
+        assertTrue(mBubbleController.isBubbleNotificationSuppressedFromShade(
+                groupedBubble.getKey(),
+                groupedBubble.getSbn().getGroupKey()));
+        assertTrue(mBubbleController.getImplCachedState().isBubbleNotificationSuppressedFromShade(
+                groupedBubble.getKey(),
+                groupedBubble.getSbn().getGroupKey()));
+        assertTrue(mBubbleData.isSummarySuppressed(
+                groupSummary.getSummary().getSbn().getGroupKey()));
+    }
+
+    @Test
+    @DisableFlags(NotificationBundleUi.FLAG_NAME)
+    public void testBubbleSummaryDismissal_suppressesSummaryAndBubbleFromShade_rows()
+            throws Exception {
+        // GIVEN a group summary with a bubble child
         ExpandableNotificationRow groupSummary = mNotificationTestHelper.createGroup(0);
         ExpandableNotificationRow groupedBubble = mNotificationTestHelper.createBubbleInGroup();
         mEntryListener.onEntryAdded(groupedBubble.getEntry());
@@ -1251,8 +1284,33 @@
     }
 
     @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
     public void testAppRemovesSummary_removesAllBubbleChildren() throws Exception {
         // GIVEN a group summary with a bubble child
+        NotificationEntry groupedBubble = mNotificationTestHelper.createBubbleEntryInGroup();
+        GroupEntry groupSummary = mNotificationTestHelper.createGroupEntry(
+                0, List.of(groupedBubble));
+        mEntryListener.onEntryAdded(groupedBubble);
+        when(mCommonNotifCollection.getEntry(groupedBubble.getKey()))
+                .thenReturn(groupedBubble);
+        assertTrue(mBubbleData.hasBubbleInStackWithKey(groupedBubble.getKey()));
+
+        // GIVEN the summary is dismissed
+        mBubblesManager.handleDismissalInterception(groupSummary.getSummary());
+
+        // WHEN the summary is cancelled by the app
+        mEntryListener.onEntryRemoved(groupSummary.getSummary(), REASON_APP_CANCEL);
+
+        // THEN the summary and its children are removed from bubble data
+        assertFalse(mBubbleData.hasBubbleInStackWithKey(groupedBubble.getKey()));
+        assertFalse(mBubbleData.isSummarySuppressed(
+                groupSummary.getSummary().getSbn().getGroupKey()));
+    }
+
+    @Test
+    @DisableFlags(NotificationBundleUi.FLAG_NAME)
+    public void testAppRemovesSummary_removesAllBubbleChildren_rows() throws Exception {
+        // GIVEN a group summary with a bubble child
         ExpandableNotificationRow groupSummary = mNotificationTestHelper.createGroup(0);
         ExpandableNotificationRow groupedBubble = mNotificationTestHelper.createBubbleInGroup();
         mEntryListener.onEntryAdded(groupedBubble.getEntry());
@@ -1274,9 +1332,52 @@
     }
 
     @Test
+    @EnableFlags(NotificationBundleUi.FLAG_NAME)
     public void testSummaryDismissalMarksBubblesHiddenFromShadeAndDismissesNonBubbledChildren()
             throws Exception {
         // GIVEN a group summary with two (non-bubble) children and one bubble child
+        NotificationEntry groupedBubble = mNotificationTestHelper.createBubbleEntryInGroup();
+        GroupEntry groupSummary = mNotificationTestHelper.createGroupEntry(
+                2, List.of(groupedBubble));
+        mEntryListener.onEntryAdded(groupedBubble);
+        when(mCommonNotifCollection.getEntry(groupedBubble.getKey()))
+                .thenReturn(groupedBubble);
+
+        // WHEN the summary is dismissed
+        mBubblesManager.handleDismissalInterception(groupSummary.getSummary());
+
+        // THEN only the NON-bubble children are dismissed
+        List<NotificationEntry> children = groupSummary.getChildren();
+        verify(mNotifCallback, times(1)).removeNotification(
+                eq(children.get(0)), any(), eq(REASON_GROUP_SUMMARY_CANCELED));
+        verify(mNotifCallback, times(1)).removeNotification(
+                eq(children.get(1)), any(), eq(REASON_GROUP_SUMMARY_CANCELED));
+        verify(mNotifCallback, never()).removeNotification(eq(groupedBubble),
+                any(), anyInt());
+
+        // THEN the bubble child still exists as a bubble and is suppressed from the shade
+        assertTrue(mBubbleData.hasBubbleInStackWithKey(groupedBubble.getKey()));
+        assertTrue(mBubbleController.isBubbleNotificationSuppressedFromShade(
+                groupedBubble.getKey(),
+                groupedBubble.getSbn().getGroupKey()));
+        assertTrue(mBubbleController.getImplCachedState().isBubbleNotificationSuppressedFromShade(
+                groupedBubble.getKey(),
+                groupedBubble.getSbn().getGroupKey()));
+
+        // THEN the summary is also suppressed from the shade
+        assertTrue(mBubbleController.isBubbleNotificationSuppressedFromShade(
+                groupSummary.getSummary().getKey(),
+                groupSummary.getSummary().getSbn().getGroupKey()));
+        assertTrue(mBubbleController.getImplCachedState().isBubbleNotificationSuppressedFromShade(
+                groupSummary.getSummary().getKey(),
+                groupSummary.getSummary().getSbn().getGroupKey()));
+    }
+
+    @Test
+    @DisableFlags(NotificationBundleUi.FLAG_NAME)
+    public void testSummaryDismissalMarksBubblesHiddenFromShadeAndDismissesNonBubbledChildren_row()
+            throws Exception {
+        // GIVEN a group summary with two (non-bubble) children and one bubble child
         ExpandableNotificationRow groupSummary = mNotificationTestHelper.createGroup(2);
         ExpandableNotificationRow groupedBubble = mNotificationTestHelper.createBubbleInGroup();
         mEntryListener.onEntryAdded(groupedBubble.getEntry());
@@ -1845,7 +1946,7 @@
     @Test
     public void testNonInterruptiveUpdate_doesntBubbleFromOverflow() {
         mEntryListener.onEntryAdded(mRow);
-        mEntryListener.onEntryUpdated(mRow, /* fromSystem= */ true);
+        mEntryListener.onEntryUpdated(mRow, /* source= */ UpdateSource.App);
         assertBubbleNotificationNotSuppressedFromShade(mBubbleEntry);
 
         // Dismiss the bubble so it's in the overflow
@@ -1873,7 +1974,7 @@
     @Test
     public void testNonInterruptiveUpdate_doesntTriggerInflate() {
         mEntryListener.onEntryAdded(mRow);
-        mEntryListener.onEntryUpdated(mRow, /* fromSystem= */ true);
+        mEntryListener.onEntryUpdated(mRow, /* source= */ UpdateSource.App);
         assertBubbleNotificationNotSuppressedFromShade(mBubbleEntry);
 
         // Update the entry to not show in shade
@@ -1896,7 +1997,7 @@
     @Test
     public void testNonInterruptiveUpdate_doesntOverrideOverflowFlagBubble() {
         mEntryListener.onEntryAdded(mRow);
-        mEntryListener.onEntryUpdated(mRow, /* fromSystem= */ true);
+        mEntryListener.onEntryUpdated(mRow, /* source= */ UpdateSource.App);
         assertBubbleNotificationNotSuppressedFromShade(mBubbleEntry);
 
         // Dismiss the bubble so it's in the overflow
@@ -1923,9 +2024,9 @@
         mEntryListener.onEntryAdded(mRow);
         assertThat(mBubbleController.hasBubbles()).isTrue();
 
-        mEntryListener.onEntryUpdated(mRow, /* fromSystem= */ false);
-        mEntryListener.onEntryUpdated(mRow, /* fromSystem= */ false);
-        mEntryListener.onEntryUpdated(mRow, /* fromSystem= */ false);
+        mEntryListener.onEntryUpdated(mRow, /* source= */ UpdateSource.SystemUi);
+        mEntryListener.onEntryUpdated(mRow, /* source= */ UpdateSource.SystemUi);
+        mEntryListener.onEntryUpdated(mRow, /* source= */ UpdateSource.SystemUi);
 
         // Check that it wasn't inflated (1 because it would've been inflated via onEntryAdded)
         verify(mBubbleController, times(1)).inflateAndAdd(
@@ -2443,7 +2544,7 @@
     @Test
     public void showBubbleOverflow_hasOverflowContents() {
         mEntryListener.onEntryAdded(mRow);
-        mEntryListener.onEntryUpdated(mRow, /* fromSystem= */ true);
+        mEntryListener.onEntryUpdated(mRow, /* source= */ UpdateSource.App);
         assertThat(mBubbleData.getOverflowBubbles()).isEmpty();
 
         BubbleStackView stackView = mBubbleController.getStackView();
@@ -2460,7 +2561,7 @@
     @Test
     public void showBubbleOverflow_isEmpty() {
         mEntryListener.onEntryAdded(mRow);
-        mEntryListener.onEntryUpdated(mRow, /* fromSystem= */ true);
+        mEntryListener.onEntryUpdated(mRow, /* source= */ UpdateSource.App);
         assertThat(mBubbleData.getOverflowBubbles()).isEmpty();
 
         BubbleStackView stackView = mBubbleController.getStackView();
@@ -2481,7 +2582,7 @@
     @Test
     public void showBubbleOverflow_ignored() {
         mEntryListener.onEntryAdded(mRow);
-        mEntryListener.onEntryUpdated(mRow, /* fromSystem= */ true);
+        mEntryListener.onEntryUpdated(mRow, /* source= */ UpdateSource.App);
         assertThat(mBubbleData.getOverflowBubbles()).isEmpty();
 
         BubbleStackView stackView = mBubbleController.getStackView();
@@ -2522,7 +2623,7 @@
         mEntryListener.onEntryAdded(mRow);
         // Mark the notification as updated
         NotificationEntryHelper.modifyRanking(mRow).setTextChanged(true).build();
-        mEntryListener.onEntryUpdated(mRow, /* fromSystem= */ true);
+        mEntryListener.onEntryUpdated(mRow, /* source= */ UpdateSource.App);
 
         verify(mBubbleLogger).log(eqBubbleWithKey(mRow.getKey()),
                 eq(BubbleLogger.Event.BUBBLE_BAR_BUBBLE_UPDATED));
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/accessibility/data/repository/FakeAccessibilityRepository.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/accessibility/data/repository/FakeAccessibilityRepository.kt
index 923b636..c369237 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/accessibility/data/repository/FakeAccessibilityRepository.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/accessibility/data/repository/FakeAccessibilityRepository.kt
@@ -20,6 +20,8 @@
 import dagger.Binds
 import dagger.Module
 import javax.inject.Inject
+import kotlin.time.Duration
+import kotlin.time.Duration.Companion.milliseconds
 import kotlinx.coroutines.flow.MutableStateFlow
 
 @SysUISingleton
@@ -28,6 +30,16 @@
     override val isEnabled: MutableStateFlow<Boolean>,
 ) : AccessibilityRepository {
     @Inject constructor() : this(MutableStateFlow(false), MutableStateFlow(false))
+
+    private var recommendedTimeout: Duration = 0.milliseconds
+
+    fun setRecommendedTimeout(duration: Duration) {
+        recommendedTimeout = duration
+    }
+
+    override fun getRecommendedTimeout(originalTimeout: Duration, uiFlags: Int): Duration {
+        return recommendedTimeout
+    }
 }
 
 @Module
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/biometrics/ui/viewmodel/PromptViewModelKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/biometrics/ui/viewmodel/PromptViewModelKosmos.kt
index 43b57de..d6b625b 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/biometrics/ui/viewmodel/PromptViewModelKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/biometrics/ui/viewmodel/PromptViewModelKosmos.kt
@@ -17,6 +17,7 @@
 package com.android.systemui.biometrics.ui.viewmodel
 
 import android.content.applicationContext
+import android.view.accessibility.accessibilityManager
 import com.android.app.activityTaskManager
 import com.android.launcher3.icons.IconProvider
 import com.android.systemui.biometrics.domain.interactor.biometricStatusInteractor
@@ -27,7 +28,6 @@
 import com.android.systemui.kosmos.Kosmos
 import com.android.systemui.kosmos.Kosmos.Fixture
 import com.android.systemui.util.mockito.mock
-import org.mockito.Mockito.mock
 
 val Kosmos.promptViewModel by Fixture {
     PromptViewModel(
@@ -39,6 +39,7 @@
         udfpsUtils = udfpsUtils,
         iconProvider = iconProvider,
         activityTaskManager = activityTaskManager,
+        accessibilityManager = accessibilityManager,
     )
 }
 
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/communal/ui/viewmodel/CommunalTransitionViewModelKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/communal/ui/viewmodel/CommunalTransitionViewModelKosmos.kt
index 7b0c09c..9109b36 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/communal/ui/viewmodel/CommunalTransitionViewModelKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/communal/ui/viewmodel/CommunalTransitionViewModelKosmos.kt
@@ -18,6 +18,7 @@
 
 import com.android.systemui.communal.domain.interactor.communalInteractor
 import com.android.systemui.communal.domain.interactor.communalSceneInteractor
+import com.android.systemui.communal.domain.interactor.communalSettingsInteractor
 import com.android.systemui.communal.util.communalColors
 import com.android.systemui.keyguard.domain.interactor.keyguardTransitionInteractor
 import com.android.systemui.keyguard.ui.viewmodel.dreamingToGlanceableHubTransitionViewModel
@@ -41,5 +42,6 @@
             communalSceneInteractor = communalSceneInteractor,
             keyguardTransitionInteractor = keyguardTransitionInteractor,
             communalColors = communalColors,
+            communalSettingsInteractor = communalSettingsInteractor,
         )
     }
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/display/data/repository/FakeDisplayRepository.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/display/data/repository/FakeDisplayRepository.kt
index a64fc24..d6f0e06 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/display/data/repository/FakeDisplayRepository.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/display/data/repository/FakeDisplayRepository.kt
@@ -104,6 +104,8 @@
     private val _displayChangeEvent = MutableSharedFlow<Int>(replay = 1)
     override val displayChangeEvent: Flow<Int> = _displayChangeEvent
 
+    override val displayIdsWithSystemDecorations: StateFlow<Set<Int>> = MutableStateFlow(emptySet())
+
     suspend fun emitDisplayChangeEvent(displayId: Int) = _displayChangeEvent.emit(displayId)
 
     fun setDefaultDisplayOff(defaultDisplayOff: Boolean) {
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/kosmos/KosmosJavaAdapter.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/kosmos/KosmosJavaAdapter.kt
index 60b371a..02cf1f5 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/kosmos/KosmosJavaAdapter.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/kosmos/KosmosJavaAdapter.kt
@@ -62,7 +62,7 @@
 import com.android.systemui.scene.sceneContainerConfig
 import com.android.systemui.scene.shared.model.sceneDataSource
 import com.android.systemui.scene.ui.view.mockWindowRootViewProvider
-import com.android.systemui.settings.brightness.domain.interactor.brightnessMirrorShowingInteractor
+import com.android.systemui.settings.brightness.data.repository.brightnessMirrorShowingRepository
 import com.android.systemui.shade.data.repository.shadeRepository
 import com.android.systemui.shade.domain.interactor.shadeInteractor
 import com.android.systemui.shade.domain.interactor.shadeLayoutParams
@@ -162,7 +162,7 @@
     val sharedNotificationContainerInteractor by lazy {
         kosmos.sharedNotificationContainerInteractor
     }
-    val brightnessMirrorShowingInteractor by lazy { kosmos.brightnessMirrorShowingInteractor }
+    val brightnessMirrorShowingRepository by lazy { kosmos.brightnessMirrorShowingRepository }
     val qsLongPressEffect by lazy { kosmos.qsLongPressEffect }
     val shadeController by lazy { kosmos.shadeController }
     val shadeRepository by lazy { kosmos.shadeRepository }
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/data/repository/MediaFilterRepositoryKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/data/repository/MediaFilterRepositoryKosmos.kt
index 7964c11..e11534e8 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/data/repository/MediaFilterRepositoryKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/data/repository/MediaFilterRepositoryKosmos.kt
@@ -16,16 +16,8 @@
 
 package com.android.systemui.media.controls.data.repository
 
-import android.content.applicationContext
 import com.android.systemui.kosmos.Kosmos
-import com.android.systemui.media.controls.util.mediaSmartspaceLogger
 import com.android.systemui.util.time.systemClock
 
 val Kosmos.mediaFilterRepository by
-    Kosmos.Fixture {
-        MediaFilterRepository(
-            applicationContext = applicationContext,
-            systemClock = systemClock,
-            smartspaceLogger = mediaSmartspaceLogger,
-        )
-    }
+    Kosmos.Fixture { MediaFilterRepository(systemClock = systemClock) }
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/domain/pipeline/MediaDataFilterKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/domain/pipeline/MediaDataFilterKosmos.kt
index 61d5f1e..dae5119 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/domain/pipeline/MediaDataFilterKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/domain/pipeline/MediaDataFilterKosmos.kt
@@ -22,7 +22,6 @@
 import com.android.systemui.kosmos.Kosmos
 import com.android.systemui.media.controls.data.repository.mediaFilterRepository
 import com.android.systemui.media.controls.shared.mediaLogger
-import com.android.systemui.media.controls.util.mediaFlags
 import com.android.systemui.media.controls.util.mediaUiEventLogger
 import com.android.systemui.settings.userTracker
 import com.android.systemui.statusbar.notificationLockscreenUserManager
@@ -38,13 +37,12 @@
                 BroadcastSender(
                     applicationContext,
                     WakeLockFake.Builder(applicationContext),
-                    fakeExecutor
+                    fakeExecutor,
                 ),
             lockscreenUserManager = notificationLockscreenUserManager,
             executor = fakeExecutor,
             systemClock = fakeSystemClock,
             logger = mediaUiEventLogger,
-            mediaFlags = mediaFlags,
             mediaFilterRepository = mediaFilterRepository,
             mediaLogger = mediaLogger,
         )
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaCarouselInteractorKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaCarouselInteractorKosmos.kt
index ca1b3f5..e6b732a 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaCarouselInteractorKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaCarouselInteractorKosmos.kt
@@ -26,7 +26,6 @@
 import com.android.systemui.media.controls.domain.pipeline.mediaResumeListener
 import com.android.systemui.media.controls.domain.pipeline.mediaSessionBasedFilter
 import com.android.systemui.media.controls.domain.pipeline.mediaTimeoutListener
-import com.android.systemui.media.controls.util.mediaFlags
 
 val Kosmos.mediaCarouselInteractor by
     Kosmos.Fixture {
@@ -40,6 +39,5 @@
             mediaDataCombineLatest = mediaDataCombineLatest,
             mediaDataFilter = mediaDataFilter,
             mediaFilterRepository = mediaFilterRepository,
-            mediaFlags = mediaFlags,
         )
     }
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/ui/viewmodel/MediaCarouselViewModelKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/ui/viewmodel/MediaCarouselViewModelKosmos.kt
index 054ac2e..5e6434d 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/ui/viewmodel/MediaCarouselViewModelKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/ui/viewmodel/MediaCarouselViewModelKosmos.kt
@@ -24,7 +24,6 @@
 import com.android.systemui.media.controls.domain.pipeline.interactor.factory.mediaControlInteractorFactory
 import com.android.systemui.media.controls.domain.pipeline.interactor.mediaCarouselInteractor
 import com.android.systemui.media.controls.shared.mediaLogger
-import com.android.systemui.media.controls.util.mediaFlags
 import com.android.systemui.media.controls.util.mediaUiEventLogger
 import com.android.systemui.statusbar.notification.collection.provider.visualStabilityProvider
 
@@ -40,7 +39,6 @@
             controlInteractorFactory = mediaControlInteractorFactory,
             recommendationsViewModel = mediaRecommendationsViewModel,
             logger = mediaUiEventLogger,
-            mediaFlags = mediaFlags,
             mediaLogger = mediaLogger,
         )
     }
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/qs/FakeQSTile.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/qs/FakeQSTile.kt
index 4714969..c7ea6db 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/qs/FakeQSTile.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/qs/FakeQSTile.kt
@@ -22,7 +22,7 @@
 
 class FakeQSTile(var user: Int, var available: Boolean = true) : QSTile {
     private var tileSpec: String? = null
-    var destroyed = false
+    private var destroyed = false
     var hasDetailsViewModel: Boolean = true
     private var state = QSTile.State()
     val callbacks = mutableListOf<QSTile.Callback>()
@@ -64,6 +64,10 @@
         user = currentUser
     }
 
+    override fun getCurrentTileUser(): Int {
+        return user
+    }
+
     override fun getMetricsCategory(): Int {
         return 0
     }
@@ -76,6 +80,10 @@
         destroyed = true
     }
 
+    override fun isDestroyed(): Boolean {
+        return destroyed
+    }
+
     override fun getTileLabel(): CharSequence {
         return ""
     }
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/qs/external/TileLifecycleManagerKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/qs/external/TileLifecycleManagerKosmos.kt
index 4978558..f038fdd 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/qs/external/TileLifecycleManagerKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/qs/external/TileLifecycleManagerKosmos.kt
@@ -26,7 +26,7 @@
 import com.android.systemui.util.mockito.mock
 import com.android.systemui.util.time.fakeSystemClock
 
-val Kosmos.tileLifecycleManagerFactory: TileLifecycleManager.Factory by
+var Kosmos.tileLifecycleManagerFactory: TileLifecycleManager.Factory by
     Kosmos.Fixture {
         TileLifecycleManager.Factory { intent, userHandle ->
             TileLifecycleManager(
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/qs/pipeline/shared/logging/QSPipelineLoggerKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/qs/pipeline/shared/logging/QSPipelineLoggerKosmos.kt
index 7d52f5d..c153183 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/qs/pipeline/shared/logging/QSPipelineLoggerKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/qs/pipeline/shared/logging/QSPipelineLoggerKosmos.kt
@@ -17,7 +17,14 @@
 package com.android.systemui.qs.pipeline.shared.logging
 
 import com.android.systemui.kosmos.Kosmos
-import com.android.systemui.util.mockito.mock
+import com.android.systemui.log.logcatLogBuffer
 
 /** mock */
-var Kosmos.qsLogger: QSPipelineLogger by Kosmos.Fixture { mock<QSPipelineLogger>() }
+var Kosmos.qsLogger: QSPipelineLogger by
+    Kosmos.Fixture {
+        QSPipelineLogger(
+            logcatLogBuffer(QSPipelineLogger.TILE_LIST_TAG),
+            logcatLogBuffer(QSPipelineLogger.AUTO_ADD_TAG),
+            logcatLogBuffer(QSPipelineLogger.RESTORE_TAG),
+        )
+    }
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/qs/tiles/base/interactor/FakeQSTileUserActionInteractor.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/qs/tiles/base/interactor/FakeQSTileUserActionInteractor.kt
index bc1c60c..c058490 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/qs/tiles/base/interactor/FakeQSTileUserActionInteractor.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/qs/tiles/base/interactor/FakeQSTileUserActionInteractor.kt
@@ -33,7 +33,4 @@
     override suspend fun handleInput(input: QSTileInput<T>) {
         mutex.withLock { mutableInputs.add(input) }
     }
-
-    override var detailsViewModel: TileDetailsViewModel? =
-        FakeTileDetailsViewModel("FakeQSTileUserActionInteractor")
 }
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/qs/tiles/di/NewQSTileFactoryKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/qs/tiles/di/NewQSTileFactoryKosmos.kt
index 6787b8e..c223be4 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/qs/tiles/di/NewQSTileFactoryKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/qs/tiles/di/NewQSTileFactoryKosmos.kt
@@ -19,6 +19,7 @@
 import android.os.UserHandle
 import com.android.systemui.kosmos.Kosmos
 import com.android.systemui.qs.instanceIdSequenceFake
+import com.android.systemui.qs.pipeline.domain.interactor.currentTilesInteractor
 import com.android.systemui.qs.pipeline.shared.TileSpec
 import com.android.systemui.qs.shared.model.TileCategory
 import com.android.systemui.qs.tiles.base.viewmodel.QSTileViewModelFactory
@@ -56,7 +57,11 @@
                     override val config: QSTileConfig = config
                     override val isAvailable: StateFlow<Boolean> = MutableStateFlow(true)
 
-                    override fun onUserChanged(user: UserHandle) {}
+                    override var currentTileUser = currentTilesInteractor.userId.value
+
+                    override fun onUserChanged(user: UserHandle) {
+                        currentTileUser = user.identifier
+                    }
 
                     override fun forceUpdate() {}
 
@@ -68,7 +73,7 @@
         }
     }
 
-val Kosmos.newQSTileFactory by
+var Kosmos.newQSTileFactory by
     Kosmos.Fixture {
         NewQSTileFactory(
             qSTileConfigProvider,
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/settings/brightness/domain/interactor/BrightnessMirrorShowingInteractorKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/settings/brightness/domain/interactor/BrightnessMirrorShowingInteractorKosmos.kt
index 8f6b829..d4bed16 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/settings/brightness/domain/interactor/BrightnessMirrorShowingInteractorKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/settings/brightness/domain/interactor/BrightnessMirrorShowingInteractorKosmos.kt
@@ -20,4 +20,6 @@
 import com.android.systemui.settings.brightness.data.repository.brightnessMirrorShowingRepository
 
 val Kosmos.brightnessMirrorShowingInteractor by
-    Kosmos.Fixture { BrightnessMirrorShowingInteractor(brightnessMirrorShowingRepository) }
+    Kosmos.Fixture {
+        BrightnessMirrorShowingInteractorPassThrough(brightnessMirrorShowingRepository)
+    }
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/core/StatusBarOrchestratorKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/core/StatusBarOrchestratorKosmos.kt
index bdcab5f..9776fd9 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/core/StatusBarOrchestratorKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/core/StatusBarOrchestratorKosmos.kt
@@ -34,14 +34,29 @@
 import com.android.systemui.statusbar.data.repository.privacyDotWindowControllerStore
 import com.android.systemui.statusbar.data.repository.statusBarModeRepository
 import com.android.systemui.statusbar.mockNotificationRemoteInputManager
+import com.android.systemui.statusbar.phone.fakeAutoHideControllerStore
 import com.android.systemui.statusbar.phone.mockAutoHideController
-import com.android.systemui.statusbar.phone.multiDisplayAutoHideControllerStore
 import com.android.systemui.statusbar.window.data.repository.fakeStatusBarWindowStatePerDisplayRepository
 import com.android.systemui.statusbar.window.data.repository.statusBarWindowStateRepositoryStore
 import com.android.systemui.statusbar.window.fakeStatusBarWindowController
 import com.android.systemui.statusbar.window.statusBarWindowControllerStore
 import com.android.wm.shell.bubbles.bubblesOptional
 
+val Kosmos.multiDisplayStatusBarOrchestratorStore by
+    Kosmos.Fixture {
+        MultiDisplayStatusBarOrchestratorStore(
+            applicationCoroutineScope,
+            displayRepository,
+            statusBarOrchestratorFactory,
+            statusBarWindowControllerStore,
+            statusBarModeRepository,
+            statusBarInitializerStore,
+            fakeAutoHideControllerStore,
+            displayScopeRepository,
+            statusBarWindowStateRepositoryStore,
+        )
+    }
+
 val Kosmos.statusBarOrchestrator by
     Kosmos.Fixture {
         StatusBarOrchestrator(
@@ -74,15 +89,9 @@
     Kosmos.Fixture {
         MultiDisplayStatusBarStarter(
             applicationCoroutineScope,
-            displayScopeRepository,
-            statusBarOrchestratorFactory,
-            statusBarWindowStateRepositoryStore,
-            statusBarModeRepository,
+            multiDisplayStatusBarOrchestratorStore,
             displayRepository,
             statusBarInitializerStore,
-            statusBarWindowControllerStore,
-            statusBarInitializerStore,
-            multiDisplayAutoHideControllerStore,
             privacyDotWindowControllerStore,
             lightBarControllerStore,
             mockIWindowManager,
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/util/MediaSmartspaceLoggerKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/VisibilityLocationProviderKosmos.kt
similarity index 65%
copy from packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/util/MediaSmartspaceLoggerKosmos.kt
copy to packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/VisibilityLocationProviderKosmos.kt
index c63dec5..085d386 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/util/MediaSmartspaceLoggerKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/VisibilityLocationProviderKosmos.kt
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2024 The Android Open Source Project
+ * Copyright (C) 2025 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,10 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.systemui.media.controls.util
+package com.android.systemui.statusbar.notification
 
 import com.android.systemui.kosmos.Kosmos
-import org.mockito.Mockito.mock
+import org.mockito.kotlin.mock
 
-var Kosmos.mediaSmartspaceLogger by Kosmos.Fixture { MediaSmartspaceLogger() }
-val Kosmos.mockMediaSmartspaceLogger by Kosmos.Fixture { mock(MediaSmartspaceLogger::class.java) }
+val Kosmos.visibilityLocationProvider: VisibilityLocationProvider by Kosmos.Fixture { mock() }
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/collection/coordinator/VisualStabilityCoordinatorKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/collection/coordinator/VisualStabilityCoordinatorKosmos.kt
index 358d251..1a5c61a 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/collection/coordinator/VisualStabilityCoordinatorKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/collection/coordinator/VisualStabilityCoordinatorKosmos.kt
@@ -16,7 +16,41 @@
 
 package com.android.systemui.statusbar.notification.collection.coordinator
 
+import com.android.systemui.communal.domain.interactor.communalSceneInteractor
+import com.android.systemui.concurrency.fakeExecutor
+import com.android.systemui.dump.dumpManager
+import com.android.systemui.keyguard.domain.interactor.keyguardTransitionInteractor
+import com.android.systemui.keyguard.wakefulnessLifecycle
 import com.android.systemui.kosmos.Kosmos
-import com.android.systemui.util.mockito.mock
+import com.android.systemui.kosmos.testScope
+import com.android.systemui.plugins.statusbar.statusBarStateController
+import com.android.systemui.shade.domain.interactor.shadeAnimationInteractor
+import com.android.systemui.shade.domain.interactor.shadeInteractor
+import com.android.systemui.statusbar.notification.collection.provider.visualStabilityProvider
+import com.android.systemui.statusbar.notification.domain.interactor.seenNotificationsInteractor
+import com.android.systemui.statusbar.notification.stack.data.repository.headsUpNotificationRepository
+import com.android.systemui.statusbar.notification.visibilityLocationProvider
+import com.android.systemui.statusbar.policy.keyguardStateController
+import com.android.systemui.util.kotlin.JavaAdapter
 
-var Kosmos.visualStabilityCoordinator by Kosmos.Fixture { mock<VisualStabilityCoordinator>() }
+var Kosmos.visualStabilityCoordinator: VisualStabilityCoordinator by
+    Kosmos.Fixture {
+        VisualStabilityCoordinator(
+            fakeExecutor,
+            fakeExecutor,
+            dumpManager,
+            headsUpNotificationRepository,
+            shadeAnimationInteractor,
+            JavaAdapter(testScope.backgroundScope),
+            seenNotificationsInteractor,
+            statusBarStateController,
+            visibilityLocationProvider,
+            visualStabilityProvider,
+            wakefulnessLifecycle,
+            communalSceneInteractor,
+            shadeInteractor,
+            keyguardTransitionInteractor,
+            keyguardStateController,
+            visualStabilityCoordinatorLogger,
+        )
+    }
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/util/MediaSmartspaceLoggerKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/collection/coordinator/VisualStabilityCoordinatorLoggerKosmos.kt
similarity index 65%
rename from packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/util/MediaSmartspaceLoggerKosmos.kt
rename to packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/collection/coordinator/VisualStabilityCoordinatorLoggerKosmos.kt
index c63dec5..6645cdc 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/media/controls/util/MediaSmartspaceLoggerKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/collection/coordinator/VisualStabilityCoordinatorLoggerKosmos.kt
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2024 The Android Open Source Project
+ * Copyright (C) 2025 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,10 +14,10 @@
  * limitations under the License.
  */
 
-package com.android.systemui.media.controls.util
+package com.android.systemui.statusbar.notification.collection.coordinator
 
 import com.android.systemui.kosmos.Kosmos
-import org.mockito.Mockito.mock
+import org.mockito.kotlin.mock
 
-var Kosmos.mediaSmartspaceLogger by Kosmos.Fixture { MediaSmartspaceLogger() }
-val Kosmos.mockMediaSmartspaceLogger by Kosmos.Fixture { mock(MediaSmartspaceLogger::class.java) }
+val Kosmos.visualStabilityCoordinatorLogger: VisualStabilityCoordinatorLogger by
+    Kosmos.Fixture { mock() }
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowBuilder.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowBuilder.kt
index 09c632c..771e1a5 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowBuilder.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowBuilder.kt
@@ -91,16 +91,17 @@
 import com.android.systemui.util.Assert.runWithCurrentThreadAsMainThread
 import com.android.systemui.util.DeviceConfigProxyFake
 import com.android.systemui.util.concurrency.FakeExecutor
-import com.android.systemui.util.mockito.whenever
 import com.android.systemui.util.time.FakeSystemClock
 import java.util.concurrent.CountDownLatch
 import java.util.concurrent.Executor
 import java.util.concurrent.TimeUnit
+import kotlinx.coroutines.flow.MutableStateFlow
 import kotlinx.coroutines.test.TestScope
 import org.junit.Assert.assertTrue
 import org.mockito.ArgumentCaptor
 import org.mockito.ArgumentMatchers
 import org.mockito.Mockito
+import org.mockito.kotlin.whenever
 
 class ExpandableNotificationRowBuilder(
     private val context: Context,
@@ -149,7 +150,10 @@
 
         mGroupExpansionManager = GroupExpansionManagerImpl(mDumpManager, mGroupMembershipManager)
         mUserManager = Mockito.mock(UserManager::class.java, STUB_ONLY)
-        mHeadsUpManager = Mockito.mock(HeadsUpManager::class.java, STUB_ONLY)
+        mHeadsUpManager =
+            Mockito.mock(HeadsUpManager::class.java, STUB_ONLY).apply {
+                whenever(isTrackingHeadsUp()).thenReturn(MutableStateFlow(false))
+            }
         mIconManager =
             IconManager(
                 Mockito.mock(CommonNotifCollection::class.java, STUB_ONLY),
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/stack/AmbientStateKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/stack/AmbientStateKosmos.kt
index d65a4a0..4f1bf95 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/stack/AmbientStateKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/stack/AmbientStateKosmos.kt
@@ -22,6 +22,7 @@
 import com.android.systemui.kosmos.Kosmos.Fixture
 import com.android.systemui.shade.transition.largeScreenShadeInterpolator
 import com.android.systemui.statusbar.notification.headsup.mockAvalancheController
+import com.android.systemui.statusbar.notification.stack.data.repository.headsUpNotificationRepository
 import com.android.systemui.statusbar.phone.statusBarKeyguardViewManager
 
 val Kosmos.ambientState by Fixture {
@@ -32,6 +33,7 @@
         /*bypassController=*/ stackScrollAlgorithmBypassController,
         /*statusBarKeyguardViewManager=*/ statusBarKeyguardViewManager,
         /*largeScreenShadeInterpolator=*/ largeScreenShadeInterpolator,
+        /*headsUpRepository=*/ headsUpNotificationRepository,
         /*avalancheController=*/ mockAvalancheController,
     )
 }
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/stack/data/repository/HeadsUpNotificationRepositoryKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/stack/data/repository/HeadsUpNotificationRepositoryKosmos.kt
index 1fa6236..3406d81 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/stack/data/repository/HeadsUpNotificationRepositoryKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/stack/data/repository/HeadsUpNotificationRepositoryKosmos.kt
@@ -35,6 +35,10 @@
         orderedHeadsUpRows.map { it.firstOrNull() }.distinctUntilChanged()
     override val activeHeadsUpRows: Flow<Set<HeadsUpRowRepository>> =
         orderedHeadsUpRows.map { it.toSet() }.distinctUntilChanged()
+    override val isTrackingHeadsUp: MutableStateFlow<Boolean> = MutableStateFlow(false)
+
+    override fun isHeadsUpEntry(key: String): Boolean =
+        orderedHeadsUpRows.value.any { it.key == key }
 
     override fun setHeadsUpAnimatingAway(animatingAway: Boolean) {
         isHeadsUpAnimatingAway.value = animatingAway
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/stack/ui/viewmodel/SharedNotificationContainerViewModelKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/stack/ui/viewmodel/SharedNotificationContainerViewModelKosmos.kt
index 51bb94f..17ef208 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/stack/ui/viewmodel/SharedNotificationContainerViewModelKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/stack/ui/viewmodel/SharedNotificationContainerViewModelKosmos.kt
@@ -30,7 +30,6 @@
 import com.android.systemui.keyguard.ui.viewmodel.aodToLockscreenTransitionViewModel
 import com.android.systemui.keyguard.ui.viewmodel.aodToOccludedTransitionViewModel
 import com.android.systemui.keyguard.ui.viewmodel.aodToPrimaryBouncerTransitionViewModel
-import com.android.systemui.keyguard.ui.viewmodel.dozingToDreamingTransitionViewModel
 import com.android.systemui.keyguard.ui.viewmodel.dozingToGlanceableHubTransitionViewModel
 import com.android.systemui.keyguard.ui.viewmodel.dozingToLockscreenTransitionViewModel
 import com.android.systemui.keyguard.ui.viewmodel.dozingToOccludedTransitionViewModel
@@ -84,7 +83,6 @@
         aodToLockscreenTransitionViewModel = aodToLockscreenTransitionViewModel,
         aodToOccludedTransitionViewModel = aodToOccludedTransitionViewModel,
         aodToPrimaryBouncerTransitionViewModel = aodToPrimaryBouncerTransitionViewModel,
-        dozingToDreamingTransitionViewModel = dozingToDreamingTransitionViewModel,
         dozingToGlanceableHubTransitionViewModel = dozingToGlanceableHubTransitionViewModel,
         dozingToLockscreenTransitionViewModel = dozingToLockscreenTransitionViewModel,
         dozingToOccludedTransitionViewModel = dozingToOccludedTransitionViewModel,
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconsViewModelKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconsViewModelKosmos.kt
index c5f6557..f2f75c4 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconsViewModelKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/pipeline/mobile/ui/viewmodel/MobileIconsViewModelKosmos.kt
@@ -16,7 +16,6 @@
 
 package com.android.systemui.statusbar.pipeline.mobile.ui.viewmodel
 
-import com.android.systemui.flags.featureFlagsClassic
 import com.android.systemui.kosmos.Kosmos
 import com.android.systemui.kosmos.applicationCoroutineScope
 import com.android.systemui.statusbar.pipeline.airplane.domain.interactor.airplaneModeInteractor
@@ -31,7 +30,6 @@
             interactor = mobileIconsInteractor,
             airplaneModeInteractor = airplaneModeInteractor,
             constants = mock(),
-            flags = featureFlagsClassic,
             scope = applicationCoroutineScope,
         )
     }
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/volume/dialog/domain/interactor/VolumeDialogVisibilityInteractorKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/volume/dialog/domain/interactor/VolumeDialogVisibilityInteractorKosmos.kt
index 888b7e6..07c4ec5 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/volume/dialog/domain/interactor/VolumeDialogVisibilityInteractorKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/volume/dialog/domain/interactor/VolumeDialogVisibilityInteractorKosmos.kt
@@ -16,6 +16,7 @@
 
 package com.android.systemui.volume.dialog.domain.interactor
 
+import com.android.systemui.accessibility.data.repository.accessibilityRepository
 import com.android.systemui.kosmos.Kosmos
 import com.android.systemui.kosmos.applicationCoroutineScope
 import com.android.systemui.plugins.volumeDialogController
@@ -28,8 +29,10 @@
         VolumeDialogVisibilityInteractor(
             applicationCoroutineScope,
             volumeDialogCallbacksInteractor,
+            volumeDialogStateInteractor,
             volumeTracer,
             volumeDialogVisibilityRepository,
+            accessibilityRepository,
             volumeDialogController,
             secureSettingsRepository,
         )
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/volume/dialog/sliders/ui/viewmodel/VolumeDialogSliderViewModelKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/volume/dialog/sliders/ui/viewmodel/VolumeDialogSliderViewModelKosmos.kt
index c9396f5..e177399 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/volume/dialog/sliders/ui/viewmodel/VolumeDialogSliderViewModelKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/volume/dialog/sliders/ui/viewmodel/VolumeDialogSliderViewModelKosmos.kt
@@ -16,6 +16,7 @@
 
 package com.android.systemui.volume.dialog.sliders.ui.viewmodel
 
+import android.content.applicationContext
 import com.android.internal.logging.uiEventLogger
 import com.android.systemui.kosmos.Kosmos
 import com.android.systemui.kosmos.applicationCoroutineScope
@@ -29,6 +30,7 @@
 val Kosmos.volumeDialogSliderViewModel by
     Kosmos.Fixture {
         VolumeDialogSliderViewModel(
+            context = applicationContext,
             sliderType = volumeDialogSliderType,
             interactor = volumeDialogSliderInteractor,
             inputEventsInteractor = volumeDialogSliderInputEventsInteractor,
diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/volume/dialog/ui/viewmodel/VolumeDialogViewModelKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/volume/dialog/ui/viewmodel/VolumeDialogViewModelKosmos.kt
index 05ef462..f08c08a 100644
--- a/packages/SystemUI/tests/utils/src/com/android/systemui/volume/dialog/ui/viewmodel/VolumeDialogViewModelKosmos.kt
+++ b/packages/SystemUI/tests/utils/src/com/android/systemui/volume/dialog/ui/viewmodel/VolumeDialogViewModelKosmos.kt
@@ -18,6 +18,7 @@
 
 import android.content.applicationContext
 import com.android.systemui.kosmos.Kosmos
+import com.android.systemui.kosmos.applicationCoroutineScope
 import com.android.systemui.statusbar.policy.configurationController
 import com.android.systemui.statusbar.policy.devicePostureController
 import com.android.systemui.volume.dialog.domain.interactor.volumeDialogStateInteractor
@@ -28,6 +29,7 @@
     Kosmos.Fixture {
         VolumeDialogViewModel(
             applicationContext,
+            applicationCoroutineScope,
             volumeDialogVisibilityInteractor,
             volumeDialogSlidersInteractor,
             volumeDialogStateInteractor,
diff --git a/packages/SystemUI/tools/lint/README b/packages/SystemUI/tools/lint/README
deleted file mode 100644
index 0745196..0000000
--- a/packages/SystemUI/tools/lint/README
+++ /dev/null
@@ -1,26 +0,0 @@
-This directory contains configuration files for lint, which is run
-in as an upload hook for repo upload.
-
-lint.xml contains checks that are turned on or off, or whitelisted /
-blacklisted for particular directories, if they are different from
-the default.
-
-baseline.xml contains the list of existing "grandfathered" lint
-errors in the codebase. It is generated using ./tools/lint/update_baseline.sh
-
-When you hit a lint error that should not be triggered, there are 3
-possible resolutions:
-1. Use tools:ignore or @SuppressLint annotation. This is preferred
-   for cases where the lint violation is intended, so that reviewers
-   can review whether the suppression is appropriate.
-2. Use tools/lint.xml to ignore a lint check which we don't care
-   about for any file, or checks that are not actionable by the
-   CL author (e.g. translation issues)
-3. If there are lint errors that should be fixed, but cannot be done
-   immediately for some reason, the issue should be added to
-   baseline.xml.
-
-
-References
-- https://developer.android.com/studio/write/lint.html
-- http://tools.android.com/tips/lint-checks
diff --git a/packages/SystemUI/tools/lint/baseline.xml b/packages/SystemUI/tools/lint/baseline.xml
deleted file mode 100644
index 43f8300..0000000
--- a/packages/SystemUI/tools/lint/baseline.xml
+++ /dev/null
@@ -1,89764 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<issues format="4">
-
-    <issue
-        id="LintError"
-        message="No `.class` files were found in project &quot;.&quot;, so none of the classfile based checks could be run. Does the project need to be built first?">
-        <location
-            file="."/>
-    </issue>
-
-    <issue
-        id="StopShip"
-        message="`STOPSHIP` comment found; points to code which must be fixed prior to release"
-        errorLine1="    &lt;!-- STOPSHIP Monitoring strings still need to be finalized and approved -->"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1152"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="DuplicateIds"
-        message="Duplicate id `@+id/wifi_combo`, already defined earlier in this layout"
-        errorLine1="            android:id=&quot;@+id/wifi_combo&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/status_bar_wifi_group.xml"
-            line="57"
-            column="13"/>
-        <location
-            file="res/layout/status_bar_wifi_group.xml"
-            line="22"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="CutPasteId"
-        message="The id `R.id.tuner_zen_switch` has already been looked up in this method; possible cut &amp; paste error?"
-        errorLine1="        ViewGroup detail_header = findViewById(R.id.tuner_zen_switch);"
-        errorLine2="                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="src/com/android/systemui/tuner/TunerZenModePanel.java"
-            line="71"
-            column="35"/>
-        <location
-            file="src/com/android/systemui/tuner/TunerZenModePanel.java"
-            line="56"
-            column="25"/>
-    </issue>
-
-    <issue
-        id="DuplicateIncludedIds"
-        message="Duplicate id @+id/center_group, defined or included multiple times in layout/nav_bar_tuner_inflater.xml: [layout/nav_bar_tuner_inflater.xml => layout/navigation_layout.xml defines @+id/center_group, layout/nav_bar_tuner_inflater.xml => layout/navigation_layout_rot90.xml defines @+id/center_group]"
-        errorLine1="    &lt;include android:id=&quot;@+id/rot90&quot; layout=&quot;@layout/navigation_layout_rot90&quot; />"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/nav_bar_tuner_inflater.xml"
-            line="25"
-            column="5"/>
-        <location
-            file="res/layout/navigation_layout.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/layout/navigation_layout_rot90.xml"
-            line="43"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="DuplicateIncludedIds"
-        message="Duplicate id @+id/ends_group, defined or included multiple times in layout/nav_bar_tuner_inflater.xml: [layout/nav_bar_tuner_inflater.xml => layout/navigation_layout.xml defines @+id/ends_group, layout/nav_bar_tuner_inflater.xml => layout/navigation_layout_rot90.xml defines @+id/ends_group]"
-        errorLine1="    &lt;include android:id=&quot;@+id/rot90&quot; layout=&quot;@layout/navigation_layout_rot90&quot; />"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/nav_bar_tuner_inflater.xml"
-            line="25"
-            column="5"/>
-        <location
-            file="res/layout/navigation_layout.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/layout/navigation_layout_rot90.xml"
-            line="35"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="DuplicateIncludedIds"
-        message="Duplicate id @+id/nav_buttons, defined or included multiple times in layout/nav_bar_tuner_inflater.xml: [layout/nav_bar_tuner_inflater.xml => layout/navigation_layout.xml defines @+id/nav_buttons, layout/nav_bar_tuner_inflater.xml => layout/navigation_layout_rot90.xml defines @+id/nav_buttons]"
-        errorLine1="    &lt;include android:id=&quot;@+id/rot90&quot; layout=&quot;@layout/navigation_layout_rot90&quot; />"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/nav_bar_tuner_inflater.xml"
-            line="25"
-            column="5"/>
-        <location
-            file="res/layout/navigation_layout.xml"
-            line="28"
-            column="9"/>
-        <location
-            file="res/layout/navigation_layout_rot90.xml"
-            line="28"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="DuplicateIncludedIds"
-        message="Duplicate id @+id/qs_detail_header_progress, defined or included multiple times in layout/qs_panel.xml: [layout/qs_panel.xml => layout/qs_detail.xml defines @+id/qs_detail_header_progress, layout/qs_panel.xml => layout/quick_status_bar_expanded_header.xml defines @+id/qs_detail_header_progress]"
-        errorLine1="    &lt;include android:id=&quot;@+id/qs_detail&quot; layout=&quot;@layout/qs_detail&quot; />"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/qs_panel.xml"
-            line="68"
-            column="5"/>
-        <location
-            file="res/layout/qs_detail.xml"
-            line="37"
-            column="9"/>
-        <location
-            file="res/layout/quick_status_bar_expanded_header.xml"
-            line="58"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="MissingPrefix"
-        message="Unexpected namespace prefix &quot;xmlns&quot; found for tag `LinearLayout`"
-        errorLine1="        xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_facet_button.xml"
-            line="22"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="MissingPrefix"
-        message="Unexpected namespace prefix &quot;xmlns&quot; found for tag `RelativeLayout`"
-        errorLine1="        xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_qs_panel.xml"
-            line="31"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="MissingPrefix"
-        message="Unexpected namespace prefix &quot;xmlns&quot; found for tag `RelativeLayout`"
-        errorLine1="        xmlns:app=&quot;http://schemas.android.com/apk/res-auto&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_qs_panel.xml"
-            line="32"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="SdCardPath"
-        message="Do not hardcode &quot;/sdcard/&quot;; use `Environment.getExternalStorageDirectory().getPath()` instead"
-        errorLine1="        ? new GestureRecorder(&quot;/sdcard/statusbar_gestures.dat&quot;)"
-        errorLine2="                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="src/com/android/systemui/statusbar/phone/StatusBar.java"
-            line="407"
-            column="31"/>
-    </issue>
-
-    <issue
-        id="Suspicious0dp"
-        message="Suspicious size: this will make the view invisible, should be used with `layout_weight`"
-        errorLine1="            android:layout_height=&quot;0dp&quot; />"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/qs_tile_label.xml"
-            line="37"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="IncludeLayoutParam"
-        message="Layout parameter `layout_alignParentTop` ignored unless both `layout_width` and `layout_height` are also specified on `&lt;include>` tag"
-        errorLine1="            android:layout_alignParentTop=&quot;true&quot;/>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_fullscreen_user_switcher.xml"
-            line="34"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="ExtraText"
-        message="Unexpected text found in layout file: &quot;&quot;>&quot;"
-        errorLine1="        android:alpha=&quot;0&quot;/>&quot;>"
-        errorLine2="                           ^">
-        <location
-            file="res/layout/docked_stack_divider.xml"
-            line="30"
-            column="28"/>
-    </issue>
-
-    <issue
-        id="ExtraText"
-        message="Unexpected text found in layout file: &quot;->&quot;"
-        errorLine1="&lt;merge xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;>->"
-        errorLine2="                                                                  ^">
-        <location
-            file="res/layout/qs_customize_panel_content.xml"
-            line="18"
-            column="67"/>
-    </issue>
-
-    <issue
-        id="SpUsage"
-        message="Should use &quot;`sp`&quot; instead of &quot;`dp`&quot; for text sizes"
-        errorLine1="                android:textSize=&quot;40dp&quot;"
-        errorLine2="                ~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/mland.xml"
-            line="60"
-            column="17"/>
-    </issue>
-
-    <issue
-        id="SpUsage"
-        message="Should use &quot;`sp`&quot; instead of &quot;`dp`&quot; for text sizes"
-        errorLine1="        android:textSize=&quot;11dp&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/quick_status_bar_expanded_header.xml"
-            line="74"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="SpUsage"
-        message="Should use &quot;`sp`&quot; instead of &quot;`dp`&quot; for text sizes"
-        errorLine1="        android:textSize=&quot;20dp&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/status_bar_no_recent_apps.xml"
-            line="29"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="            android:singleLine=&quot;true&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/app_ops_info.xml"
-            line="52"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/battery_percentage_view.xml"
-            line="24"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_fullscreen_user_pod.xml"
-            line="41"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="            android:singleLine=&quot;true&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_left_navigation_bar.xml"
-            line="86"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="            android:singleLine=&quot;true&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_navigation_bar.xml"
-            line="84"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="            android:singleLine=&quot;true&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_right_navigation_bar.xml"
-            line="88"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_status_bar_header.xml"
-            line="38"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_top_navigation_bar.xml"
-            line="31"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="                android:singleLine=&quot;true&quot;"
-        errorLine2="                ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/fingerprint_dialog.xml"
-            line="63"
-            column="17"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="                android:singleLine=&quot;true&quot;"
-        errorLine2="                ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/fingerprint_dialog.xml"
-            line="78"
-            column="17"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/foreground_service_item.xml"
-            line="43"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/foreground_service_title.xml"
-            line="28"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/heads_up_status_bar_layout.xml"
-            line="39"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/hybrid_notification.xml"
-            line="28"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/hybrid_notification.xml"
-            line="35"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="    android:singleLine=&quot;true&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/hybrid_overflow_number.xml"
-            line="25"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: False is the default, so just remove the attribute"
-        errorLine1="            android:singleLine=&quot;false&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/keyboard_shortcut_app_item.xml"
-            line="45"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="          android:singleLine=&quot;true&quot;"
-        errorLine2="          ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/keyboard_shortcuts_key_view.xml"
-            line="24"
-            column="11"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/keyguard_status_bar.xml"
-            line="76"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="            android:singleLine=&quot;true&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/notification_info.xml"
-            line="51"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot; />"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/operator_name.xml"
-            line="30"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="                android:singleLine=&quot;true&quot; />"
-        errorLine2="                ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/qs_footer_impl.xml"
-            line="68"
-            column="17"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/qs_tile_label.xml"
-            line="78"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/quick_qs_status_icons.xml"
-            line="37"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/quick_status_bar_header_system_icons.xml"
-            line="38"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/recents_task_view_header.xml"
-            line="43"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/recents_task_view_header_overlay.xml"
-            line="40"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="            android:singleLine=&quot;true&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/remote_input.xml"
-            line="42"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/split_clock_view.xml"
-            line="28"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/split_clock_view.xml"
-            line="37"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/split_clock_view.xml"
-            line="50"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="                    android:singleLine=&quot;true&quot;"
-        errorLine2="                    ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/status_bar.xml"
-            line="78"
-            column="21"/>
-    </issue>
-
-    <issue
-        id="Deprecated"
-        message="`android:singleLine` is deprecated: Use `maxLines=&quot;1&quot;` instead"
-        errorLine1="        android:singleLine=&quot;true&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/status_bar_alarm_group.xml"
-            line="32"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Orientation"
-        message="No orientation specified, and the default is horizontal. This is a common source of bugs when children are added dynamically."
-        errorLine1="    &lt;LinearLayout"
-        errorLine2="    ^">
-        <location
-            file="res/layout/signal_cluster_view.xml"
-            line="112"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_left_70`; missing conversion character in &apos;`% a`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_left_70&quot; msgid=&quot;3612060638991687254&quot;>&quot;Gawing 70% ang nasa kaliwa&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-tl/strings.xml"
-            line="754"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_left_70`; missing conversion character in &apos;`% n`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_left_70&quot; msgid=&quot;3612060638991687254&quot;>&quot;70% no ecrã esquerdo&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="754"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_left_50`; missing conversion character in &apos;`% a`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_left_50&quot; msgid=&quot;1248083470322193075&quot;>&quot;Gawing 50% ang nasa kaliwa&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-tl/strings.xml"
-            line="755"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_left_50`; missing conversion character in &apos;`% n`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_left_50&quot; msgid=&quot;1248083470322193075&quot;>&quot;50% no ecrã esquerdo&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="755"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_left_30`; missing conversion character in &apos;`% a`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_left_30&quot; msgid=&quot;543324403127069386&quot;>&quot;Gawing 30% ang nasa kaliwa&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-tl/strings.xml"
-            line="756"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_left_30`; missing conversion character in &apos;`% n`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_left_30&quot; msgid=&quot;543324403127069386&quot;>&quot;30% no ecrã esquerdo&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="756"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_top_70`; missing conversion character in &apos;`% a`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_70&quot; msgid=&quot;5090779195650364522&quot;>&quot;Gawing 70% ang nasa itaas&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-tl/strings.xml"
-            line="759"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_top_70`; missing conversion character in &apos;`% n`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_70&quot; msgid=&quot;5090779195650364522&quot;>&quot;70% no ecrã superior&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="759"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_top_50`; missing conversion character in &apos;`% a`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_50&quot; msgid=&quot;6385859741925078668&quot;>&quot;Gawing 50% ang nasa itaas&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-tl/strings.xml"
-            line="760"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_top_50`; missing conversion character in &apos;`% n`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_50&quot; msgid=&quot;6385859741925078668&quot;>&quot;50% no ecrã superior&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="760"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_top_30`; missing conversion character in &apos;`% a`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_30&quot; msgid=&quot;6201455163864841205&quot;>&quot;Gawing 30% ang nasa itaas&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-tl/strings.xml"
-            line="761"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_top_30`; missing conversion character in &apos;`% n`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_30&quot; msgid=&quot;6201455163864841205&quot;>&quot;30% no ecrã superior&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="761"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_top_70`; missing conversion character in &apos;`% a`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_70&quot; msgid=&quot;5090779195650364522&quot;>&quot;70 % arriba&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-gl/strings.xml"
-            line="761"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_top_50`; missing conversion character in &apos;`% a`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_50&quot; msgid=&quot;6385859741925078668&quot;>&quot;50 % arriba&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-gl/strings.xml"
-            line="762"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_top_30`; missing conversion character in &apos;`% a`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_30&quot; msgid=&quot;6201455163864841205&quot;>&quot;30 % arriba&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-gl/strings.xml"
-            line="763"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_top_70`; missing conversion character in &apos;`% g`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_70&quot; msgid=&quot;5090779195650364522&quot;>&quot;70% górnej części ekranu&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-pl/strings.xml"
-            line="769"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_top_50`; missing conversion character in &apos;`% g`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_50&quot; msgid=&quot;6385859741925078668&quot;>&quot;50% górnej części ekranu&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-pl/strings.xml"
-            line="770"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_top_30`; missing conversion character in &apos;`% g`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_30&quot; msgid=&quot;6201455163864841205&quot;>&quot;30% górnej części ekranu&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-pl/strings.xml"
-            line="771"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_top_70`; missing conversion character in &apos;`% n`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_70&quot; msgid=&quot;5090779195650364522&quot;>&quot;70 % nahoře&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-cs/strings.xml"
-            line="771"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_top_50`; missing conversion character in &apos;`% n`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_50&quot; msgid=&quot;6385859741925078668&quot;>&quot;50 % nahoře&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-cs/strings.xml"
-            line="772"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatInvalid"
-        message="Incorrect formatting string `accessibility_action_divider_top_30`; missing conversion character in &apos;`% n`&apos; ?"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_30&quot; msgid=&quot;6201455163864841205&quot;>&quot;30 % nahoře&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-cs/strings.xml"
-            line="773"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatMatches"
-        message="Inconsistent formatting types for argument #1 in format string `accessibility_action_divider_top_70` (&apos;% 70e&apos;): Found both &apos;`o`&apos; and &apos;`e`&apos; (in values-de/strings.xml)"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_70&quot; msgid=&quot;5090779195650364522&quot;>&quot;Ezarri goialdea % 70en&quot;&lt;/string>"
-        errorLine2="                                                                                                    ~~~~~">
-        <location
-            file="res/values-eu/strings.xml"
-            line="761"
-            column="101"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="763"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatMatches"
-        message="Inconsistent formatting types for argument #1 in format string `accessibility_action_divider_top_50` (&apos;% 50e&apos;): Found both &apos;`o`&apos; and &apos;`e`&apos; (in values-de/strings.xml)"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_50&quot; msgid=&quot;6385859741925078668&quot;>&quot;Ezarri goialdea % 50en&quot;&lt;/string>"
-        errorLine2="                                                                                                    ~~~~~">
-        <location
-            file="res/values-eu/strings.xml"
-            line="762"
-            column="101"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="764"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="StringFormatMatches"
-        message="Inconsistent formatting types for argument #1 in format string `accessibility_action_divider_top_30` (&apos;% 30e&apos;): Found both &apos;`o`&apos; and &apos;`e`&apos; (in values-de/strings.xml)"
-        errorLine1="    &lt;string name=&quot;accessibility_action_divider_top_30&quot; msgid=&quot;6201455163864841205&quot;>&quot;Ezarri goialdea % 30en&quot;&lt;/string>"
-        errorLine2="                                                                                                    ~~~~~">
-        <location
-            file="res/values-eu/strings.xml"
-            line="763"
-            column="101"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="765"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="PluralsCandidate"
-        message="Formatting %d followed by words (&quot;per&quot;): This should probably be a plural rather than a string"
-        errorLine1="    &lt;string name=&quot;accessibility_battery_level&quot; msgid=&quot;7451474187113371965&quot;>&quot;Battery &lt;xliff:g id=&quot;NUMBER&quot;>%d&lt;/xliff:g> per cent.&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="174"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="PluralsCandidate"
-        message="Formatting %d followed by words (&quot;per&quot;): This should probably be a plural rather than a string"
-        errorLine1="    &lt;string name=&quot;accessibility_battery_level&quot; msgid=&quot;7451474187113371965&quot;>&quot;Battery &lt;xliff:g id=&quot;NUMBER&quot;>%d&lt;/xliff:g> per cent.&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="174"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="PluralsCandidate"
-        message="Formatting %d followed by words (&quot;per&quot;): This should probably be a plural rather than a string"
-        errorLine1="    &lt;string name=&quot;accessibility_battery_level&quot; msgid=&quot;7451474187113371965&quot;>&quot;Battery &lt;xliff:g id=&quot;NUMBER&quot;>%d&lt;/xliff:g> per cent.&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="174"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="PluralsCandidate"
-        message="Formatting %d followed by words (&quot;per&quot;): This should probably be a plural rather than a string"
-        errorLine1="    &lt;string name=&quot;accessibility_battery_level&quot; msgid=&quot;7451474187113371965&quot;>&quot;Battery &lt;xliff:g id=&quot;NUMBER&quot;>%d&lt;/xliff:g> per cent.&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="174"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="PluralsCandidate"
-        message="Formatting %d followed by words (&quot;percent&quot;): This should probably be a plural rather than a string"
-        errorLine1="    &lt;string name=&quot;accessibility_battery_level_charging&quot; msgid=&quot;1147587904439319646&quot;>&quot;Battery charging, &lt;xliff:g id=&quot;BATTERY_PERCENTAGE&quot;>%d&lt;/xliff:g> percent.&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="175"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="PluralsCandidate"
-        message="Formatting %d followed by words (&quot;percent&quot;): This should probably be a plural rather than a string"
-        errorLine1="    &lt;string name=&quot;accessibility_battery_level_charging&quot; msgid=&quot;1147587904439319646&quot;>&quot;Battery charging, &lt;xliff:g id=&quot;BATTERY_PERCENTAGE&quot;>%d&lt;/xliff:g> percent.&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="175"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="PluralsCandidate"
-        message="Formatting %d followed by words (&quot;percent&quot;): This should probably be a plural rather than a string"
-        errorLine1="    &lt;string name=&quot;accessibility_battery_level_charging&quot; msgid=&quot;1147587904439319646&quot;>&quot;Battery charging, &lt;xliff:g id=&quot;BATTERY_PERCENTAGE&quot;>%d&lt;/xliff:g> percent.&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="175"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="PluralsCandidate"
-        message="Formatting %d followed by words (&quot;percent&quot;): This should probably be a plural rather than a string"
-        errorLine1="    &lt;string name=&quot;accessibility_battery_level_charging&quot; msgid=&quot;1147587904439319646&quot;>&quot;Battery charging, &lt;xliff:g id=&quot;BATTERY_PERCENTAGE&quot;>%d&lt;/xliff:g> percent.&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="175"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="PluralsCandidate"
-        message="Formatting %d followed by words (&quot;Devices&quot;): This should probably be a plural rather than a string"
-        errorLine1="    &lt;string name=&quot;quick_settings_bluetooth_multiple_devices_label&quot; msgid=&quot;3912245565613684735&quot;>&quot;Bluetooth (&lt;xliff:g id=&quot;NUMBER&quot;>%d&lt;/xliff:g> Devices)&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="282"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="PluralsCandidate"
-        message="Formatting %d followed by words (&quot;Devices&quot;): This should probably be a plural rather than a string"
-        errorLine1="    &lt;string name=&quot;quick_settings_bluetooth_multiple_devices_label&quot; msgid=&quot;3912245565613684735&quot;>&quot;Bluetooth (&lt;xliff:g id=&quot;NUMBER&quot;>%d&lt;/xliff:g> Devices)&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="282"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="PluralsCandidate"
-        message="Formatting %d followed by words (&quot;Devices&quot;): This should probably be a plural rather than a string"
-        errorLine1="    &lt;string name=&quot;quick_settings_bluetooth_multiple_devices_label&quot; msgid=&quot;3912245565613684735&quot;>&quot;Bluetooth (&lt;xliff:g id=&quot;NUMBER&quot;>%d&lt;/xliff:g> Devices)&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="282"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="PluralsCandidate"
-        message="Formatting %d followed by words (&quot;Devices&quot;): This should probably be a plural rather than a string"
-        errorLine1="    &lt;string name=&quot;quick_settings_bluetooth_multiple_devices_label&quot; msgid=&quot;3912245565613684735&quot;>&quot;Bluetooth (&lt;xliff:g id=&quot;NUMBER&quot;>%d&lt;/xliff:g> Devices)&quot;&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="282"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="PluralsCandidate"
-        message="Formatting %d followed by words (&quot;percent&quot;): This should probably be a plural rather than a string"
-        errorLine1="    &lt;string name=&quot;accessibility_battery_level&quot;>Battery &lt;xliff:g id=&quot;number&quot;>%d&lt;/xliff:g> percent.&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="436"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="PluralsCandidate"
-        message="Formatting %d followed by words (&quot;percent&quot;): This should probably be a plural rather than a string"
-        errorLine1="    &lt;string name=&quot;accessibility_battery_level_charging&quot;>Battery charging, &lt;xliff:g id=&quot;battery_percentage&quot;>%d&lt;/xliff:g> percent.&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="439"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="PluralsCandidate"
-        message="Formatting %d followed by words (&quot;Devices&quot;): This should probably be a plural rather than a string"
-        errorLine1="    &lt;string name=&quot;quick_settings_bluetooth_multiple_devices_label&quot;>Bluetooth (&lt;xliff:g id=&quot;number&quot;>%d&lt;/xliff:g> Devices)&lt;/string>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="683"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ExportedContentProvider"
-        message="Exported content providers can provide access to potentially sensitive data"
-        errorLine1="        &lt;provider android:name=&quot;.keyguard.KeyguardSliceProvider&quot;"
-        errorLine2="        ^">
-        <location
-            file="AndroidManifest.xml"
-            line="605"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ExportedReceiver"
-        message="Exported receiver does not require permission"
-        errorLine1="        &lt;receiver"
-        errorLine2="        ^">
-        <location
-            file="AndroidManifest.xml"
-            line="611"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ExportedService"
-        message="Exported service does not require permission"
-        errorLine1="        &lt;service android:name=&quot;SystemUIService&quot;"
-        errorLine2="        ^">
-        <location
-            file="AndroidManifest.xml"
-            line="242"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ExportedService"
-        message="Exported service does not require permission"
-        errorLine1="        &lt;service"
-        errorLine2="        ^">
-        <location
-            file="AndroidManifest.xml"
-            line="516"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="DrawAllocation"
-        message="Avoid object allocations during draw/layout operations (preallocate and reuse instead)"
-        errorLine1="            mWindowManagerProxy.setTouchRegion(new Rect(mHandle.getLeft(), mHandle.getTop(),"
-        errorLine2="                                               ^">
-        <location
-            file="src/com/android/systemui/stackdivider/DividerView.java"
-            line="362"
-            column="48"/>
-    </issue>
-
-    <issue
-        id="DrawAllocation"
-        message="Avoid object allocations during draw/layout operations (preallocate and reuse instead)"
-        errorLine1="        mLayoutAlgorithm.getTaskStackBounds(mDisplayRect, new Rect(0, 0, width, height),"
-        errorLine2="                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="src/com/android/systemui/recents/views/TaskStackView.java"
-            line="1193"
-            column="59"/>
-    </issue>
-
-    <issue
-        id="ObsoleteLayoutParam"
-        message="Invalid layout param in a `LinearLayout`: `layout_alignParentTop`"
-        errorLine1="            android:layout_alignParentTop=&quot;true&quot;/>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_fullscreen_user_switcher.xml"
-            line="34"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="ObsoleteLayoutParam"
-        message="Invalid layout param in a `FrameLayout`: `layout_weight`"
-        errorLine1="        android:layout_weight=&quot;0&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/contextual.xml"
-            line="31"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ObsoleteLayoutParam"
-        message="Invalid layout param in a `FrameLayout`: `layout_weight`"
-        errorLine1="        android:layout_weight=&quot;0&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/contextual.xml"
-            line="44"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ObsoleteLayoutParam"
-        message="Invalid layout param in a `FrameLayout`: `layout_weight`"
-        errorLine1="        android:layout_weight=&quot;0&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/contextual.xml"
-            line="55"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ObsoleteLayoutParam"
-        message="Invalid layout param in a `FrameLayout`: `layout_weight`"
-        errorLine1="        android:layout_weight=&quot;0&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/contextual.xml"
-            line="66"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="UseCompoundDrawables"
-        message="This tag and its children can be replaced by one `&lt;TextView/>` and a compound drawable"
-        errorLine1="&lt;LinearLayout"
-        errorLine2="^">
-        <location
-            file="res/layout/car_fullscreen_user_pod.xml"
-            line="19"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UseCompoundDrawables"
-        message="This tag and its children can be replaced by one `&lt;TextView/>` and a compound drawable"
-        errorLine1="    &lt;LinearLayout"
-        errorLine2="    ^">
-        <location
-            file="res/layout/qs_detail_items.xml"
-            line="34"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="MergeRootFrame"
-        message="This `&lt;FrameLayout>` can be replaced with a `&lt;merge>` tag"
-        errorLine1="&lt;FrameLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/layout/forced_resizable_activity.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="MergeRootFrame"
-        message="This `&lt;FrameLayout>` can be replaced with a `&lt;merge>` tag"
-        errorLine1="&lt;FrameLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/layout/mland.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="MergeRootFrame"
-        message="This `&lt;FrameLayout>` can be replaced with a `&lt;merge>` tag"
-        errorLine1="&lt;FrameLayout"
-        errorLine2="^">
-        <location
-            file="res/layout/navigation_layout.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="MergeRootFrame"
-        message="This `&lt;FrameLayout>` can be replaced with a `&lt;merge>` tag"
-        errorLine1="&lt;FrameLayout"
-        errorLine2="^">
-        <location
-            file="res/layout-sw600dp/navigation_layout_rot90.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="MergeRootFrame"
-        message="This `&lt;FrameLayout>` can be replaced with a `&lt;merge>` tag"
-        errorLine1="&lt;FrameLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/layout/quick_settings_header_info.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="MergeRootFrame"
-        message="This `&lt;FrameLayout>` can be replaced with a `&lt;merge>` tag"
-        errorLine1="&lt;FrameLayout"
-        errorLine2="^">
-        <location
-            file="res/layout/recents.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="InefficientWeight"
-        message="Use a `layout_height` of `0dp` instead of `wrap_content` for better performance"
-        errorLine1="                android:layout_height=&quot;wrap_content&quot;"
-        errorLine2="                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/notification_info.xml"
-            line="109"
-            column="17"/>
-    </issue>
-
-    <issue
-        id="InefficientWeight"
-        message="Use a `layout_width` of `0dp` instead of `wrap_content` for better performance"
-        errorLine1="        android:layout_width=&quot;wrap_content&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/quick_settings_footer.xml"
-            line="30"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="NestedWeights"
-        message="Nested weights are bad for performance"
-        errorLine1="                android:layout_weight=&quot;1&quot;"
-        errorLine2="                ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/qs_footer_impl.xml"
-            line="62"
-            column="17"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@color/notification_guts_bg_color` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="        android:background=&quot;@color/notification_guts_bg_color&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/app_ops_info.xml"
-            line="29"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@color/car_user_switcher_background_color` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="        android:background=&quot;@color/car_user_switcher_background_color&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_fullscreen_user_switcher.xml"
-            line="22"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@drawable/system_bar_background` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;@drawable/system_bar_background&quot;>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_left_navigation_bar.xml"
-            line="26"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@drawable/system_bar_background` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;@drawable/system_bar_background&quot;>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_left_navigation_bar_unprovisioned.xml"
-            line="26"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@drawable/system_bar_background` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;@drawable/system_bar_background&quot;>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_navigation_bar.xml"
-            line="25"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@drawable/system_bar_background` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;@drawable/system_bar_background&quot;>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_navigation_bar_unprovisioned.xml"
-            line="25"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@color/car_qs_background_primary` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;@color/car_qs_background_primary&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_qs_panel.xml"
-            line="22"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@drawable/system_bar_background` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;@drawable/system_bar_background&quot;>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_right_navigation_bar.xml"
-            line="26"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@drawable/system_bar_background` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;@drawable/system_bar_background&quot;>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_right_navigation_bar_unprovisioned.xml"
-            line="26"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@drawable/system_bar_background` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;@drawable/system_bar_background&quot;>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_top_navigation_bar.xml"
-            line="24"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@drawable/car_card_rounded_background` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;@drawable/car_card_rounded_background&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_volume_dialog.xml"
-            line="19"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `?android:attr/colorForeground` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;?android:attr/colorForeground&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/divider.xml"
-            line="20"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@color/fingerprint_dialog_dim_color` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;@color/fingerprint_dialog_dim_color&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/fingerprint_dialog.xml"
-            line="22"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `#4dffffff` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;#4dffffff&quot; />"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/horizontal_divider.xml"
-            line="25"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `?android:attr/dividerHorizontal` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;?android:attr/dividerHorizontal&quot; />"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/keyboard_shortcuts_category_separator.xml"
-            line="25"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@android:color/black` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;@android:color/black&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/nav_bar_tuner_inflater.xml"
-            line="19"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@drawable/system_bar_background` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;@drawable/system_bar_background&quot;>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/navigation_bar.xml"
-            line="25"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@color/notification_divider_color` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;@color/notification_divider_color&quot; />"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/notification_children_divider.xml"
-            line="23"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@color/notification_guts_bg_color` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;@color/notification_guts_bg_color&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/notification_info.xml"
-            line="27"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@color/notification_guts_bg_color` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;@color/notification_guts_bg_color&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/notification_snooze.xml"
-            line="24"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `?android:selectableItemBackgroundBorderless` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;?android:selectableItemBackgroundBorderless&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/pip_menu_action.xml"
-            line="21"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `?android:attr/listDivider` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;?android:attr/listDivider&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/qs_customize_tile_divider.xml"
-            line="24"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `?android:attr/colorForeground` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;?android:attr/colorForeground&quot; />"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/qs_divider.xml"
-            line="20"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `?android:attr/colorPrimary` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;?android:attr/colorPrimary&quot; >"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/quick_settings_footer.xml"
-            line="26"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `#88000000` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;#88000000&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/recents_incompatible_app_overlay.xml"
-            line="21"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@drawable/search_bg_transparent` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;@drawable/search_bg_transparent&quot;>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/recents_search_bar.xml"
-            line="20"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `?android:attr/colorAccent` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;?android:attr/colorAccent&quot;>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons.xml"
-            line="31"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `?android:attr/colorAccent` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;?android:attr/colorAccent&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="28"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `?android:attr/colorAccent` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;?android:attr/colorAccent&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="28"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `?android:attr/colorAccent` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;?android:attr/colorAccent&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_text_area.xml"
-            line="23"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `@drawable/system_bar_background` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;@drawable/system_bar_background&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/status_bar.xml"
-            line="27"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `?android:attr/selectableItemBackground` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;?android:attr/selectableItemBackground&quot;>"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/status_bar_alarm_group.xml"
-            line="26"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="Overdraw"
-        message="Possible overdraw: Root element paints background `#CC000000` with a theme that also paints a background (inferred theme is `@style/Theme.SystemUI`)"
-        errorLine1="    android:background=&quot;#CC000000&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/tv_pip_menu.xml"
-            line="25"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.array.car_facet_icons` appears to be unused"
-        errorLine1="    &lt;array name=&quot;car_facet_icons&quot; />"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/arrays_car.xml"
-            line="25"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.array.car_facet_intent_uris` appears to be unused"
-        errorLine1="    &lt;array name=&quot;car_facet_intent_uris&quot; />"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/arrays_car.xml"
-            line="26"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.array.car_facet_longpress_intent_uris` appears to be unused"
-        errorLine1="    &lt;array name=&quot;car_facet_longpress_intent_uris&quot; />"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/arrays_car.xml"
-            line="27"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.array.car_facet_package_filters` appears to be unused"
-        errorLine1="    &lt;array name=&quot;car_facet_package_filters&quot;/>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/arrays_car.xml"
-            line="28"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.array.car_facet_category_filters` appears to be unused"
-        errorLine1="    &lt;array name=&quot;car_facet_category_filters&quot;/>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/arrays_car.xml"
-            line="29"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.assist_disclosure_trace` appears to be unused"
-        errorLine1="&lt;pathInterpolator xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/interpolator/assist_disclosure_trace.xml"
-            line="18"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.background_protect_secondary` appears to be unused"
-        errorLine1="&lt;selector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;>"
-        errorLine2="^">
-        <location
-            file="res/color/background_protect_secondary.xml"
-            line="18"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.background_protected` appears to be unused"
-        errorLine1="&lt;selector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;>"
-        errorLine2="^">
-        <location
-            file="res/color/background_protected.xml"
-            line="18"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.car_navigation_button` appears to be unused"
-        errorLine1="&lt;merge xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;>"
-        errorLine2="^">
-        <location
-            file="res/layout/car_navigation_button.xml"
-            line="20"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.car_rounded_bg_bottom` appears to be unused"
-        errorLine1="&lt;shape xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/car_rounded_bg_bottom.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.car_top_navigation_bar` appears to be unused"
-        errorLine1="&lt;com.android.systemui.statusbar.car.CarNavigationBarView"
-        errorLine2="^">
-        <location
-            file="res/layout/car_top_navigation_bar.xml"
-            line="20"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.car_user_switcher_close_pages_animation` appears to be unused"
-        errorLine1="&lt;set xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;>"
-        errorLine2="^">
-        <location
-            file="res/anim/car_user_switcher_close_pages_animation.xml"
-            line="15"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.car_user_switcher_close_pod_animation` appears to be unused"
-        errorLine1="&lt;set xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/anim/car_user_switcher_close_pod_animation.xml"
-            line="15"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.car_user_switcher_open_pages_animation` appears to be unused"
-        errorLine1="&lt;set xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;>"
-        errorLine2="^">
-        <location
-            file="res/anim/car_user_switcher_open_pages_animation.xml"
-            line="15"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.car_user_switcher_open_pod_animation` appears to be unused"
-        errorLine1="&lt;set xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/anim/car_user_switcher_open_pod_animation.xml"
-            line="15"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ticker_background_color` appears to be unused"
-        errorLine1="    &lt;drawable name=&quot;ticker_background_color&quot;>#ff1d1d1d&lt;/drawable>"
-        errorLine2="              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors.xml"
-            line="21"
-            column="15"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.notification_panel_solid_background` appears to be unused"
-        errorLine1="    &lt;color name=&quot;notification_panel_solid_background&quot;>#ff000000&lt;/color>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors.xml"
-            line="25"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.status_bar_notification_row_background_color` appears to be unused"
-        errorLine1="    &lt;drawable name=&quot;status_bar_notification_row_background_color&quot;>#ff090909&lt;/drawable>"
-        errorLine2="              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors.xml"
-            line="26"
-            column="15"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.notification_list_shadow_top` appears to be unused"
-        errorLine1="    &lt;color name=&quot;notification_list_shadow_top&quot;>#80000000&lt;/color>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors.xml"
-            line="27"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.heads_up_notification_bg_pressed` appears to be unused"
-        errorLine1="    &lt;drawable name=&quot;heads_up_notification_bg_pressed&quot;>#ff33B5E5&lt;/drawable>"
-        errorLine2="              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors.xml"
-            line="28"
-            column="15"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.qs_batterymeter_frame_color` appears to be unused"
-        errorLine1="    &lt;color name=&quot;qs_batterymeter_frame_color&quot;>#FF404040&lt;/color>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors.xml"
-            line="29"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.qs_tile_divider` appears to be unused"
-        errorLine1="    &lt;color name=&quot;qs_tile_divider&quot;>#29ffffff&lt;/color>&lt;!-- 16% white -->"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors.xml"
-            line="30"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.qs_detail_button` appears to be unused"
-        errorLine1="    &lt;color name=&quot;qs_detail_button&quot;>@*android:color/quaternary_device_default_settings&lt;/color>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors.xml"
-            line="32"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.qs_detail_button_white` appears to be unused"
-        errorLine1="    &lt;color name=&quot;qs_detail_button_white&quot;>#B3FFFFFF&lt;/color>&lt;!-- 70% white -->"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors.xml"
-            line="33"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.qs_user_detail_icon_muted` appears to be unused"
-        errorLine1="    &lt;color name=&quot;qs_user_detail_icon_muted&quot;>#FFFFFFFF&lt;/color> &lt;!-- not so muted after all -->"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors.xml"
-            line="36"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.keyguard_overflow_content_color` appears to be unused"
-        errorLine1="    &lt;color name=&quot;keyguard_overflow_content_color&quot;>#ff686868&lt;/color>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors.xml"
-            line="40"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.recents_task_view_lock_to_app_button_background_color` appears to be unused"
-        errorLine1="    &lt;color name=&quot;recents_task_view_lock_to_app_button_background_color&quot;>#ffe6e6e6&lt;/color>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors.xml"
-            line="57"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.recents_task_view_lock_to_app_button_color` appears to be unused"
-        errorLine1="    &lt;color name=&quot;recents_task_view_lock_to_app_button_color&quot;>#ff666666&lt;/color>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors.xml"
-            line="59"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.recents_freeform_workspace_bg_color` appears to be unused"
-        errorLine1="    &lt;color name=&quot;recents_freeform_workspace_bg_color&quot;>#33FFFFFF&lt;/color>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors.xml"
-            line="61"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.keyguard_affordance` appears to be unused"
-        errorLine1="    &lt;color name=&quot;keyguard_affordance&quot;>#ffffffff&lt;/color>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors.xml"
-            line="68"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.segmented_buttons_background` appears to be unused"
-        errorLine1="    &lt;color name=&quot;segmented_buttons_background&quot;>#14FFFFFF&lt;/color>&lt;!-- 8% white -->"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors.xml"
-            line="121"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.logout_button_bg_color` appears to be unused"
-        errorLine1="    &lt;color name=&quot;logout_button_bg_color&quot;>#ccffffff&lt;/color>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors.xml"
-            line="172"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.recents_tv_card_background_color` appears to be unused"
-        errorLine1="    &lt;color name=&quot;recents_tv_card_background_color&quot;>#FF263238&lt;/color>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors_tv.xml"
-            line="20"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.recents_tv_card_title_text_color` appears to be unused"
-        errorLine1="    &lt;color name=&quot;recents_tv_card_title_text_color&quot;>#CCEEEEEE&lt;/color>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors_tv.xml"
-            line="21"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.recents_tv_dismiss_text_color` appears to be unused"
-        errorLine1="    &lt;color name=&quot;recents_tv_dismiss_text_color&quot;>#7FEEEEEE&lt;/color>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors_tv.xml"
-            line="22"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.recents_tv_text_shadow_color` appears to be unused"
-        errorLine1="    &lt;color name=&quot;recents_tv_text_shadow_color&quot;>#7F000000&lt;/color>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/colors_tv.xml"
-            line="23"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.status_bar_config_maxNotificationIcons` appears to be unused"
-        errorLine1="    &lt;integer name=&quot;status_bar_config_maxNotificationIcons&quot;>5&lt;/integer>"
-        errorLine2="             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-sw720dp/config.xml"
-            line="23"
-            column="14"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.quick_settings_max_rows` appears to be unused"
-        errorLine1="    &lt;integer name=&quot;quick_settings_max_rows&quot;>2&lt;/integer>"
-        errorLine2="             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-land/config.xml"
-            line="24"
-            column="14"/>
-        <location
-            file="res/values-sw600dp/config.xml"
-            line="24"
-            column="14"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.bool.config_recents_use_hardware_layers` appears to be unused"
-        errorLine1="    &lt;bool name=&quot;config_recents_use_hardware_layers&quot;>false&lt;/bool>"
-        errorLine2="          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="25"
-            column="11"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.bool.config_notifications_round_rect_clipping` appears to be unused"
-        errorLine1="    &lt;bool name=&quot;config_notifications_round_rect_clipping&quot;>true&lt;/bool>"
-        errorLine2="          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="38"
-            column="11"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.config_maxNotificationIcons` appears to be unused"
-        errorLine1="    &lt;integer name=&quot;config_maxNotificationIcons&quot;>5&lt;/integer>"
-        errorLine2="             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="59"
-            column="14"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.bool.config_showPhoneRSSIForData` appears to be unused"
-        errorLine1="    &lt;bool name=&quot;config_showPhoneRSSIForData&quot;>false&lt;/bool>"
-        errorLine2="          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="62"
-            column="11"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.bool.config_showRotationLock` appears to be unused"
-        errorLine1="    &lt;bool name=&quot;config_showRotationLock&quot;>true&lt;/bool>"
-        errorLine2="          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="68"
-            column="11"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.config_vibration_duration` appears to be unused"
-        errorLine1="    &lt;integer translatable=&quot;false&quot; name=&quot;config_vibration_duration&quot;>0&lt;/integer>"
-        errorLine2="                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="71"
-            column="35"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.config_search_panel_view_vibration_duration` appears to be unused"
-        errorLine1="    &lt;integer translatable=&quot;false&quot; name=&quot;config_search_panel_view_vibration_duration&quot;>20&lt;/integer>"
-        errorLine2="                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="74"
-            column="35"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.one_finger_pop_duration_ms` appears to be unused"
-        errorLine1="    &lt;integer name=&quot;one_finger_pop_duration_ms&quot;>10&lt;/integer>"
-        errorLine2="             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="90"
-            column="14"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.bool.quick_settings_wide` appears to be unused"
-        errorLine1="    &lt;bool name=&quot;quick_settings_wide&quot;>false&lt;/bool>"
-        errorLine2="          ~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="111"
-            column="11"/>
-        <location
-            file="res/values-land/dimens.xml"
-            line="34"
-            column="11"/>
-        <location
-            file="res/values-sw600dp-land/config.xml"
-            line="19"
-            column="11"/>
-        <location
-            file="res/values-w550dp-land/config.xml"
-            line="25"
-            column="11"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.quick_settings_user_time_settings_tile_span` appears to be unused"
-        errorLine1="    &lt;integer name=&quot;quick_settings_user_time_settings_tile_span&quot;>1&lt;/integer>"
-        errorLine2="             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="120"
-            column="14"/>
-        <location
-            file="res/values-land/config.xml"
-            line="27"
-            column="14"/>
-        <location
-            file="res/values-sw600dp/config.xml"
-            line="27"
-            column="14"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.bool.quick_settings_rssi_tile_capitalization` appears to be unused"
-        errorLine1="    &lt;bool name=&quot;quick_settings_rssi_tile_capitalization&quot;>true&lt;/bool>"
-        errorLine2="          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="141"
-            column="11"/>
-        <location
-            file="res/values-mcc262-mnc07/config.xml"
-            line="24"
-            column="11"/>
-        <location
-            file="res/values-mcc262-mnc08/config.xml"
-            line="24"
-            column="11"/>
-        <location
-            file="res/values-mcc262-mnc11/config.xml"
-            line="24"
-            column="11"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.quick_settings_brightness_dialog_short_timeout` appears to be unused"
-        errorLine1="    &lt;integer name=&quot;quick_settings_brightness_dialog_short_timeout&quot;>2000&lt;/integer>"
-        errorLine2="             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="144"
-            column="14"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.quick_settings_brightness_dialog_long_timeout` appears to be unused"
-        errorLine1="    &lt;integer name=&quot;quick_settings_brightness_dialog_long_timeout&quot;>4000&lt;/integer>"
-        errorLine2="             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="145"
-            column="14"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.bool.doze_pulse_on_notifications` appears to be unused"
-        errorLine1="    &lt;bool name=&quot;doze_pulse_on_notifications&quot;>true&lt;/bool>"
-        errorLine2="          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="237"
-            column="11"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.days_to_show_hotspot_tile` appears to be unused"
-        errorLine1="    &lt;integer name=&quot;days_to_show_hotspot_tile&quot;>30&lt;/integer>"
-        errorLine2="             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="304"
-            column="14"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.days_to_show_color_inversion_tile` appears to be unused"
-        errorLine1="    &lt;integer name=&quot;days_to_show_color_inversion_tile&quot;>7&lt;/integer>"
-        errorLine2="             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="307"
-            column="14"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.zen_mode_max_conditions` appears to be unused"
-        errorLine1="    &lt;integer name=&quot;zen_mode_max_conditions&quot;>5&lt;/integer>"
-        errorLine2="             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="313"
-            column="14"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.carrier_network_change_anim_time` appears to be unused"
-        errorLine1="    &lt;integer name=&quot;carrier_network_change_anim_time&quot;>3000&lt;/integer>"
-        errorLine2="             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="325"
-            column="14"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.volume_expand_animation_duration` appears to be unused"
-        errorLine1="    &lt;item name=&quot;volume_expand_animation_duration&quot; type=&quot;integer&quot;>300&lt;/item>"
-        errorLine2="          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="328"
-            column="11"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.bool.quick_settings_show_full_alarm` appears to be unused"
-        errorLine1="    &lt;bool name=&quot;quick_settings_show_full_alarm&quot;>false&lt;/bool>"
-        errorLine2="          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config.xml"
-            line="375"
-            column="11"/>
-        <location
-            file="res/values-sw410dp/config.xml"
-            line="23"
-            column="11"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.bool.config_enablePersistentDockedActivity` appears to be unused"
-        errorLine1="    &lt;bool name=&quot;config_enablePersistentDockedActivity&quot;>false&lt;/bool>"
-        errorLine2="          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config_car.xml"
-            line="23"
-            column="11"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.config_persistentDockedActivityIntentUri` appears to be unused"
-        errorLine1="    &lt;string name=&quot;config_persistentDockedActivityIntentUri&quot; translatable=&quot;false&quot;>&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/config_car.xml"
-            line="24"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.peek_window_y_offset` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;peek_window_y_offset&quot;>-12dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="20"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.fraction.battery_button_height_fraction` appears to be unused"
-        errorLine1="    &lt;fraction name=&quot;battery_button_height_fraction&quot;>10.5%&lt;/fraction>"
-        errorLine2="              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-hdpi/dimens.xml"
-            line="20"
-            column="15"/>
-        <location
-            file="res/values-mdpi/dimens.xml"
-            line="19"
-            column="15"/>
-        <location
-            file="res/values-tvdpi/dimens.xml"
-            line="19"
-            column="15"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.fraction.battery_subpixel_smoothing_left` appears to be unused"
-        errorLine1="    &lt;fraction name=&quot;battery_subpixel_smoothing_left&quot;>20%&lt;/fraction>"
-        errorLine2="              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-hdpi/dimens.xml"
-            line="24"
-            column="15"/>
-        <location
-            file="res/values-mdpi/dimens.xml"
-            line="23"
-            column="15"/>
-        <location
-            file="res/values-tvdpi/dimens.xml"
-            line="23"
-            column="15"/>
-        <location
-            file="res/values-xhdpi/dimens.xml"
-            line="23"
-            column="15"/>
-        <location
-            file="res/values-xxhdpi/dimens.xml"
-            line="23"
-            column="15"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.fraction.battery_subpixel_smoothing_right` appears to be unused"
-        errorLine1="    &lt;fraction name=&quot;battery_subpixel_smoothing_right&quot;>12%&lt;/fraction>"
-        errorLine2="              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-hdpi/dimens.xml"
-            line="25"
-            column="15"/>
-        <location
-            file="res/values-mdpi/dimens.xml"
-            line="24"
-            column="15"/>
-        <location
-            file="res/values-tvdpi/dimens.xml"
-            line="24"
-            column="15"/>
-        <location
-            file="res/values-xhdpi/dimens.xml"
-            line="24"
-            column="15"/>
-        <location
-            file="res/values-xxhdpi/dimens.xml"
-            line="24"
-            column="15"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.notification_panel_min_height` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;notification_panel_min_height&quot;>770dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-sw720dp/dimens.xml"
-            line="28"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.panel_float` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;panel_float&quot;>56dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-sw720dp/dimens.xml"
-            line="30"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.peek_height` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;peek_height&quot;>@dimen/close_handle_height&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-sw600dp/dimens.xml"
-            line="39"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.qs_brightness_padding_top` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;qs_brightness_padding_top&quot;>6dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-sw600dp-land/dimens.xml"
-            line="41"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.snooze_option_text_size` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;snooze_option_text_size&quot;>14sp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="183"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.snooze_option_padding` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;snooze_option_padding&quot;>8dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="186"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.navigation_extra_key_width` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;navigation_extra_key_width&quot;>36dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="221"
-            column="12"/>
-        <location
-            file="res/values-sw360dp/dimens.xml"
-            line="23"
-            column="12"/>
-        <location
-            file="res/values-sw600dp/dimens.xml"
-            line="32"
-            column="12"/>
-        <location
-            file="res/values-sw900dp/dimens.xml"
-            line="23"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.navbar_search_snap_margin` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;navbar_search_snap_margin&quot;>40dip&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="228"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.navbar_search_outerring_diameter` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;navbar_search_outerring_diameter&quot;>340dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="231"
-            column="12"/>
-        <location
-            file="res/values-sw600dp/dimens.xml"
-            line="23"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.navbar_search_outerring_radius` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;navbar_search_outerring_radius&quot;>170dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="234"
-            column="12"/>
-        <location
-            file="res/values-sw600dp/dimens.xml"
-            line="26"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.navbar_search_panel_height` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;navbar_search_panel_height&quot;>230dip&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="237"
-            column="12"/>
-        <location
-            file="res/values-sw600dp/dimens.xml"
-            line="29"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.close_handle_height` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;close_handle_height&quot;>36dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="243"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.car_status_bar_header_height` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;car_status_bar_header_height&quot;>128dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="249"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.status_bar_header_padding_bottom` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;status_bar_header_padding_bottom&quot;>48dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="252"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.qs_header_system_icons_area_height` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;qs_header_system_icons_area_height&quot;>48dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="256"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.status_bar_header_height_expanded` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;status_bar_header_height_expanded&quot;>124dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="273"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.carrier_label_height` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;carrier_label_height&quot;>24dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="336"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.one_finger_pop_limit` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;one_finger_pop_limit&quot;>0dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="339"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.notification_panel_min_height_frac` appears to be unused"
-        errorLine1="    &lt;item type=&quot;dimen&quot; name=&quot;notification_panel_min_height_frac&quot;>0%&lt;/item>"
-        errorLine2="                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="343"
-            column="24"/>
-        <location
-            file="res/values-sw600dp/dimens.xml"
-            line="35"
-            column="24"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.blinds_pop_threshold` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;blinds_pop_threshold&quot;>0dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="345"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.qs_header_gear_translation` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;qs_header_gear_translation&quot;>16dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="360"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.qs_dual_tile_height` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;qs_dual_tile_height&quot;>112dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="368"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.qs_dual_tile_padding_vertical` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;qs_dual_tile_padding_vertical&quot;>8dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="369"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.qs_tile_padding_top_large_text` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;qs_tile_padding_top_large_text&quot;>4dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="372"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.qs_tile_padding_bottom` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;qs_tile_padding_bottom&quot;>16dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="374"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.qs_tile_spacing` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;qs_tile_spacing&quot;>4dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="375"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.qs_detail_header_height` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;qs_detail_header_height&quot;>56dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="378"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.qs_detail_back_margin_end` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;qs_detail_back_margin_end&quot;>16dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="390"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.qs_battery_padding` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;qs_battery_padding&quot;>2dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="394"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.qs_notif_collapsed_space` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;qs_notif_collapsed_space&quot;>64dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="409"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.qs_footer_dialog_icon_size` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;qs_footer_dialog_icon_size&quot;>24sp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="423"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.qs_footer_dialog_icon_margin` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;qs_footer_dialog_icon_margin&quot;>8sp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="425"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.zen_mode_condition_detail_button_padding` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;zen_mode_condition_detail_button_padding&quot;>8dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="433"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.zen_mode_condition_detail_item_spacing` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;zen_mode_condition_detail_item_spacing&quot;>12dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="436"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.glowpadview_glow_radius` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;glowpadview_glow_radius&quot;>75dip&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="448"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.glowpadview_inner_radius` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;glowpadview_inner_radius&quot;>15dip&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="451"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.speed_bump_height` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;speed_bump_height&quot;>16dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="482"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.edge_tap_area_width` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;edge_tap_area_width&quot;>48dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="527"
-            column="12"/>
-        <location
-            file="res/values-sw600dp/dimens.xml"
-            line="66"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.multi_user_switch_expanded_margin` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;multi_user_switch_expanded_margin&quot;>8dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="536"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.multi_user_switch_collapsed_margin` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;multi_user_switch_collapsed_margin&quot;>13dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="539"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.clock_expanded_bottom_margin` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;clock_expanded_bottom_margin&quot;>20dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="553"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.clock_collapsed_bottom_margin` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;clock_collapsed_bottom_margin&quot;>10dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="556"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.clock_collapsed_bottom_margin_large_text` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;clock_collapsed_bottom_margin_large_text&quot;>6dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="559"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.multi_user_switch_width_collapsed` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;multi_user_switch_width_collapsed&quot;>34dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="562"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.multi_user_switch_width_expanded` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;multi_user_switch_width_expanded&quot;>48dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="565"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.multi_user_avatar_collapsed_size` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;multi_user_avatar_collapsed_size&quot;>22dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="571"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.qs_time_collapsed_size` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;qs_time_collapsed_size&quot;>14sp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="580"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.qs_date_collapsed_size` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;qs_date_collapsed_size&quot;>14sp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="589"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.qs_date_time_translation` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;qs_date_time_translation&quot;>8dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="591"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.header_battery_margin_expanded` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;header_battery_margin_expanded&quot;>6dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="610"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.header_battery_margin_keyguard` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;header_battery_margin_keyguard&quot;>6dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="613"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.battery_level_text_size` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;battery_level_text_size&quot;>12sp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="653"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.wide_type_icon_start_padding` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;wide_type_icon_start_padding&quot;>2dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="680"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.signal_cluster_margin_start` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;signal_cluster_margin_start&quot;>2.5dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="705"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.volume_slider_interspacing` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;volume_slider_interspacing&quot;>8dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="749"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.volume_offset_top` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;volume_offset_top&quot;>0dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="752"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.volume_button_size` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;volume_button_size&quot;>48dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="755"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.volume_dialog_margin_bottom` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;volume_dialog_margin_bottom&quot;>4dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="758"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.volume_dialog_padding_top` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;volume_dialog_padding_top&quot;>8dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="759"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.volume_dialog_padding_end` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;volume_dialog_padding_end&quot;>40dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="760"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.volume_row_padding_bottom` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;volume_row_padding_bottom&quot;>9.4dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="762"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.volume_row_padding_start` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;volume_row_padding_start&quot;>4dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="763"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.volume_row_header_padding_start` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;volume_row_header_padding_start&quot;>16dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="764"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.volume_row_height` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;volume_row_height&quot;>64dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="765"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.volume_row_slider_height` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;volume_row_slider_height&quot;>48dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="766"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.volume_row_slider_padding_start` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;volume_row_slider_padding_start&quot;>12dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="767"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.volume_expander_margin_end` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;volume_expander_margin_end&quot;>2dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="769"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.volume_expander_margin_top` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;volume_expander_margin_top&quot;>6dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="770"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.fab_size` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;fab_size&quot;>56dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="778"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.fab_margin` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;fab_margin&quot;>16dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="779"
-            column="12"/>
-        <location
-            file="res/values-sw600dp/dimens.xml"
-            line="84"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.fab_elevation` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;fab_elevation&quot;>12dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="780"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.fab_press_translation_z` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;fab_press_translation_z&quot;>9dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="781"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.battery_detail_graph_space_top` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;battery_detail_graph_space_top&quot;>27dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="789"
-            column="12"/>
-        <location
-            file="res/values-land/dimens.xml"
-            line="30"
-            column="12"/>
-        <location
-            file="res/values-sw600dp-land/dimens.xml"
-            line="37"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.battery_detail_graph_space_bottom` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;battery_detail_graph_space_bottom&quot;>27dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="790"
-            column="12"/>
-        <location
-            file="res/values-land/dimens.xml"
-            line="31"
-            column="12"/>
-        <location
-            file="res/values-sw600dp-land/dimens.xml"
-            line="38"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.recents_layout_side_margin_tablet_docked` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;recents_layout_side_margin_tablet_docked&quot;>16dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="810"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.recents_layout_side_margin_tablet_xlarge_docked` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;recents_layout_side_margin_tablet_xlarge_docked&quot;>16dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="812"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.recents_freeform_layout_bottom_margin` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;recents_freeform_layout_bottom_margin&quot;>16dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="836"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.recents_freeform_layout_task_padding` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;recents_freeform_layout_task_padding&quot;>8dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="839"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.recents_task_affiliation_color_min_alpha_percentage` appears to be unused"
-        errorLine1="    &lt;item name=&quot;recents_task_affiliation_color_min_alpha_percentage&quot; format=&quot;float&quot; type=&quot;dimen&quot;>0.6&lt;/item>"
-        errorLine2="          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="876"
-            column="11"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.recents_task_view_remove_anim_translation_x` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;recents_task_view_remove_anim_translation_x&quot;>100dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="885"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.recents_recents_row_dim_alpha` appears to be unused"
-        errorLine1="    &lt;item name=&quot;recents_recents_row_dim_alpha&quot; format=&quot;float&quot; type=&quot;dimen&quot;>0.5&lt;/item>"
-        errorLine2="          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="888"
-            column="11"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.cell_overlay_padding` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;cell_overlay_padding&quot;>18dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="921"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.top_padding` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;top_padding&quot;>0dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="944"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.bottom_padding` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;bottom_padding&quot;>48dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="945"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.wireless_charging_dots_radius_start` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;wireless_charging_dots_radius_start&quot;>0dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="988"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.wireless_charging_dots_radius_end` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;wireless_charging_dots_radius_end&quot;>4dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="989"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.wireless_charging_circle_radius_start` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;wireless_charging_circle_radius_start&quot;>28dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="990"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.wireless_charging_circle_radius_end` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;wireless_charging_circle_radius_end&quot;>84dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="991"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.wireless_charging_angle_offset` appears to be unused"
-        errorLine1="    &lt;integer name=&quot;wireless_charging_angle_offset&quot;>20&lt;/integer>"
-        errorLine2="             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="992"
-            column="14"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.wireless_charging_scale_dots_duration` appears to be unused"
-        errorLine1="    &lt;integer name=&quot;wireless_charging_scale_dots_duration&quot;>83&lt;/integer>"
-        errorLine2="             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="993"
-            column="14"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.wireless_charging_num_dots` appears to be unused"
-        errorLine1="    &lt;integer name=&quot;wireless_charging_num_dots&quot;>16&lt;/integer>"
-        errorLine2="             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="994"
-            column="14"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.logout_button_layout_height` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;logout_button_layout_height&quot;>32dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="1018"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.logout_button_padding_horizontal` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;logout_button_padding_horizontal&quot;>16dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="1019"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.logout_button_margin_bottom` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;logout_button_margin_bottom&quot;>12dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="1020"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.logout_button_corner_radius` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;logout_button_corner_radius&quot;>2dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens.xml"
-            line="1021"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.car_navigation_button_width` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;car_navigation_button_width&quot;>64dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens_car.xml"
-            line="26"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.car_navigation_bar_width` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;car_navigation_bar_width&quot;>760dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens_car.xml"
-            line="27"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.car_user_switcher_container_anim_height` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;car_user_switcher_container_anim_height&quot;>-420dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens_car.xml"
-            line="44"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.recents_grid_padding_left_right` appears to be unused"
-        errorLine1="  &lt;dimen name=&quot;recents_grid_padding_left_right&quot;>32dp&lt;/dimen>"
-        errorLine2="         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens_grid.xml"
-            line="19"
-            column="10"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.recents_grid_padding_top_bottom` appears to be unused"
-        errorLine1="  &lt;dimen name=&quot;recents_grid_padding_top_bottom&quot;>150dp&lt;/dimen>"
-        errorLine2="         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/dimens_grid.xml"
-            line="20"
-            column="10"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.dismiss_all_shape` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/dismiss_all_shape.xml"
-            line="1"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.dismiss_all_shape_animation` appears to be unused"
-        errorLine1="&lt;animated-vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/dismiss_all_shape_animation.xml"
-            line="1"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.dismiss_all_shape_animation_1` appears to be unused"
-        errorLine1="&lt;set xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot; >"
-        errorLine2="^">
-        <location
-            file="res/anim/dismiss_all_shape_animation_1.xml"
-            line="15"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.dismiss_all_shape_animation_2` appears to be unused"
-        errorLine1="&lt;set xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot; >"
-        errorLine2="^">
-        <location
-            file="res/anim/dismiss_all_shape_animation_2.xml"
-            line="15"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.dismiss_all_shape_animation_3` appears to be unused"
-        errorLine1="&lt;set xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot; >"
-        errorLine2="^">
-        <location
-            file="res/anim/dismiss_all_shape_animation_3.xml"
-            line="15"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.dismiss_all_shape_animation_rectangle_path_1` appears to be unused"
-        errorLine1="&lt;set xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot; >"
-        errorLine2="^">
-        <location
-            file="res/anim/dismiss_all_shape_animation_rectangle_path_1.xml"
-            line="15"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.dismiss_all_shape_animation_rectangle_path_1_1` appears to be unused"
-        errorLine1="&lt;set xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot; >"
-        errorLine2="^">
-        <location
-            file="res/anim/dismiss_all_shape_animation_rectangle_path_1_1.xml"
-            line="15"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.dismiss_all_shape_animation_rectangle_path_1_2` appears to be unused"
-        errorLine1="&lt;set xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot; >"
-        errorLine2="^">
-        <location
-            file="res/anim/dismiss_all_shape_animation_rectangle_path_1_2.xml"
-            line="15"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.divider` appears to be unused"
-        errorLine1="&lt;View xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/layout/divider.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.fab_elevation` appears to be unused"
-        errorLine1="&lt;selector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;>"
-        errorLine2="^">
-        <location
-            file="res/anim/fab_elevation.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.fingerprint_icon` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/fingerprint_icon.xml"
-            line="18"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.header_dot` appears to be unused"
-        errorLine1="&lt;shape"
-        errorLine2="^">
-        <location
-            file="res/drawable/header_dot.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.horizontal_divider` appears to be unused"
-        errorLine1="&lt;View"
-        errorLine2="^">
-        <location
-            file="res/layout/horizontal_divider.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_access_alarms_small` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_access_alarms_small.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_android` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_android.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_aod_charging_24dp` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_aod_charging_24dp.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_cancel_white_24dp` appears to be unused">
-        <location
-            file="res/drawable-hdpi/ic_cancel_white_24dp.png"/>
-        <location
-            file="res/drawable-mdpi/ic_cancel_white_24dp.png"/>
-        <location
-            file="res/drawable-xhdpi/ic_cancel_white_24dp.png"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_cast` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_cast.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_chevron_left` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_chevron_left.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_chevron_up` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_chevron_up.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_close` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_close.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_data_off` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_data_off.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_data_on` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_data_on.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_data_unavailable` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_data_unavailable.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.mipmap.ic_daydreams` appears to be unused">
-        <location
-            file="res/mipmap-hdpi/ic_daydreams.png"/>
-        <location
-            file="res/mipmap-mdpi/ic_daydreams.png"/>
-        <location
-            file="res/mipmap-xhdpi/ic_daydreams.png"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_delete` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_delete.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_dismiss_outline` appears to be unused">
-        <location
-            file="res/drawable-hdpi/ic_dismiss_outline.png"/>
-        <location
-            file="res/drawable-mdpi/ic_dismiss_outline.png"/>
-        <location
-            file="res/drawable-xhdpi/ic_dismiss_outline.png"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_drag_handle` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_drag_handle.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_expand_less` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_expand_less.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_expand_more` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_expand_more.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_history` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_history.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_hotspot_unavailable` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_hotspot_unavailable.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_invert_colors` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_invert_colors.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_landscape_to_rotate_animation_interpolator_0` appears to be unused"
-        errorLine1="&lt;pathInterpolator"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_landscape_to_rotate_animation_interpolator_0.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_landscape_to_rotate_arrows_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_landscape_to_rotate_arrows_animation.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_landscape_to_rotate_bottom_merged_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_landscape_to_rotate_bottom_merged_animation.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_landscape_to_rotate_landscape_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_landscape_to_rotate_landscape_animation.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_lock_to_app_24dp` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_lock_to_app_24dp.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_notify_button_bg` appears to be unused"
-        errorLine1="&lt;selector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;>"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_notify_button_bg.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_person` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_person.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_portrait_to_rotate_arrows_0_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_portrait_to_rotate_arrows_0_animation.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_portrait_to_rotate_arrows_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_portrait_to_rotate_arrows_animation.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_portrait_to_rotate_bottom_merged_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_portrait_to_rotate_bottom_merged_animation.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_portrait_to_rotate_device_0_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_portrait_to_rotate_device_0_animation.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_portrait_to_rotate_device_merged_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_portrait_to_rotate_device_merged_animation.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_qs_back` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_qs_back.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_qs_battery_saver` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_qs_battery_saver.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_qs_lock` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_qs_lock.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_qs_lock_open` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_qs_lock_open.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_qs_network_logging` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_qs_network_logging.xml"
-            line="19"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_qs_ringer_audible` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_qs_ringer_audible.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_qs_ringer_silent` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_qs_ringer_silent.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_qs_ringer_vibrate` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_qs_ringer_vibrate.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_rotate_to_landscape_animation_interpolator_0` appears to be unused"
-        errorLine1="&lt;pathInterpolator"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_rotate_to_landscape_animation_interpolator_0.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_rotate_to_landscape_arrows_0_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_rotate_to_landscape_arrows_0_animation.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_rotate_to_landscape_arrows_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_rotate_to_landscape_arrows_animation.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_rotate_to_landscape_bottom_merged_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_rotate_to_landscape_bottom_merged_animation.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_rotate_to_landscape_landscape_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_rotate_to_landscape_landscape_animation.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_rotate_to_portrait_animation_interpolator_0` appears to be unused"
-        errorLine1="&lt;pathInterpolator"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_rotate_to_portrait_animation_interpolator_0.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_rotate_to_portrait_arrows_0_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_rotate_to_portrait_arrows_0_animation.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_rotate_to_portrait_arrows_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_rotate_to_portrait_arrows_animation.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_rotate_to_portrait_bottom_merged_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_rotate_to_portrait_bottom_merged_animation.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_rotate_to_portrait_device_0_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_rotate_to_portrait_device_0_animation.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_rotate_to_portrait_device_merged_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_rotate_to_portrait_device_merged_animation.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_blink_1` appears to be unused"
-        errorLine1="&lt;objectAnimator xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_blink_1.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_blink_2` appears to be unused"
-        errorLine1="&lt;objectAnimator xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_blink_2.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_blink_3` appears to be unused"
-        errorLine1="&lt;objectAnimator xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_blink_3.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_signal_workmode_disable_animation` appears to be unused"
-        errorLine1="&lt;animated-vector"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_signal_workmode_disable_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_signal_workmode_disable_animation_interpolator_0` appears to be unused"
-        errorLine1="&lt;pathInterpolator"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_signal_workmode_disable_animation_interpolator_0.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_signal_workmode_disable_animation_interpolator_1` appears to be unused"
-        errorLine1="&lt;pathInterpolator"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_signal_workmode_disable_animation_interpolator_1.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_signal_workmode_disable_animation_interpolator_2` appears to be unused"
-        errorLine1="&lt;pathInterpolator"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_signal_workmode_disable_animation_interpolator_2.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_signal_workmode_disable_animation_interpolator_3` appears to be unused"
-        errorLine1="&lt;pathInterpolator"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_signal_workmode_disable_animation_interpolator_3.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_signal_workmode_disable_animation_interpolator_4` appears to be unused"
-        errorLine1="&lt;pathInterpolator"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_signal_workmode_disable_animation_interpolator_4.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_signal_workmode_disable_animation_interpolator_5` appears to be unused"
-        errorLine1="&lt;pathInterpolator"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_signal_workmode_disable_animation_interpolator_5.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_signal_workmode_disable_cross_1_pathdata_interpolator` appears to be unused"
-        errorLine1="&lt;pathInterpolator xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_signal_workmode_disable_cross_1_pathdata_interpolator.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_disable_left_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_disable_left_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_disable_mask_1_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_disable_mask_1_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_disable_rectangle_path_3_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_disable_rectangle_path_3_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_disable_rectangle_path_3_position_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_disable_rectangle_path_3_position_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_disable_rectangle_path_4_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_disable_rectangle_path_4_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_disable_rectangle_path_4_position_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_disable_rectangle_path_4_position_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_disable_right_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_disable_right_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_disable_stick_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_disable_stick_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_disable_stickito_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_disable_stickito_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_disable_whole_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_disable_whole_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_signal_workmode_enable` appears to be unused"
-        errorLine1="&lt;vector"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_signal_workmode_enable.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_signal_workmode_enable_animation` appears to be unused"
-        errorLine1="&lt;animated-vector"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_signal_workmode_enable_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_enable_animation_cross_1` appears to be unused"
-        errorLine1="&lt;set xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot; >"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_enable_animation_cross_1.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_enable_animation_ic_signal_briefcase` appears to be unused"
-        errorLine1="&lt;set xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot; >"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_enable_animation_ic_signal_briefcase.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_signal_workmode_enable_animation_interpolator_0` appears to be unused"
-        errorLine1="&lt;pathInterpolator"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_signal_workmode_enable_animation_interpolator_0.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_signal_workmode_enable_animation_interpolator_1` appears to be unused"
-        errorLine1="&lt;pathInterpolator"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_signal_workmode_enable_animation_interpolator_1.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_signal_workmode_enable_animation_interpolator_2` appears to be unused"
-        errorLine1="&lt;pathInterpolator"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_signal_workmode_enable_animation_interpolator_2.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_signal_workmode_enable_animation_interpolator_3` appears to be unused"
-        errorLine1="&lt;pathInterpolator"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_signal_workmode_enable_animation_interpolator_3.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_signal_workmode_enable_animation_interpolator_4` appears to be unused"
-        errorLine1="&lt;pathInterpolator"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_signal_workmode_enable_animation_interpolator_4.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_signal_workmode_enable_animation_interpolator_5` appears to be unused"
-        errorLine1="&lt;pathInterpolator"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_signal_workmode_enable_animation_interpolator_5.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_enable_animation_mask` appears to be unused"
-        errorLine1="&lt;set xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot; >"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_enable_animation_mask.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_signal_workmode_enable_cross_1_pathdata_interpolator` appears to be unused"
-        errorLine1="&lt;pathInterpolator xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_signal_workmode_enable_cross_1_pathdata_interpolator.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_enable_left_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_enable_left_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_enable_mask_1_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_enable_mask_1_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.interpolator.ic_signal_workmode_enable_mask_pathdata_interpolator` appears to be unused"
-        errorLine1="&lt;pathInterpolator xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/interpolator/ic_signal_workmode_enable_mask_pathdata_interpolator.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_enable_rectangle_path_3_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_enable_rectangle_path_3_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_enable_rectangle_path_3_position_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_enable_rectangle_path_3_position_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_enable_rectangle_path_4_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_enable_rectangle_path_4_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_enable_rectangle_path_4_position_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_enable_rectangle_path_4_position_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_enable_right_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_enable_right_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_enable_stick_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_enable_stick_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_enable_stickito_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_enable_stickito_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.ic_signal_workmode_enable_whole_animation` appears to be unused"
-        errorLine1="&lt;set"
-        errorLine2="^">
-        <location
-            file="res/anim/ic_signal_workmode_enable_whole_animation.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_sim` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_sim.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_speaker` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_speaker.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_speaker_group` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_speaker_group.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_swap` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_swap.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_sysbar_back_light_old` appears to be unused">
-        <location
-            file="res/drawable-sw900dp-xxhdpi/ic_sysbar_back_light_old.png"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_sysbar_lights_out_dot_large` appears to be unused">
-        <location
-            file="res/drawable-hdpi/ic_sysbar_lights_out_dot_large.png"/>
-        <location
-            file="res/drawable-mdpi/ic_sysbar_lights_out_dot_large.png"/>
-        <location
-            file="res/drawable-sw600dp-hdpi/ic_sysbar_lights_out_dot_large.png"/>
-        <location
-            file="res/drawable-sw600dp-mdpi/ic_sysbar_lights_out_dot_large.png"/>
-        <location
-            file="res/drawable-sw600dp-xhdpi/ic_sysbar_lights_out_dot_large.png"/>
-        <location
-            file="res/drawable-sw600dp-xxhdpi/ic_sysbar_lights_out_dot_large.png"/>
-        <location
-            file="res/drawable-xhdpi/ic_sysbar_lights_out_dot_large.png"/>
-        <location
-            file="res/drawable-xxhdpi/ic_sysbar_lights_out_dot_large.png"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_tv` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_tv.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_width` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_width.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_zen_all` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_zen_all.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_zen_important` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_zen_important.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.ic_zen_none` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/ic_zen_none.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.integer.car_user_switcher_anim_cascade_delay_ms` appears to be unused"
-        errorLine1="    &lt;integer name=&quot;car_user_switcher_anim_cascade_delay_ms&quot;>27&lt;/integer>"
-        errorLine2="             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/integers_car.xml"
-            line="19"
-            column="14"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.navigation_bar_height` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;navigation_bar_height&quot;>@*android:dimen/navigation_bar_height&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/internal.xml"
-            line="19"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.navigation_bar_height_car_mode` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;navigation_bar_height_car_mode&quot;>@*android:dimen/navigation_bar_height_car_mode&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/internal.xml"
-            line="20"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.keyguard_overflow_number_background` appears to be unused"
-        errorLine1="&lt;shape xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/keyguard_overflow_number_background.xml"
-            line="18"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.logout_button_background` appears to be unused"
-        errorLine1="&lt;shape xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/logout_button_background.xml"
-            line="19"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.dimen.moon_size` appears to be unused"
-        errorLine1="    &lt;dimen name=&quot;moon_size&quot;>30dp&lt;/dimen>"
-        errorLine2="           ~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/mland_config.xml"
-            line="33"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.nav_bar_tuner_inflater` appears to be unused"
-        errorLine1="&lt;com.android.systemui.tuner.PreviewNavInflater"
-        errorLine2="^">
-        <location
-            file="res/layout/nav_bar_tuner_inflater.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.nav_control_widget` appears to be unused"
-        errorLine1="&lt;LinearLayout"
-        errorLine2="^">
-        <location
-            file="res/layout/nav_control_widget.xml"
-            line="18"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.nav_width_view` appears to be unused"
-        errorLine1="&lt;SeekBar"
-        errorLine2="^">
-        <location
-            file="res/layout/nav_width_view.xml"
-            line="20"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.navigation_bar_app_item` appears to be unused"
-        errorLine1="&lt;ImageView xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/layout/navigation_bar_app_item.xml"
-            line="21"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.notification_expand_more` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/notification_expand_more.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.notification_guts_buttons` appears to be unused"
-        errorLine1="&lt;selector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;>"
-        errorLine2="^">
-        <location
-            file="res/color/notification_guts_buttons.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.pin_delete_color` appears to be unused"
-        errorLine1="&lt;selector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;>"
-        errorLine2="^">
-        <location
-            file="res/color/pin_delete_color.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.pin_divider_color` appears to be unused"
-        errorLine1="&lt;selector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;>"
-        errorLine2="^">
-        <location
-            file="res/color/pin_divider_color.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.pip_dismiss` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/pip_dismiss.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.pip_notification_icon` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/pip_notification_icon.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.pop_ball` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/pop_ball.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.pop_belt` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/pop_belt.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.pop_droid` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/pop_droid.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.pop_pizza` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/pop_pizza.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.pop_stripes` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/pop_stripes.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.pop_swirl` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/pop_swirl.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.pop_vortex` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/pop_vortex.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.pop_vortex2` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/pop_vortex2.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.preference_widget_settings` appears to be unused"
-        errorLine1="&lt;LinearLayout"
-        errorLine2="^">
-        <location
-            file="res/layout/preference_widget_settings.xml"
-            line="18"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.qs_add_tiles_list` appears to be unused"
-        errorLine1="&lt;FrameLayout"
-        errorLine2="^">
-        <location
-            file="res/layout/qs_add_tiles_list.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.qs_subhead_caret` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/qs_subhead_caret.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.qs_tile_background` appears to be unused"
-        errorLine1="&lt;selector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;>"
-        errorLine2="^">
-        <location
-            file="res/drawable/qs_tile_background.xml"
-            line="19"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.qs_tile_layout` appears to be unused"
-        errorLine1="&lt;com.android.systemui.qs.TileLayout"
-        errorLine2="^">
-        <location
-            file="res/layout/qs_tile_layout.xml"
-            line="18"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.color.qs_user_detail_name` appears to be unused"
-        errorLine1="&lt;selector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;>"
-        errorLine2="^">
-        <location
-            file="res/color/qs_user_detail_name.xml"
-            line="19"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.quick_header_bg` appears to be unused"
-        errorLine1="&lt;ripple xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/quick_header_bg.xml"
-            line="18"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.recents_freeform_workspace_bg` appears to be unused"
-        errorLine1="&lt;shape xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/recents_freeform_workspace_bg.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.recents_move_task_freeform_dark` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/recents_move_task_freeform_dark.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.recents_move_task_freeform_light` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/recents_move_task_freeform_light.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.recents_search_bar` appears to be unused"
-        errorLine1="&lt;FrameLayout"
-        errorLine2="^">
-        <location
-            file="res/layout/recents_search_bar.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.recents_status_gradient` appears to be unused">
-        <location
-            file="res/drawable-hdpi/recents_status_gradient.9.png"/>
-        <location
-            file="res/drawable-mdpi/recents_status_gradient.9.png"/>
-        <location
-            file="res/drawable-xhdpi/recents_status_gradient.9.png"/>
-        <location
-            file="res/drawable-xxhdpi/recents_status_gradient.9.png"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.recents_task_shadow` appears to be unused">
-        <location
-            file="res/drawable-xxhdpi/recents_task_shadow.9.png"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.recents_task_view_header_progress_bar` appears to be unused"
-        errorLine1="&lt;ProgressBar"
-        errorLine2="^">
-        <location
-            file="res/layout/recents_task_view_header_progress_bar.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.remote` appears to be unused">
-        <location
-            file="res/drawable-xhdpi/remote.png"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.scorecard_gameover` appears to be unused"
-        errorLine1="&lt;shape"
-        errorLine2="^">
-        <location
-            file="res/drawable/scorecard_gameover.xml"
-            line="2"
-            column="1"/>
-        <location
-            file="res/drawable-nodpi/scorecard_gameover.xml"
-            line="2"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.search_bg_transparent` appears to be unused">
-        <location
-            file="res/drawable-hdpi/search_bg_transparent.9.png"/>
-        <location
-            file="res/drawable-mdpi/search_bg_transparent.9.png"/>
-        <location
-            file="res/drawable-xhdpi/search_bg_transparent.9.png"/>
-        <location
-            file="res/drawable-xxhdpi/search_bg_transparent.9.png"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.search_panel_scrim` appears to be unused"
-        errorLine1="&lt;shape xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;>"
-        errorLine2="^">
-        <location
-            file="res/drawable-land/search_panel_scrim.xml"
-            line="19"
-            column="1"/>
-        <location
-            file="res/drawable-sw600dp/search_panel_scrim.xml"
-            line="19"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.shelf_menu_anchor` appears to be unused"
-        errorLine1="&lt;FrameLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/layout/shelf_menu_anchor.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.signal_cluster_view` appears to be unused"
-        errorLine1="&lt;com.android.systemui.statusbar.SignalClusterView"
-        errorLine2="^">
-        <location
-            file="res/layout/signal_cluster_view.xml"
-            line="20"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.split_clock_view` appears to be unused"
-        errorLine1="&lt;com.android.systemui.statusbar.policy.SplitClockView"
-        errorLine2="^">
-        <location
-            file="res/layout/split_clock_view.xml"
-            line="19"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.stat_notify_more` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/stat_notify_more.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.stat_sys_auto_rotate_landscape` appears to be unused"
-        errorLine1="&lt;inset xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/stat_sys_auto_rotate_landscape.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.stat_sys_auto_rotate_portrait` appears to be unused"
-        errorLine1="&lt;inset xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/stat_sys_auto_rotate_portrait.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.stat_sys_managed_profile_status_off` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/stat_sys_managed_profile_status_off.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.stat_sys_no_sims` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/stat_sys_no_sims.xml"
-            line="19"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.stat_sys_signal_in` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/stat_sys_signal_in.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.stat_sys_signal_inout` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/stat_sys_signal_inout.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.stat_sys_signal_out` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/stat_sys_signal_out.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.stat_sys_wifi_in` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/stat_sys_wifi_in.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.stat_sys_wifi_inout` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/stat_sys_wifi_inout.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.stat_sys_wifi_out` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/stat_sys_wifi_out.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.status_bar_alarm_group` appears to be unused"
-        errorLine1="&lt;LinearLayout"
-        errorLine2="^">
-        <location
-            file="res/layout/status_bar_alarm_group.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.status_bar_no_recent_apps` appears to be unused"
-        errorLine1="&lt;FrameLayout"
-        errorLine2="^">
-        <location
-            file="res/layout/status_bar_no_recent_apps.xml"
-            line="20"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.status_bar_clear_all_button` appears to be unused"
-        errorLine1="    &lt;string name=&quot;status_bar_clear_all_button&quot;>Clear&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-af-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-am-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-ar-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-be-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-bg-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-ca-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-cs-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-da-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-de-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-el-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-en-rGB-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-es-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-es-rUS-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-et-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-fa-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-fi-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-fr-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-hi-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-hr-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-hu-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-in-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-it-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-iw-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-ja-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-ko-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-lt-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-lv-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-ms-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-nb-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-nl-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-pl-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-pt-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-ro-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-ru-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-sk-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-sl-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-sr-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-sv-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-sw-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-th-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-tl-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-tr-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-uk-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-vi-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW-large/strings.xml"
-            line="22"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="23"
-            column="13"/>
-        <location
-            file="res/values-zu-large/strings.xml"
-            line="22"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.status_bar_recent_remove_item_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;status_bar_recent_remove_item_title&quot;>Remove from list&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="28"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="24"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="24"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.status_bar_recent_inspect_item_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;status_bar_recent_inspect_item_title&quot;>App info&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="31"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="25"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="25"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.status_bar_no_recent_apps` appears to be unused"
-        errorLine1="    &lt;string name=&quot;status_bar_no_recent_apps&quot;>Your recent screens appear here&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="26"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="26"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.status_bar_accessibility_dismiss_recents` appears to be unused"
-        errorLine1="    &lt;string name=&quot;status_bar_accessibility_dismiss_recents&quot;>Dismiss recent apps&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="27"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="27"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.plurals.status_bar_accessibility_recent_apps` appears to be unused"
-        errorLine1="    &lt;plurals name=&quot;status_bar_accessibility_recent_apps&quot;>"
-        errorLine2="             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="42"
-            column="14"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="28"
-            column="14"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="28"
-            column="14"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.status_bar_no_notifications_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;status_bar_no_notifications_title&quot;>No notifications&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="49"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="36"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="30"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="32"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.status_bar_ongoing_events_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;status_bar_ongoing_events_title&quot;>Ongoing&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="31"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="33"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="33"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.status_bar_latest_events_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;status_bar_latest_events_title&quot;>Notifications&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="59"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="36"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="36"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="36"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="36"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="32"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="36"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="36"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="36"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="36"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="36"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="34"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="34"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.battery_low_percent_format_hybrid` appears to be unused"
-        errorLine1="    &lt;string name=&quot;battery_low_percent_format_hybrid&quot;>&lt;xliff:g id=&quot;percentage&quot;>%1$s&lt;/xliff:g> remaining, about &lt;xliff:g id=&quot;time&quot;>%2$s&lt;/xliff:g> left based on your usage&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="72"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="41"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="35"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="37"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.battery_low_percent_format_hybrid_short` appears to be unused"
-        errorLine1="    &lt;string name=&quot;battery_low_percent_format_hybrid_short&quot;>&lt;xliff:g id=&quot;percentage&quot;>%1$s&lt;/xliff:g> remaining, about &lt;xliff:g id=&quot;time&quot;>%2$s&lt;/xliff:g> left&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="78"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="42"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="36"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="38"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.battery_low_percent_format_saver_started` appears to be unused"
-        errorLine1="    &lt;string name=&quot;battery_low_percent_format_saver_started&quot;>&lt;xliff:g id=&quot;percentage&quot;>%s&lt;/xliff:g> remaining. Battery Saver is on.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="41"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="41"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="41"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="41"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="37"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="41"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="41"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="41"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="41"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="41"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="39"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="39"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.invalid_charger` appears to be unused"
-        errorLine1="    &lt;string name=&quot;invalid_charger&quot;>Can\&apos;t charge via USB. Use the charger that came with your device.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="87"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="44"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="41"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="42"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="41"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="42"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="41"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="42"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="42"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="41"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="38"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="42"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="41"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="42"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="42"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="42"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="41"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="42"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="40"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="40"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.battery_low_why` appears to be unused"
-        errorLine1="    &lt;string name=&quot;battery_low_why&quot;>Settings&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="97"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="44"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="45"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="44"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="45"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="44"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="45"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="45"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="44"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="41"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="45"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="44"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="45"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="45"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="45"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="44"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="45"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="43"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="43"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.status_bar_settings_settings_button` appears to be unused"
-        errorLine1="    &lt;string name=&quot;status_bar_settings_settings_button&quot;>Settings&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="109"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="51"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="49"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="49"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="49"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="49"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="45"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="49"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="49"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="49"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="49"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="49"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="47"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="47"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.status_bar_settings_wifi_button` appears to be unused"
-        errorLine1="    &lt;string name=&quot;status_bar_settings_wifi_button&quot;>Wi-Fi&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="49"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="49"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="49"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="49"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="46"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="49"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="49"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="48"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.status_bar_settings_mute_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;status_bar_settings_mute_label&quot;>MUTE&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="51"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="51"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="51"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="51"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="48"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="51"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="51"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="50"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.status_bar_settings_notifications` appears to be unused"
-        errorLine1="    &lt;string name=&quot;status_bar_settings_notifications&quot;>Notifications&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="124"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="56"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="50"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="52"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.bluetooth_tethered` appears to be unused"
-        errorLine1="    &lt;string name=&quot;bluetooth_tethered&quot;>Bluetooth tethered&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="130"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="57"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="51"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="53"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.status_bar_input_method_settings_configure_input_methods` appears to be unused"
-        errorLine1="    &lt;string name=&quot;status_bar_input_method_settings_configure_input_methods&quot;>Set up input methods&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="58"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="56"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="56"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="56"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="56"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="52"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="56"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="56"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="56"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="56"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="56"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="54"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="54"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.status_bar_use_physical_keyboard` appears to be unused"
-        errorLine1="    &lt;string name=&quot;status_bar_use_physical_keyboard&quot;>Physical keyboard&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="59"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="56"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="57"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="56"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="57"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="56"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="57"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="57"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="56"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="53"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="57"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="56"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="57"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="57"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="57"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="56"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="57"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="55"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="55"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.compat_mode_on` appears to be unused"
-        errorLine1="    &lt;string name=&quot;compat_mode_on&quot;>Zoom to fill screen&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="74"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="72"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="72"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="72"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="72"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="68"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="72"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="72"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="72"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="72"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="72"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="70"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="70"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.compat_mode_off` appears to be unused"
-        errorLine1="    &lt;string name=&quot;compat_mode_off&quot;>Stretch to fill screen&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="185"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="75"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="72"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="72"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="72"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="72"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="69"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="72"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="72"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="71"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.screenshot_saving_ticker` appears to be unused"
-        errorLine1="    &lt;string name=&quot;screenshot_saving_ticker&quot;>Saving screenshot\u2026&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="191"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="77"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="74"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="75"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="74"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="75"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="74"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="75"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="75"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="74"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="71"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="75"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="74"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="75"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="75"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="75"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="74"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="75"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="73"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="73"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.usb_preference_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;usb_preference_title&quot;>USB file transfer options&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="85"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="79"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="81"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.use_mtp_button_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;use_mtp_button_title&quot;>Mount as a media player (MTP)&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="211"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="86"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="80"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="82"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.use_ptp_button_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;use_ptp_button_title&quot;>Mount as a camera (PTP)&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="213"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="87"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="85"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="85"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="85"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="85"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="81"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="85"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="85"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="85"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="85"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="85"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="83"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="83"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.installer_cd_button_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;installer_cd_button_title&quot;>Install Android File Transfer app for Mac&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="215"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="88"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="85"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="86"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="85"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="86"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="85"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="86"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="86"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="85"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="82"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="86"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="85"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="86"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="86"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="86"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="85"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="86"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="84"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="84"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_search_light` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_search_light&quot;>Search&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="95"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="92"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="93"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="92"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="93"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="92"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="93"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="93"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="92"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="89"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="93"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="92"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="93"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="93"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="93"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="92"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="93"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="91"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="91"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.recents_caption_resize` appears to be unused"
-        errorLine1="    &lt;string name=&quot;recents_caption_resize&quot;>Select new task layout&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="105"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="106"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="105"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="106"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="105"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="106"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="106"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="105"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="102"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="106"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="105"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="106"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="106"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="106"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="105"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="106"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="104"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="104"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_fingerprint_dialog_app_icon` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_fingerprint_dialog_app_icon&quot;>Application icon&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="109"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="109"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="109"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="109"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="106"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="109"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="109"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="108"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_compatibility_zoom_button` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_compatibility_zoom_button&quot;>Compatibility zoom button.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="108"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="110"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="110"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_compatibility_zoom_example` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_compatibility_zoom_example&quot;>Zoom smaller to larger screen.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="109"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="111"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_bluetooth_disconnected` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_bluetooth_disconnected&quot;>Bluetooth disconnected.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="111"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="113"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_no_battery` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_no_battery&quot;>No battery.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="112"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="114"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_battery_one_bar` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_battery_one_bar&quot;>Battery one bar.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="119"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="113"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="115"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_battery_two_bars` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_battery_two_bars&quot;>Battery two bars.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="120"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="114"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="116"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_battery_three_bars` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_battery_three_bars&quot;>Battery three bars.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="287"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="121"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="119"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="119"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="119"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="119"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="115"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="119"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="119"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="119"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="119"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="119"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="117"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="117"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_battery_full` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_battery_full&quot;>Battery full.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="289"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="122"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="119"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="120"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="119"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="120"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="119"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="120"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="120"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="119"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="116"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="120"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="119"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="120"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="120"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="120"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="119"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="120"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="118"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="118"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_wifi_name` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_wifi_name&quot;>Connected to &lt;xliff:g id=&quot;wifi&quot; example=&quot;Home Network&quot;>%s&lt;/xliff:g>.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="130"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="131"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="130"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="131"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="130"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="131"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="131"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="130"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="127"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="131"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="130"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="131"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="131"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="131"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="130"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="131"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="129"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="129"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_no_wimax` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_no_wimax&quot;>No WiMAX.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="324"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="130"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="132"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_wimax_one_bar` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_wimax_one_bar&quot;>WiMAX one bar.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="326"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="137"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="131"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="133"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_wimax_two_bars` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_wimax_two_bars&quot;>WiMAX two bars.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="328"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="138"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="132"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="134"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_wimax_three_bars` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_wimax_three_bars&quot;>WiMAX three bars.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="330"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="137"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="137"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="137"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="137"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="133"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="137"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="137"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="137"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="137"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="137"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="135"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="135"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_wimax_signal_full` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_wimax_signal_full&quot;>WiMAX signal full.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="332"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="140"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="137"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="138"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="137"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="138"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="137"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="138"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="138"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="137"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="134"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="138"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="137"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="138"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="138"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="138"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="137"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="138"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="136"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="136"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_no_signal` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_no_signal&quot;>No signal.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="340"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="140"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="140"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="140"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="140"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="137"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="140"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="140"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="139"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_zero_bars` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_zero_bars&quot;>Zero bars.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="344"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="139"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="141"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_one_bar` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_one_bar&quot;>One bar.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="346"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="140"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="142"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_two_bars` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_two_bars&quot;>Two bars.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="348"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="141"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="143"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_three_bars` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_three_bars&quot;>Three bars.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="350"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="142"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="144"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_signal_full` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_signal_full&quot;>Signal full.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="352"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="143"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="145"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_desc_on` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_desc_on&quot;>On.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="355"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="150"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="144"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="146"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_desc_off` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_desc_off&quot;>Off.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="357"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="145"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="147"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_desc_connected` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_desc_connected&quot;>Connected.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="152"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="150"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="150"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="150"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="150"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="146"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="150"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="150"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="150"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="150"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="150"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="148"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="148"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_desc_connecting` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_desc_connecting&quot;>Connecting.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="361"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="153"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="150"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="150"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="150"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="150"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="147"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="150"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="150"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="149"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.data_connection_hspa` appears to be unused"
-        errorLine1="    &lt;string name=&quot;data_connection_hspa&quot;>HSPA&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="155"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="152"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="153"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="152"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="153"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="152"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="153"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="153"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="152"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="149"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="153"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="152"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="153"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="153"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="153"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="152"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="153"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="151"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="151"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_data_connection_wifi` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_data_connection_wifi&quot;>Wi-Fi&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="400"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="166"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="160"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="162"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_no_sim` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_no_sim&quot;>No SIM.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="403"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="167"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="161"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="163"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_cell_data` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_cell_data&quot;>Mobile Data&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="166"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="166"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="166"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="166"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="162"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="166"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="166"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="166"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="166"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="166"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="164"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="164"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_cell_data_on` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_cell_data_on&quot;>Mobile Data On&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="169"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="166"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="167"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="166"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="167"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="166"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="167"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="167"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="166"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="163"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="167"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="166"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="167"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="167"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="167"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="166"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="167"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="165"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="165"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_bluetooth_tether` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_bluetooth_tether&quot;>Bluetooth tethering.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="418"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="172"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="169"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="169"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="169"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="169"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="166"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="169"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="169"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="168"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_vpn_on` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_vpn_on&quot;>VPN on.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="174"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="172"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="172"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="172"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="172"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="168"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="172"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="172"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="172"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="172"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="172"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="170"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="170"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_no_sims` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_no_sims&quot;>No SIM card.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="175"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="172"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="172"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="172"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="172"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="169"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="172"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="172"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="171"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_battery_details` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_battery_details&quot;>Open battery details&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="433"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="174"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="175"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="174"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="175"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="174"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="175"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="175"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="174"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="171"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="175"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="174"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="175"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="175"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="175"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="174"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="175"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="173"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="173"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_settings_button` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_settings_button&quot;>System settings.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="442"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="174"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="176"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="176"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_notifications_button` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_notifications_button&quot;>Notifications.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="175"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="177"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_remove_notification` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_remove_notification&quot;>Clear notification.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="451"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="177"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="179"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_gps_enabled` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_gps_enabled&quot;>GPS enabled.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="454"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="184"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="184"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="184"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="184"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="178"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="184"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="184"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="184"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="184"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="180"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="180"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_gps_acquiring` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_gps_acquiring&quot;>GPS acquiring.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="457"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="185"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="185"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="185"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="185"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="179"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="184"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="185"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="185"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="185"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="182"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="185"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="183"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="181"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="181"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_work_mode` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_work_mode&quot;>@string/quick_settings_work_mode_label&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="472"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_recents_item_launched` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_recents_item_launched&quot;>Starting &lt;xliff:g id=&quot;app&quot; example=&quot;Calendar&quot;>%s&lt;/xliff:g>.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="197"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="197"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="197"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="197"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="191"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="197"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="197"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="197"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="197"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="193"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="193"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_notification_dismissed` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_notification_dismissed&quot;>Notification dismissed.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="192"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="197"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="195"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="194"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="194"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_desc_settings` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_desc_settings&quot;>Settings&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="199"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="199"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="199"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="199"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="196"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="201"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="199"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="198"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="198"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_quick_settings_wifi` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_quick_settings_wifi&quot;>&lt;xliff:g id=&quot;signal&quot; example=&quot;Three bars&quot;>%1$s&lt;/xliff:g>.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="203"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="203"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="203"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="203"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="200"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="203"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="202"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="202"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_quick_settings_mobile` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_quick_settings_mobile&quot;>Mobile &lt;xliff:g id=&quot;signal&quot; example=&quot;Three bars&quot;>%1$s&lt;/xliff:g>. &lt;xliff:g id=&quot;type&quot; example=&quot;4G&quot;>%2$s&lt;/xliff:g>. &lt;xliff:g id=&quot;network&quot; example=&quot;T-Mobile&quot;>%3$s&lt;/xliff:g>.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="203"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="205"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_quick_settings_battery` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_quick_settings_battery&quot;>Battery &lt;xliff:g id=&quot;state&quot; example=&quot;50% charging&quot;>%s&lt;/xliff:g>.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="204"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="206"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_quick_settings_airplane_off` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_quick_settings_airplane_off&quot;>Airplane mode off.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="211"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="211"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="211"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="211"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="205"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="211"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="211"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="211"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="211"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="207"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="207"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_quick_settings_airplane_on` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_quick_settings_airplane_on&quot;>Airplane mode on.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="212"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="212"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="212"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="212"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="206"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="211"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="212"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="212"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="212"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="209"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="212"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="210"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="208"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="208"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_quick_settings_bluetooth_off` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_quick_settings_bluetooth_off&quot;>Bluetooth off.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="533"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="218"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="218"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="218"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="218"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="215"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="218"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="217"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_quick_settings_bluetooth_connecting` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_quick_settings_bluetooth_connecting&quot;>Bluetooth connecting.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="223"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="223"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="223"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="223"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="217"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="223"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="223"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="223"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="223"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="219"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="219"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_quick_settings_bluetooth_connected` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_quick_settings_bluetooth_connected&quot;>Bluetooth connected.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="224"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="224"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="224"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="224"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="218"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="223"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="224"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="224"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="224"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="221"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="224"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="222"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="220"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="220"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_quick_settings_close` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_quick_settings_close&quot;>Close panel.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="232"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="229"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="232"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="229"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="232"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="232"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="229"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="229"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="226"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="232"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="232"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="232"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="229"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="232"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="230"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="228"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="228"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_quick_settings_flashlight_off` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_quick_settings_flashlight_off&quot;>Flashlight off.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="232"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="232"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="232"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="232"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="229"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="234"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="232"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="231"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_quick_settings_flashlight_on` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_quick_settings_flashlight_on&quot;>Flashlight on.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="237"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="234"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="237"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="234"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="237"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="237"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="234"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="234"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="231"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="236"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="237"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="237"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="237"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="234"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="237"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="235"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="233"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="233"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_ambient_display_charging` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_ambient_display_charging&quot;>Charging&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="246"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="248"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.data_usage_disabled_dialog_3g_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;data_usage_disabled_dialog_3g_title&quot;>2G-3G data is paused&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="253"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="253"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="253"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="253"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="247"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="253"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="253"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="253"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="253"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="249"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="249"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.data_usage_disabled_dialog_4g_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;data_usage_disabled_dialog_4g_title&quot;>4G data is paused&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="254"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="254"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="254"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="254"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="248"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="253"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="254"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="254"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="254"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="251"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="254"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="252"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="250"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="250"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.gps_notification_searching_text` appears to be unused"
-        errorLine1="    &lt;string name=&quot;gps_notification_searching_text&quot;>Searching for GPS&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="613"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="259"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="259"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="259"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="259"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="253"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="259"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="259"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="259"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="259"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="255"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="255"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.gps_notification_found_text` appears to be unused"
-        errorLine1="    &lt;string name=&quot;gps_notification_found_text&quot;>Location set by GPS&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="616"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="260"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="260"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="260"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="260"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="254"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="259"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="260"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="260"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="260"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="257"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="260"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="258"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="256"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="256"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.status_bar_notification_inspect_item_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;status_bar_notification_inspect_item_title&quot;>Notification settings&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="637"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="263"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="265"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.status_bar_notification_app_settings_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;status_bar_notification_app_settings_title&quot;>&lt;xliff:g id=&quot;app_name&quot; example=&quot;Calendar&quot;>%s&lt;/xliff:g> settings&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="641"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="264"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="266"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="266"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_rotation_lock_off` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_rotation_lock_off&quot;>Screen will rotate automatically.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="644"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="265"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="267"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="267"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_rotation_lock_off_changed` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_rotation_lock_off_changed&quot;>Screen will now rotate automatically.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="653"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="276"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="276"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="268"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="276"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="276"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="276"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="276"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="270"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_rotation_lock_on_landscape_changed` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_rotation_lock_on_landscape_changed&quot;>Screen is now locked in landscape orientation.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="656"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="269"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="271"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="271"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_rotation_lock_on_portrait_changed` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_rotation_lock_on_portrait_changed&quot;>Screen is now locked in portrait orientation.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="659"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="276"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="276"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="276"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="270"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="276"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="276"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="274"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="272"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="272"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.ethernet_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;ethernet_label&quot;>Ethernet&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="668"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="273"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="275"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="275"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_dnd_priority_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_dnd_priority_label&quot;>Priority only&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="675"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="286"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="276"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="278"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_dnd_alarms_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_dnd_alarms_label&quot;>Alarms only&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="677"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="287"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="277"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="279"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="279"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_dnd_none_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_dnd_none_label&quot;>Total silence&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="679"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="288"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="286"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="286"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="278"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="286"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="286"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="286"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="286"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="280"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_bluetooth_multiple_devices_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_bluetooth_multiple_devices_label&quot;>Bluetooth (&lt;xliff:g id=&quot;number&quot;>%d&lt;/xliff:g> Devices)&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="683"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="288"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="288"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="286"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="286"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="286"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="280"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="286"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="286"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="288"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="288"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="288"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="288"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="284"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="282"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="282"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_bluetooth_off_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_bluetooth_off_label&quot;>Bluetooth Off&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="685"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="291"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="289"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="289"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="287"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="287"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="287"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="281"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="287"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="287"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="289"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="289"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="289"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="289"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="285"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="283"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="283"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_brightness_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_brightness_label&quot;>Brightness&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="288"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="290"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="290"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_quick_settings_rotation_value` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_quick_settings_rotation_value&quot;>&lt;xliff:g name=&quot;rotation&quot; example=&quot;Portrait&quot;>%s&lt;/xliff:g> mode&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="705"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="291"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="293"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_rotation_locked_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_rotation_locked_label&quot;>Rotation locked&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="707"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="292"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="294"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_rotation_locked_portrait_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_rotation_locked_portrait_label&quot;>Portrait&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="709"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="293"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="295"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_rotation_locked_landscape_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_rotation_locked_landscape_label&quot;>Landscape&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="294"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="296"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="296"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_ime_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_ime_label&quot;>Input Method&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="295"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="297"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_location_off_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_location_off_label&quot;>Location Off&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="717"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="297"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="299"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_media_device_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_media_device_label&quot;>Media device&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="719"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="308"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="298"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="300"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_rssi_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_rssi_label&quot;>RSSI&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="721"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="299"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="301"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_rssi_emergency_only` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_rssi_emergency_only&quot;>Emergency Calls Only&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="723"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="308"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="308"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="300"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="308"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="308"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="308"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="308"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="302"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_settings_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_settings_label&quot;>Settings&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="301"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="303"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_time_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_time_label&quot;>Time&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="308"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="308"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="308"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="302"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="308"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="308"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="306"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="304"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="304"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_user_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_user_label&quot;>Me&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="303"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="305"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_user_new_user` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_user_new_user&quot;>New user&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="733"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="315"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="305"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="307"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_wifi_not_connected` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_wifi_not_connected&quot;>Not Connected&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="737"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="317"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="315"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="315"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="307"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="315"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="315"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="315"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="315"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="309"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_wifi_no_network` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_wifi_no_network&quot;>No Network&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="739"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="316"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="316"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="308"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="316"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="316"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="316"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="316"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="310"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_wifi_off_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_wifi_off_label&quot;>Wi-Fi Off&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="741"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="319"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="317"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="317"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="315"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="315"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="315"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="309"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="315"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="315"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="317"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="317"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="317"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="317"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="313"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="311"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="311"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_wifi_on_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_wifi_on_label&quot;>Wi-Fi On&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="743"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="316"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="316"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="316"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="310"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="316"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="316"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="314"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="312"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="312"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_cast_device_default_description` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_cast_device_default_description&quot;>Ready to cast&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="755"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="326"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="324"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="324"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="322"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="322"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="322"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="316"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="322"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="322"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="324"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="324"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="324"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="324"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="320"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="318"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="318"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_brightness_dialog_auto_brightness_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_brightness_dialog_auto_brightness_label&quot;>AUTO&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="761"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="327"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="327"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="319"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="327"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="327"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="327"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="327"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="321"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_color_space_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_color_space_label&quot;>Color correction mode&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="765"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="327"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="327"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="327"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="321"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="327"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="327"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="325"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="323"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="323"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_tethering_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_tethering_label&quot;>Tethering&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="777"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="335"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="335"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="333"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="333"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="333"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="327"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="333"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="333"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="335"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="335"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="335"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="335"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="331"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="329"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="329"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_notifications_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_notifications_label&quot;>Notifications&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="791"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="349"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="340"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="345"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="340"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="345"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="341"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="339"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="339"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="339"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="339"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="339"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="339"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="339"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="340"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="339"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="343"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="339"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="339"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="343"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="340"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="335"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="343"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="339"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="339"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="342"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="345"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="345"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="345"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="340"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="345"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="339"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="339"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="337"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="337"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.recents_search_bar_label` appears to be unused"
-        errorLine1="    &lt;string name=&quot;recents_search_bar_label&quot;>search&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="840"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="371"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="362"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="362"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="363"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="361"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="361"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="361"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="361"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="361"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="361"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="361"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="362"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="361"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="365"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="361"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="361"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="365"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="362"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="357"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="365"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="361"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="361"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="364"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="362"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="361"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="361"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="359"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="359"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.recents_multistack_add_stack_dialog_split_horizontal` appears to be unused"
-        errorLine1="    &lt;string name=&quot;recents_multistack_add_stack_dialog_split_horizontal&quot;>Split Horizontal&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="855"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="372"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="372"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="364"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="372"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="371"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="366"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.recents_multistack_add_stack_dialog_split_vertical` appears to be unused"
-        errorLine1="    &lt;string name=&quot;recents_multistack_add_stack_dialog_split_vertical&quot;>Split Vertical&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="857"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="371"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="365"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="372"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="369"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="367"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="367"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.recents_multistack_add_stack_dialog_split_custom` appears to be unused"
-        errorLine1="    &lt;string name=&quot;recents_multistack_add_stack_dialog_split_custom&quot;>Split Custom&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="859"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="371"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="371"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="372"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="371"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="371"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="366"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="371"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="370"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="368"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="368"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.expanded_header_battery_charged` appears to be unused"
-        errorLine1="    &lt;string name=&quot;expanded_header_battery_charged&quot;>Charged&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="871"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="385"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="371"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="373"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.expanded_header_battery_charging` appears to be unused"
-        errorLine1="    &lt;string name=&quot;expanded_header_battery_charging&quot;>Charging&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="874"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="372"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="374"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.expanded_header_battery_charging_with_time` appears to be unused"
-        errorLine1="    &lt;string name=&quot;expanded_header_battery_charging_with_time&quot;>&lt;xliff:g id=&quot;charging_time&quot; example=&quot;2 hrs 25 min&quot;>%s&lt;/xliff:g> until full&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="877"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="383"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="383"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="373"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="383"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="383"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="383"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="383"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="375"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.expanded_header_battery_not_charging` appears to be unused"
-        errorLine1="    &lt;string name=&quot;expanded_header_battery_not_charging&quot;>Not charging&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="880"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="384"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="384"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="374"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="384"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="384"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="384"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="384"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="376"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.ssl_ca_cert_warning` appears to be unused"
-        errorLine1="    &lt;string name=&quot;ssl_ca_cert_warning&quot;>Network may\nbe monitored&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="886"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="385"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="385"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="383"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="383"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="375"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="383"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="385"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="385"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="385"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="385"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="377"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.description_target_search` appears to be unused"
-        errorLine1="    &lt;string name=&quot;description_target_search&quot;>Search&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="889"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="390"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="384"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="384"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="376"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="384"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="383"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="378"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.description_direction_up` appears to be unused"
-        errorLine1="    &lt;string name=&quot;description_direction_up&quot;>Slide up for &lt;xliff:g id=&quot;target_description&quot; example=&quot;Unlock&quot;>%s&lt;/xliff:g>.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="891"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="391"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="383"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="385"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="385"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="377"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="385"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="384"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="381"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="379"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="379"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.description_direction_left` appears to be unused"
-        errorLine1="    &lt;string name=&quot;description_direction_left&quot;>&quot;Slide left for &lt;xliff:g id=&quot;target_description&quot; example=&quot;Unlock&quot;>%s&lt;/xliff:g>.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="893"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="392"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="383"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="383"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="384"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="383"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="383"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="378"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="385"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="383"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="382"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="380"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="380"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.keyguard_more_overflow_text` appears to be unused"
-        errorLine1="    &lt;string name=&quot;keyguard_more_overflow_text&quot;>+&lt;xliff:g id=&quot;number_of_notifications&quot; example=&quot;5&quot;>%d&lt;/xliff:g>&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="911"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="398"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="394"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="394"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="390"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="392"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="392"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="384"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="392"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="391"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="394"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="394"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="394"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="394"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="388"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="386"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="386"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.speed_bump_explanation` appears to be unused"
-        errorLine1="    &lt;string name=&quot;speed_bump_explanation&quot;>Less urgent notifications below&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="914"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="399"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="390"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="395"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="390"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="395"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="391"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="390"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="393"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="393"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="390"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="385"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="393"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="392"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="395"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="395"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="395"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="390"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="395"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="389"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="387"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="387"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_multi_user_switch_switcher` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_multi_user_switch_switcher&quot;>Switch user&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="970"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="417"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="413"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="413"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="411"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="411"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="403"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="411"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="413"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="413"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="413"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="413"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="405"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_multi_user_switch_switcher_with_current` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_multi_user_switch_switcher_with_current&quot;>Switch user, current user &lt;xliff:g id=&quot;current_user_name&quot; example=&quot;John Doe&quot;>%s&lt;/xliff:g>&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="973"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="418"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="414"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="414"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="412"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="412"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="404"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="412"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="411"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="414"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="414"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="414"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="414"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="406"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_multi_user_switch_inactive` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_multi_user_switch_inactive&quot;>Current user &lt;xliff:g id=&quot;current_user_name&quot; example=&quot;John Doe&quot;>%s&lt;/xliff:g>&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="976"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="419"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="415"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="415"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="411"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="413"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="413"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="405"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="413"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="412"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="415"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="415"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="415"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="415"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="409"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="407"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="407"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_multi_user_switch_quick_contact` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_multi_user_switch_quick_contact&quot;>Show profile&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="979"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="420"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="411"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="416"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="411"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="416"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="412"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="411"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="414"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="414"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="411"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="406"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="414"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="413"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="416"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="416"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="416"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="411"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="416"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="410"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="408"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="408"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.guest_notification_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;guest_notification_title&quot;>Guest user&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1018"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="433"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="429"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="429"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="419"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="429"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="429"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="429"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="429"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="421"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.guest_notification_text` appears to be unused"
-        errorLine1="    &lt;string name=&quot;guest_notification_text&quot;>To delete apps and data, remove guest user&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1021"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="434"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="430"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="430"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="420"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="430"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="430"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="430"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="430"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="422"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.guest_notification_remove_action` appears to be unused"
-        errorLine1="    &lt;string name=&quot;guest_notification_remove_action&quot;>REMOVE GUEST&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1024"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="431"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="431"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="429"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="429"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="421"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="429"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="431"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="431"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="431"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="431"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="423"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.user_logout_notification_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;user_logout_notification_title&quot;>Logout user&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1027"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="432"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="432"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="430"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="430"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="422"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="430"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="429"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="432"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="432"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="432"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="432"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="424"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.user_logout_notification_text` appears to be unused"
-        errorLine1="    &lt;string name=&quot;user_logout_notification_text&quot;>Logout current user&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1030"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="433"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="433"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="429"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="431"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="431"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="423"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="431"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="430"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="433"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="433"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="433"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="433"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="427"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="425"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="425"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.user_logout_notification_action` appears to be unused"
-        errorLine1="    &lt;string name=&quot;user_logout_notification_action&quot;>LOGOUT USER&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1033"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="429"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="434"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="429"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="434"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="430"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="429"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="432"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="432"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="429"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="424"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="432"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="431"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="434"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="434"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="434"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="429"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="434"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="428"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="426"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="426"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.battery_saver_notification_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;battery_saver_notification_title&quot;>Battery Saver is on&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1060"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="443"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="443"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="441"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="441"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="433"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="441"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="440"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="443"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="443"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="443"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="443"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="435"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.battery_saver_notification_text` appears to be unused"
-        errorLine1="    &lt;string name=&quot;battery_saver_notification_text&quot;>Reduces performance and background data&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1063"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="444"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="444"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="440"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="442"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="442"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="434"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="442"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="441"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="444"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="444"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="444"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="444"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="438"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="436"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="436"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.battery_saver_notification_action_text` appears to be unused"
-        errorLine1="    &lt;string name=&quot;battery_saver_notification_action_text&quot;>Turn off Battery Saver&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1066"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="440"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="440"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="441"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="440"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="443"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="443"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="440"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="435"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="443"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="442"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="440"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="439"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="437"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="437"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.profile_owned_footer` appears to be unused"
-        errorLine1="    &lt;string name=&quot;profile_owned_footer&quot;>Profile may be monitored&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1090"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="457"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="453"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="453"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="451"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="451"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="443"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="451"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="450"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="453"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="453"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="453"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="453"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="445"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.vpn_footer` appears to be unused"
-        errorLine1="    &lt;string name=&quot;vpn_footer&quot;>Network may be monitored&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1093"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="458"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="454"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="454"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="450"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="452"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="452"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="444"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="452"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="451"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="454"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="454"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="454"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="454"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="448"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="446"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="446"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.branded_vpn_footer` appears to be unused"
-        errorLine1="    &lt;string name=&quot;branded_vpn_footer&quot;>Network may be monitored&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1096"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="459"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="450"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="455"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="450"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="455"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="451"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="450"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="453"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="453"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="450"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="445"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="453"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="452"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="455"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="455"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="455"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="450"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="455"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="449"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="447"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="447"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.monitoring_title_profile_owned` appears to be unused"
-        errorLine1="    &lt;string name=&quot;monitoring_title_profile_owned&quot;>Profile monitoring&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1147"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="476"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="467"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="467"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="468"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="467"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="467"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="462"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="467"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="466"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="464"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="464"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.disable_vpn` appears to be unused"
-        errorLine1="    &lt;string name=&quot;disable_vpn&quot;>Disable VPN&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1163"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="481"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="477"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="477"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="473"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="475"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="475"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="467"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="475"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="474"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="477"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="477"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="477"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="477"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="471"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="469"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="469"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.disconnect_vpn` appears to be unused"
-        errorLine1="    &lt;string name=&quot;disconnect_vpn&quot;>Disconnect VPN&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1166"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="473"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="478"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="473"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="478"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="474"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="473"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="476"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="476"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="473"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="468"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="476"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="475"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="478"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="478"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="478"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="473"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="478"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="472"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="470"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="470"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.monitoring_description_do_header_generic` appears to be unused"
-        errorLine1="    &lt;string name=&quot;monitoring_description_do_header_generic&quot;>Your device is managed by &lt;xliff:g id=&quot;device_owner_app&quot; example=&quot;Google Mobile Management&quot;>%1$s&lt;/xliff:g>.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1202"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="480"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="482"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.monitoring_description_do_header_with_name` appears to be unused"
-        errorLine1="    &lt;string name=&quot;monitoring_description_do_header_with_name&quot;>&lt;xliff:g id=&quot;organization_name&quot; example=&quot;Foo, Inc.&quot;>%1$s&lt;/xliff:g> uses &lt;xliff:g id=&quot;device_owner_app&quot; example=&quot;Google Mobile Management&quot;>%2$s&lt;/xliff:g> to manage your device.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1205"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="481"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="483"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.monitoring_description_do_body` appears to be unused"
-        errorLine1="    &lt;string name=&quot;monitoring_description_do_body&quot;>Your admin can monitor and manage settings, corporate access, apps, data associated with your device, and your device\&apos;s location information.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1208"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="482"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="484"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.monitoring_description_do_learn_more_separator` appears to be unused"
-        errorLine1="    &lt;string name=&quot;monitoring_description_do_learn_more_separator&quot;>&quot; &quot;&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1211"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="483"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="485"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.monitoring_description_do_learn_more` appears to be unused"
-        errorLine1="    &lt;string name=&quot;monitoring_description_do_learn_more&quot;>Learn more&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1214"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="484"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="486"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="486"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.monitoring_description_do_body_vpn` appears to be unused"
-        errorLine1="    &lt;string name=&quot;monitoring_description_do_body_vpn&quot;>You\&apos;re connected to &lt;xliff:g id=&quot;vpn_app&quot;>%1$s&lt;/xliff:g>, which can monitor your network activity, including emails, apps, and websites.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1217"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="485"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="487"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="487"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.monitoring_description_ca_cert_settings_separator` appears to be unused"
-        errorLine1="    &lt;string name=&quot;monitoring_description_ca_cert_settings_separator&quot;>&quot; &quot;&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1226"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="488"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="490"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.monitoring_description_ca_cert_settings` appears to be unused"
-        errorLine1="    &lt;string name=&quot;monitoring_description_ca_cert_settings&quot;>Open trusted credentials&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1229"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="489"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="491"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.monitoring_description_network_logging` appears to be unused"
-        errorLine1="    &lt;string name=&quot;monitoring_description_network_logging&quot;>Your admin has turned on network logging, which monitors traffic on your device.\n\nFor more information, contact your admin.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1232"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="490"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="492"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.monitoring_description_vpn` appears to be unused"
-        errorLine1="    &lt;string name=&quot;monitoring_description_vpn&quot;>You gave an app permission to set up a VPN connection.\n\nThis app can monitor your device and network activity, including emails, apps, and websites.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1235"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="491"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="493"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="493"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.monitoring_description_vpn_profile_owned` appears to be unused"
-        errorLine1="    &lt;string name=&quot;monitoring_description_vpn_profile_owned&quot;>Your work profile is managed by &lt;xliff:g id=&quot;organization&quot;>%1$s&lt;/xliff:g>.\n\nYour admin is capable of monitoring your network activity including emails, apps, and websites.\n\nFor more information, contact your admin.\n\nYou\&apos;re also connected to a VPN, which can monitor your network activity.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1238"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="492"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="494"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.monitoring_description_app` appears to be unused"
-        errorLine1="    &lt;string name=&quot;monitoring_description_app&quot;>You\&apos;re connected to"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1244"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="494"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="496"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.monitoring_description_app_personal` appears to be unused"
-        errorLine1="    &lt;string name=&quot;monitoring_description_app_personal&quot;>You\&apos;re connected to &lt;xliff:g id=&quot;application&quot;>%1$s&lt;/xliff:g>, which can monitor your personal network activity, including emails, apps, and websites.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1249"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="495"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="497"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.branded_monitoring_description_app_personal` appears to be unused"
-        errorLine1="    &lt;string name=&quot;branded_monitoring_description_app_personal&quot;>You\&apos;re connected to &lt;xliff:g id=&quot;application&quot;>%1$s&lt;/xliff:g>, which can monitor your personal network activity, including emails, apps, and websites.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1252"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="496"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="498"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.monitoring_description_app_work` appears to be unused"
-        errorLine1="    &lt;string name=&quot;monitoring_description_app_work&quot;>Your work profile is managed by"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1255"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="497"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="499"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.monitoring_description_app_personal_work` appears to be unused"
-        errorLine1="    &lt;string name=&quot;monitoring_description_app_personal_work&quot;>Your work profile is managed by"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1261"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="498"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="500"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.keyguard_indication_trust_granted` appears to be unused"
-        errorLine1="    &lt;string name=&quot;keyguard_indication_trust_granted&quot;>Unlocked for &lt;xliff:g id=&quot;user_name&quot; example=&quot;John Doe&quot;>%1$s&lt;/xliff:g>&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1269"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="499"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="501"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="501"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.keyguard_indication_trust_managed` appears to be unused"
-        errorLine1="    &lt;string name=&quot;keyguard_indication_trust_managed&quot;>&lt;xliff:g id=&quot;trust_agent&quot; example=&quot;Smart Lock&quot;>%1$s&lt;/xliff:g> is running&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1272"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="500"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="502"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.hidden_notifications_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;hidden_notifications_title&quot;>Get notifications faster&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1278"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="516"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="502"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="504"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.hidden_notifications_text` appears to be unused"
-        errorLine1="    &lt;string name=&quot;hidden_notifications_text&quot;>See them before you unlock&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1281"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="517"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="503"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="505"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.hidden_notifications_cancel` appears to be unused"
-        errorLine1="    &lt;string name=&quot;hidden_notifications_cancel&quot;>No thanks&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1284"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="518"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="504"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="508"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="506"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="506"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.hidden_notifications_setup` appears to be unused"
-        errorLine1="    &lt;string name=&quot;hidden_notifications_setup&quot;>Set up&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1287"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="519"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="505"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="507"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.volume_zen_end_now` appears to be unused"
-        errorLine1="    &lt;string name=&quot;volume_zen_end_now&quot;>Turn off now&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1293"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="521"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="517"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="517"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="507"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="517"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="517"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="517"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="517"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="509"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_volume_expand` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_volume_expand&quot;>Expand&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1299"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="523"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="519"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="519"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="517"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="517"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="509"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="517"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="516"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="519"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="519"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="519"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="519"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="511"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_volume_collapse` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_volume_collapse&quot;>Collapse&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1302"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="524"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="520"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="520"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="516"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="518"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="518"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="510"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="518"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="517"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="520"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="520"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="520"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="520"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="514"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="512"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="512"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_output_chooser` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_output_chooser&quot;>Switch output device&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1305"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="516"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="521"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="516"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="521"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="517"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="516"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="519"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="519"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="516"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="511"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="519"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="518"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="521"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="521"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="521"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="516"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="521"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="515"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="513"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="513"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_reset_confirmation_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_reset_confirmation_title&quot;>Hide &lt;xliff:g id=&quot;tile_label&quot; example=&quot;Hotspot&quot;>%1$s&lt;/xliff:g>?&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1330"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="533"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="533"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="531"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="531"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="523"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="531"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="530"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="533"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="533"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="533"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="533"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="525"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_reset_confirmation_message` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_reset_confirmation_message&quot;>It will reappear the next time you turn it on in settings.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1333"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="538"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="534"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="534"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="530"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="532"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="532"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="524"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="532"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="531"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="534"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="534"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="534"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="534"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="528"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="526"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="526"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings_reset_confirmation_button` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings_reset_confirmation_button&quot;>Hide&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1336"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="530"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="535"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="530"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="535"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="531"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="530"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="533"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="533"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="530"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="525"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="533"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="532"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="535"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="535"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="535"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="530"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="535"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="529"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="527"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="527"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.ring_toggle_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;ring_toggle_title&quot;>Calls&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1351"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="549"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="540"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="545"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="540"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="545"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="541"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="540"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="543"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="543"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="540"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="535"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="543"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="542"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="545"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="545"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="545"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="540"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="545"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="539"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="537"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="537"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.volume_stream_muted` appears to be unused"
-        errorLine1="    &lt;string name=&quot;volume_stream_muted&quot; translatable=&quot;false&quot;>%s silent&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1361"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.volume_stream_vibrate` appears to be unused"
-        errorLine1="    &lt;string name=&quot;volume_stream_vibrate&quot; translatable=&quot;false&quot;>%s vibrate&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1362"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.volume_stream_suppressed` appears to be unused"
-        errorLine1="    &lt;string name=&quot;volume_stream_suppressed&quot; translatable=&quot;false&quot;>%1$s silent — %2$s&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1363"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.volume_stream_muted_dnd` appears to be unused"
-        errorLine1="    &lt;string name=&quot;volume_stream_muted_dnd&quot; translatable=&quot;false&quot;>%s silent — Total silence&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1364"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.volume_stream_limited_dnd` appears to be unused"
-        errorLine1="    &lt;string name=&quot;volume_stream_limited_dnd&quot; translatable=&quot;false&quot;>%s — Priority only&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1365"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.volume_stream_vibrate_dnd` appears to be unused"
-        errorLine1="    &lt;string name=&quot;volume_stream_vibrate_dnd&quot; translatable=&quot;false&quot;>%s vibrate — Priority only&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1366"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.output_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;output_title&quot;>Media output&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1385"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="551"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="553"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.output_calls_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;output_calls_title&quot;>Phone call output&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1386"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="566"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="552"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="554"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.output_none_found` appears to be unused"
-        errorLine1="    &lt;string name=&quot;output_none_found&quot;>No devices found&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1387"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="553"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="555"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.output_none_found_service_off` appears to be unused"
-        errorLine1="    &lt;string name=&quot;output_none_found_service_off&quot;>No devices found. Try turning on &lt;xliff:g id=&quot;service&quot; example=&quot;Bluetooth&quot;>%1$s&lt;/xliff:g>&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1388"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="568"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="554"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="556"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.output_service_bt` appears to be unused"
-        errorLine1="    &lt;string name=&quot;output_service_bt&quot;>Bluetooth&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1389"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="569"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="555"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="557"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.output_service_wifi` appears to be unused"
-        errorLine1="    &lt;string name=&quot;output_service_wifi&quot;>Wi-Fi&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1390"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="570"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="566"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="566"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="556"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="566"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="566"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="566"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="566"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="558"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="558"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.output_service_bt_wifi` appears to be unused"
-        errorLine1="    &lt;string name=&quot;output_service_bt_wifi&quot;>Bluetooth and Wi-Fi&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1391"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="571"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="557"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="559"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.show_battery_percentage` appears to be unused"
-        errorLine1="    &lt;string name=&quot;show_battery_percentage&quot;>Show embedded battery percentage&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1397"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="569"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="566"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="569"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="559"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="566"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="569"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="569"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="569"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="569"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="561"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.show_battery_percentage_summary` appears to be unused"
-        errorLine1="    &lt;string name=&quot;show_battery_percentage_summary&quot;>Show battery level percentage inside the status bar icon when not charging&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1400"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="570"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="570"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="566"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="568"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="568"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="560"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="568"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="570"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="570"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="570"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="570"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="564"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="562"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="562"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.quick_settings` appears to be unused"
-        errorLine1="    &lt;string name=&quot;quick_settings&quot;>Quick Settings&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1403"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="566"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="571"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="568"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="571"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="566"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="569"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="569"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="566"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="561"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="569"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="568"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="571"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="571"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="571"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="566"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="571"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="563"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.overview` appears to be unused"
-        errorLine1="    &lt;string name=&quot;overview&quot;>Overview&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1409"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="577"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="568"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="570"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="569"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="568"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="571"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="571"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="568"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="563"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="571"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="570"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="568"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="567"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="565"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="565"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.add_tile` appears to be unused"
-        errorLine1="    &lt;string name=&quot;add_tile&quot;>Add tile&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1433"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="585"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="581"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="578"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="581"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="577"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="579"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="579"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="571"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="579"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="578"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="581"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="581"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="581"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="581"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="575"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="573"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="573"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.broadcast_tile` appears to be unused"
-        errorLine1="    &lt;string name=&quot;broadcast_tile&quot;>Broadcast Tile&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1436"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="586"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="577"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="582"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="579"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="582"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="578"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="577"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="580"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="580"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="577"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="572"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="580"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="579"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="582"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="582"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="582"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="577"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="582"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="576"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="574"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="574"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.regrettable_lack_of_easter_egg` appears to be unused"
-        errorLine1="    &lt;string name=&quot;regrettable_lack_of_easter_egg&quot;>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1439"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.activity_not_found` appears to be unused"
-        errorLine1="    &lt;string name=&quot;activity_not_found&quot;>Application is not installed on your device&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1486"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="587"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="589"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.clock_seconds` appears to be unused"
-        errorLine1="    &lt;string name=&quot;clock_seconds&quot;>Show clock seconds&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1489"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="588"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="590"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.clock_seconds_desc` appears to be unused"
-        errorLine1="    &lt;string name=&quot;clock_seconds_desc&quot;>Show clock seconds in the status bar. May impact battery life.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1491"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="589"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="591"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.qs_rearrange` appears to be unused"
-        errorLine1="    &lt;string name=&quot;qs_rearrange&quot;>Rearrange Quick Settings&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1494"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="590"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="592"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.show_brightness` appears to be unused"
-        errorLine1="    &lt;string name=&quot;show_brightness&quot;>Show brightness in Quick Settings&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1496"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="591"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="595"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="593"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="593"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.qs_paging` appears to be unused"
-        errorLine1="    &lt;string name=&quot;qs_paging&quot; translatable=&quot;false&quot;>Use the new Quick Settings&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1498"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.experimental` appears to be unused"
-        errorLine1="    &lt;string name=&quot;experimental&quot;>Experimental&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1502"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="592"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="594"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="594"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.qs_customize` appears to be unused"
-        errorLine1="    &lt;string name=&quot;qs_customize&quot; translatable=&quot;false&quot;>Allow long-press customize in Quick Settings&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1504"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.qs_customize_info` appears to be unused"
-        errorLine1="    &lt;string name=&quot;qs_customize_info&quot; translatable=&quot;false&quot;>Info&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1505"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.qs_customize_remove` appears to be unused"
-        errorLine1="    &lt;string name=&quot;qs_customize_remove&quot; translatable=&quot;false&quot;>Remove&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1506"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.no_tiles_add` appears to be unused"
-        errorLine1="    &lt;string name=&quot;no_tiles_add&quot; translatable=&quot;false&quot;>No tiles to add&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1507"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.show_silently` appears to be unused"
-        errorLine1="    &lt;string name=&quot;show_silently&quot;>Show notifications silently&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1520"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="610"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="596"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="598"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.block` appears to be unused"
-        errorLine1="    &lt;string name=&quot;block&quot;>Block all notifications&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1522"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="611"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="607"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="607"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="597"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="607"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="607"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="607"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="607"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="599"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.do_not_silence` appears to be unused"
-        errorLine1="    &lt;string name=&quot;do_not_silence&quot;>Don\&apos;t silence&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1524"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="612"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="598"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="600"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="600"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.do_not_silence_block` appears to be unused"
-        errorLine1="    &lt;string name=&quot;do_not_silence_block&quot;>Don\&apos;t silence or block&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1526"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="613"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="609"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="609"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="607"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="607"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="599"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="607"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="609"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="609"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="609"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="609"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="601"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.tuner_full_importance_settings_on` appears to be unused"
-        errorLine1="    &lt;string name=&quot;tuner_full_importance_settings_on&quot;>On&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1530"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="615"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="611"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="611"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="607"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="609"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="609"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="601"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="609"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="611"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="611"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="611"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="611"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="605"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="603"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="603"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.tuner_full_importance_settings_off` appears to be unused"
-        errorLine1="    &lt;string name=&quot;tuner_full_importance_settings_off&quot;>Off&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1531"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="616"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="607"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="612"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="609"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="612"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="607"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="610"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="610"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="607"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="602"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="610"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="609"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="612"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="612"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="612"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="607"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="612"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="604"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.notification_header_default_channel` appears to be unused"
-        errorLine1="    &lt;string name=&quot;notification_header_default_channel&quot;>Notifications&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1558"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="618"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="609"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="614"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="611"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="614"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="610"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="609"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="612"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="612"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="609"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="604"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="612"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="611"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="614"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="614"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="614"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="609"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="614"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="608"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="606"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="606"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.notification_channel_switch_accessibility` appears to be unused"
-        errorLine1="    &lt;string name=&quot;notification_channel_switch_accessibility&quot;>Allow notifications from this channel&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1614"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="639"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="635"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="635"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="631"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="633"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="633"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="625"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="633"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="635"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="635"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="635"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="635"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="629"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="627"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="627"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.notification_done` appears to be unused"
-        errorLine1="    &lt;string name=&quot;notification_done&quot;>Done&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1622"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="642"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="633"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="638"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="635"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="638"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="634"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="633"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="636"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="636"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="633"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="628"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="636"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="635"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="638"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="638"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="638"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="633"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="638"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="632"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="630"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="630"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.battery_panel_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;battery_panel_title&quot;>Battery usage&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1660"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="666"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="658"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="653"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="658"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="650"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="656"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="656"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="644"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="656"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="653"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="658"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="658"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="658"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="658"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="648"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="646"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="646"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.battery_detail_charging_summary` appears to be unused"
-        errorLine1="    &lt;string name=&quot;battery_detail_charging_summary&quot;>Battery Saver not available during charging&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1663"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="667"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="652"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="659"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="654"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="659"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="652"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="657"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="657"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="652"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="645"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="657"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="654"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="659"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="659"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="659"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="652"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="659"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="647"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.battery_detail_switch_summary` appears to be unused"
-        errorLine1="    &lt;string name=&quot;battery_detail_switch_summary&quot;>Reduces performance and background data&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1669"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="669"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="654"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="661"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="656"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="661"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="653"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="654"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="659"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="659"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="654"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="647"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="659"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="656"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="661"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="661"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="661"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="654"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="661"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="651"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="649"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="649"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.keyboard_shortcut_group_applications_youtube` appears to be unused"
-        errorLine1="    &lt;string name=&quot;keyboard_shortcut_group_applications_youtube&quot;>YouTube&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1754"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="710"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="702"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="702"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="700"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="700"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="688"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="700"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="702"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="702"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="702"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="702"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="690"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.tuner_full_zen_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;tuner_full_zen_title&quot;>Show with volume controls&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1759"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="712"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="696"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="702"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="702"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="690"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="702"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="694"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="692"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="692"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.volume_up_silent` appears to be unused"
-        errorLine1="    &lt;string name=&quot;volume_up_silent&quot;>Exit do not disturb on volume up&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1769"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="715"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="700"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="707"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="702"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="707"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="700"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="705"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="705"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="700"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="693"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="705"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="702"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="707"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="707"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="707"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="700"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="707"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="695"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.clock` appears to be unused"
-        errorLine1="    &lt;string name=&quot;clock&quot;>Clock&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1775"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="717"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="702"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="709"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="709"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="701"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="702"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="707"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="707"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="702"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="695"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="707"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="709"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="709"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="709"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="702"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="709"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="699"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="697"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="697"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_data_saver_off` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_data_saver_off&quot;>Data Saver is off&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1797"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="709"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="716"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="716"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="708"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="709"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="714"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="714"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="709"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="702"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="714"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="716"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="716"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="716"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="709"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="716"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="706"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="704"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="704"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.nav_bar_default` appears to be unused"
-        errorLine1="    &lt;string name=&quot;nav_bar_default&quot;> (default)&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1819"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="731"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="716"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="723"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="718"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="723"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="715"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="716"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="721"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="721"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="716"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="709"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="721"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="718"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="723"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="723"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="723"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="716"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="723"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="713"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="711"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="711"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.menu_ime` appears to be unused"
-        errorLine1="    &lt;string name=&quot;menu_ime&quot;>Keyboard switcher&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1851"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="744"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="736"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="731"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="736"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="728"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="734"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="734"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="722"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="734"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="731"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="736"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="736"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="736"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="736"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="726"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="724"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="724"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.save` appears to be unused"
-        errorLine1="    &lt;string name=&quot;save&quot;>Save&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1853"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="745"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="730"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="737"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="732"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="737"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="730"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="735"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="735"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="730"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="723"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="735"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="732"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="737"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="737"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="737"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="730"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="737"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="725"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.adjust_button_width` appears to be unused"
-        errorLine1="    &lt;string name=&quot;adjust_button_width&quot;>Adjust button width&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1858"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="747"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="732"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="739"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="734"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="739"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="731"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="732"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="737"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="737"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="732"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="725"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="737"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="734"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="739"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="739"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="739"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="732"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="739"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="729"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="727"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="727"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.accessibility_quick_settings_alarm_set` appears to be unused"
-        errorLine1="    &lt;string name=&quot;accessibility_quick_settings_alarm_set&quot;>Alarm set.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="1985"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="798"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="783"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="790"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="785"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="790"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="782"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="779"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="779"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="779"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="779"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="779"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="780"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="780"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="780"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="780"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="780"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="780"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="780"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="783"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="780"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="788"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="780"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="780"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="788"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="783"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="776"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="788"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="780"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="780"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="785"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="790"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="790"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="790"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="783"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="790"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="780"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="780"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="778"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="778"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.pip_phone_minimize` appears to be unused"
-        errorLine1="    &lt;string name=&quot;pip_phone_minimize&quot;>Minimize&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="2024"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="807"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="799"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="799"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="791"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="788"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="788"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="788"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="788"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="788"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="789"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="789"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="789"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="789"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="789"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="789"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="789"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="789"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="797"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="789"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="789"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="797"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="785"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="797"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="789"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="789"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="799"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="799"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="799"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="799"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="789"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="789"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="787"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="787"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.pip_notification_title` appears to be unused"
-        errorLine1="    &lt;string name=&quot;pip_notification_title&quot;>&lt;xliff:g id=&quot;name&quot; example=&quot;Google Maps&quot;>%s&lt;/xliff:g> is in picture-in-picture&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="2039"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="812"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="797"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="804"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="799"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="804"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="796"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="797"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="802"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="802"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="797"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="790"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="802"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="799"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="804"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="804"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="804"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="797"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="804"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="792"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="792"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.pip_notification_message` appears to be unused"
-        errorLine1="    &lt;string name=&quot;pip_notification_message&quot;>If you don\&apos;t want &lt;xliff:g id=&quot;name&quot; example=&quot;Google Maps&quot;>%s&lt;/xliff:g> to use this feature, tap to open settings and turn it off.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="2042"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="813"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="798"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="805"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="800"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="805"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="797"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="794"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="795"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="795"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="795"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="795"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="795"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="795"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="795"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="798"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="795"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="803"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="795"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="795"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="803"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="798"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="791"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="803"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="795"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="795"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="800"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="805"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="805"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="805"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="798"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="805"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="795"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="795"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="793"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="793"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.change_theme_reboot` appears to be unused"
-        errorLine1="    &lt;string name=&quot;change_theme_reboot&quot; translatable=&quot;false&quot;>Changing the theme requires a restart.&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="2057"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.theme` appears to be unused"
-        errorLine1="    &lt;string name=&quot;theme&quot; translatable=&quot;false&quot;>Theme&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="2059"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.default_theme` appears to be unused"
-        errorLine1="    &lt;string name=&quot;default_theme&quot; translatable=&quot;false&quot;>Default&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="2061"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.qs_dnd_until` appears to be unused"
-        errorLine1="    &lt;string name=&quot;qs_dnd_until&quot;>Until &lt;xliff:g name=&quot;time&quot;>%s&lt;/xliff:g>&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="2169"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="856"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="841"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="848"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="843"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="848"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="840"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="841"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="846"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="846"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="841"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="834"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="846"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="843"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="848"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="848"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="848"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="841"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="848"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="836"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.qs_dnd_keep` appears to be unused"
-        errorLine1="    &lt;string name=&quot;qs_dnd_keep&quot;>Keep&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="2172"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="857"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="842"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="849"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="844"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="849"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="841"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="842"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="847"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="847"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="842"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="835"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="847"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="844"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="849"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="849"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="849"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="842"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="849"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="837"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="837"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.string.qs_dnd_replace` appears to be unused"
-        errorLine1="    &lt;string name=&quot;qs_dnd_replace&quot;>Replace&lt;/string>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/strings.xml"
-            line="2175"
-            column="13"/>
-        <location
-            file="res/values-af/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-am/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-ar/strings.xml"
-            line="858"
-            column="13"/>
-        <location
-            file="res/values-as/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-az/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-b+sr+Latn/strings.xml"
-            line="843"
-            column="13"/>
-        <location
-            file="res/values-be/strings.xml"
-            line="850"
-            column="13"/>
-        <location
-            file="res/values-bg/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-bn/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-bs/strings.xml"
-            line="845"
-            column="13"/>
-        <location
-            file="res/values-ca/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-cs/strings.xml"
-            line="850"
-            column="13"/>
-        <location
-            file="res/values-da/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-de/strings.xml"
-            line="842"
-            column="13"/>
-        <location
-            file="res/values-el/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-en-rAU/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-en-rCA/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-en-rGB/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-en-rIN/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="839"
-            column="13"/>
-        <location
-            file="res/values-es/strings.xml"
-            line="840"
-            column="13"/>
-        <location
-            file="res/values-es-rUS/strings.xml"
-            line="840"
-            column="13"/>
-        <location
-            file="res/values-et/strings.xml"
-            line="840"
-            column="13"/>
-        <location
-            file="res/values-eu/strings.xml"
-            line="840"
-            column="13"/>
-        <location
-            file="res/values-fa/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-fi/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-fr/strings.xml"
-            line="840"
-            column="13"/>
-        <location
-            file="res/values-fr-rCA/strings.xml"
-            line="840"
-            column="13"/>
-        <location
-            file="res/values-gl/strings.xml"
-            line="840"
-            column="13"/>
-        <location
-            file="res/values-gu/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-hi/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-hr/strings.xml"
-            line="843"
-            column="13"/>
-        <location
-            file="res/values-hu/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-hy/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-in/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-is/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-it/strings.xml"
-            line="840"
-            column="13"/>
-        <location
-            file="res/values-iw/strings.xml"
-            line="848"
-            column="13"/>
-        <location
-            file="res/values-ja/strings.xml"
-            line="840"
-            column="13"/>
-        <location
-            file="res/values-ka/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-kk/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-km/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-kn/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-ko/strings.xml"
-            line="840"
-            column="13"/>
-        <location
-            file="res/values-ky/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-lo/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-lt/strings.xml"
-            line="848"
-            column="13"/>
-        <location
-            file="res/values-lv/strings.xml"
-            line="843"
-            column="13"/>
-        <location
-            file="res/values-mk/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-ml/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-mn/strings.xml"
-            line="836"
-            column="13"/>
-        <location
-            file="res/values-mr/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-ms/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-my/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-nb/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-ne/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-nl/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-or/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-pa/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-pl/strings.xml"
-            line="848"
-            column="13"/>
-        <location
-            file="res/values-pt/strings.xml"
-            line="840"
-            column="13"/>
-        <location
-            file="res/values-pt-rBR/strings.xml"
-            line="840"
-            column="13"/>
-        <location
-            file="res/values-pt-rPT/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-ro/strings.xml"
-            line="845"
-            column="13"/>
-        <location
-            file="res/values-ru/strings.xml"
-            line="850"
-            column="13"/>
-        <location
-            file="res/values-si/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-sk/strings.xml"
-            line="850"
-            column="13"/>
-        <location
-            file="res/values-sl/strings.xml"
-            line="850"
-            column="13"/>
-        <location
-            file="res/values-sq/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-sr/strings.xml"
-            line="843"
-            column="13"/>
-        <location
-            file="res/values-sv/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-sw/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-ta/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-te/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-th/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-tl/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-tr/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-uk/strings.xml"
-            line="850"
-            column="13"/>
-        <location
-            file="res/values-ur/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-uz/strings.xml"
-            line="840"
-            column="13"/>
-        <location
-            file="res/values-vi/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-zh-rCN/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-zh-rHK/strings.xml"
-            line="840"
-            column="13"/>
-        <location
-            file="res/values-zh-rTW/strings.xml"
-            line="838"
-            column="13"/>
-        <location
-            file="res/values-zu/strings.xml"
-            line="838"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.style.SearchPanelCircle` appears to be unused"
-        errorLine1="    &lt;style name=&quot;SearchPanelCircle&quot;>"
-        errorLine2="           ~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values/styles.xml"
-            line="369"
-            column="12"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.sun2` appears to be unused"
-        errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/sun2.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.system_in` appears to be unused"
-        errorLine1="&lt;set xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/anim/system_in.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.anim.system_out` appears to be unused"
-        errorLine1="&lt;set xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/anim/system_out.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.layout.tuner_zen_mode_panel` appears to be unused"
-        errorLine1="&lt;com.android.systemui.tuner.TunerZenModePanel"
-        errorLine2="^">
-        <location
-            file="res/layout/tuner_zen_mode_panel.xml"
-            line="18"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.tv_pip_outline` appears to be unused"
-        errorLine1="&lt;shape xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/drawable/tv_pip_outline.xml"
-            line="17"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UnusedResources"
-        message="The resource `R.drawable.volume_dialog_background` appears to be unused"
-        errorLine1="&lt;shape xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot; >"
-        errorLine2="^">
-        <location
-            file="res/drawable/volume_dialog_background.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="UselessParent"
-        message="This `FrameLayout` layout or its `FrameLayout` parent is useless; transfer the `background` attribute to the other view"
-        errorLine1="    &lt;FrameLayout"
-        errorLine2="    ^">
-        <location
-            file="res/layout/brightness_mirror.xml"
-            line="24"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="UselessParent"
-        message="This `FrameLayout` layout or its `FrameLayout` parent is possibly useless"
-        errorLine1="    &lt;FrameLayout"
-        errorLine2="    ^">
-        <location
-            file="res/layout-sw600dp/navigation_layout_rot90.xml"
-            line="22"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="UnusedNamespace"
-        message="Unused namespace `systemui`"
-        errorLine1="    xmlns:systemui=&quot;http://schemas.android.com/apk/res/com.android.systemui&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/keyguard_bottom_area.xml"
-            line="20"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="UnusedNamespace"
-        message="Unused namespace `systemui`"
-        errorLine1="    xmlns:systemui=&quot;http://schemas.android.com/apk/res/com.android.systemui&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/status_bar.xml"
-            line="23"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="TypographyEllipsis"
-        message="Replace &quot;...&quot; with ellipsis character (…, &amp;#8230;) ?"
-        errorLine1="    &lt;string name=&quot;quick_settings_connecting&quot;>Connecting...&lt;/string>"
-        errorLine2="                                             ^">
-        <location
-            file="res/values/strings.xml"
-            line="775"
-            column="46"/>
-    </issue>
-
-    <issue
-        id="TypographyQuotes"
-        message="Replace straight quotes (&quot;) with directional quotes (“”, &amp;#8220; and &amp;#8221;) ?"
-        errorLine1="    &lt;string name=&quot;pip_close&quot; msgid=&quot;3480680679023423574&quot;>&quot;\&quot;Кадр в кадре\&quot; – выйти&quot;&lt;/string>"
-        errorLine2="                                                         ^">
-        <location
-            file="res/values-ru/strings_tv.xml"
-            line="24"
-            column="58"/>
-    </issue>
-
-    <issue
-        id="IconDipSize"
-        message="The image `ic_sysbar_lights_out_dot_large.png` varies significantly in its density-independent (dip) size across the various density versions: drawable-mdpi/ic_sysbar_lights_out_dot_large.png: 10x9 dp (10x9 px), drawable-xhdpi/ic_sysbar_lights_out_dot_large.png: 8x6 dp (15x11 px), drawable-hdpi/ic_sysbar_lights_out_dot_large.png: 6x8 dp (9x12 px), drawable-xxhdpi/ic_sysbar_lights_out_dot_large.png: 5x5 dp (15x16 px)">
-        <location
-            file="res/drawable-xxhdpi/ic_sysbar_lights_out_dot_large.png"/>
-        <location
-            file="res/drawable-hdpi/ic_sysbar_lights_out_dot_large.png"/>
-        <location
-            file="res/drawable-xhdpi/ic_sysbar_lights_out_dot_large.png"/>
-        <location
-            file="res/drawable-mdpi/ic_sysbar_lights_out_dot_large.png"/>
-    </issue>
-
-    <issue
-        id="IconDipSize"
-        message="The image `ic_sysbar_lights_out_dot_large.png` varies significantly in its density-independent (dip) size across the various density versions: drawable-sw600dp-mdpi/ic_sysbar_lights_out_dot_large.png: 11x8 dp (11x8 px), drawable-sw600dp-xhdpi/ic_sysbar_lights_out_dot_large.png: 9x8 dp (18x15 px), drawable-sw600dp-hdpi/ic_sysbar_lights_out_dot_large.png: 7x8 dp (11x12 px), drawable-sw600dp-xxhdpi/ic_sysbar_lights_out_dot_large.png: 6x7 dp (19x21 px)">
-        <location
-            file="res/drawable-sw600dp-xxhdpi/ic_sysbar_lights_out_dot_large.png"/>
-        <location
-            file="res/drawable-sw600dp-hdpi/ic_sysbar_lights_out_dot_large.png"/>
-        <location
-            file="res/drawable-sw600dp-xhdpi/ic_sysbar_lights_out_dot_large.png"/>
-        <location
-            file="res/drawable-sw600dp-mdpi/ic_sysbar_lights_out_dot_large.png"/>
-    </issue>
-
-    <issue
-        id="IconDipSize"
-        message="The image `ic_sysbar_lights_out_dot_small.png` varies significantly in its density-independent (dip) size across the various density versions: drawable-mdpi/ic_sysbar_lights_out_dot_small.png: 8x9 dp (8x9 px), drawable-xhdpi/ic_sysbar_lights_out_dot_small.png: 6x7 dp (11x13 px), drawable-hdpi/ic_sysbar_lights_out_dot_small.png: 5x4 dp (7x6 px), drawable-xxhdpi/ic_sysbar_lights_out_dot_small.png: 4x4 dp (13x12 px)">
-        <location
-            file="res/drawable-xxhdpi/ic_sysbar_lights_out_dot_small.png"/>
-        <location
-            file="res/drawable-hdpi/ic_sysbar_lights_out_dot_small.png"/>
-        <location
-            file="res/drawable-xhdpi/ic_sysbar_lights_out_dot_small.png"/>
-        <location
-            file="res/drawable-mdpi/ic_sysbar_lights_out_dot_small.png"/>
-    </issue>
-
-    <issue
-        id="IconDensities"
-        message="Missing the following drawables in `drawable-hdpi`: recents_task_shadow.9.png, remote.png">
-        <location
-            file="res/drawable-hdpi"/>
-    </issue>
-
-    <issue
-        id="IconDensities"
-        message="Missing the following drawables in `drawable-mdpi`: recents_task_shadow.9.png, remote.png">
-        <location
-            file="res/drawable-mdpi"/>
-    </issue>
-
-    <issue
-        id="IconDensities"
-        message="Missing the following drawables in `drawable-xhdpi`: recents_task_shadow.9.png (found in drawable-xxhdpi)">
-        <location
-            file="res/drawable-xhdpi"/>
-    </issue>
-
-    <issue
-        id="IconDensities"
-        message="Missing the following drawables in `drawable-xxhdpi`: ic_cancel_white_24dp.png, ic_dismiss_outline.png, remote.png">
-        <location
-            file="res/drawable-xxhdpi"/>
-    </issue>
-
-    <issue
-        id="IconDensities"
-        message="Missing the following drawables in `drawable-xxxhdpi`: ic_cancel_white_24dp.png, ic_dismiss_outline.png, ic_notification_overlay.9.png, ic_qs_brightness_auto_off_alpha.png, ic_qs_brightness_auto_on_alpha.png... (10 more)">
-        <location
-            file="res/drawable-xxxhdpi"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/app_ops_info.xml"
-            line="39"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/assist_orb.xml"
-            line="38"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView android:id=&quot;@+id/user_avatar&quot;"
-        errorLine2="    ^">
-        <location
-            file="res/layout/car_fullscreen_user_pod.xml"
-            line="28"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/car_qs_footer.xml"
-            line="41"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/car_qs_footer.xml"
-            line="49"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/connected_device_signal.xml"
-            line="33"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/global_actions_item.xml"
-            line="31"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView android:id=&quot;@+id/global_screenshot_background&quot;"
-        errorLine2="    ^">
-        <location
-            file="res/layout/global_screenshot.xml"
-            line="19"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView android:id=&quot;@+id/global_screenshot&quot;"
-        errorLine2="    ^">
-        <location
-            file="res/layout/global_screenshot.xml"
-            line="24"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView android:id=&quot;@+id/global_screenshot_flash&quot;"
-        errorLine2="    ^">
-        <location
-            file="res/layout/global_screenshot.xml"
-            line="31"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/keyboard_shortcut_app_item.xml"
-            line="26"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="&lt;ImageView xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/layout/keyboard_shortcuts_key_icon_view.xml"
-            line="18"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="            &lt;ImageView android:id=&quot;@+id/multi_user_avatar&quot;"
-        errorLine2="            ^">
-        <location
-            file="res/layout/keyguard_status_bar.xml"
-            line="50"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="            &lt;ImageView"
-        errorLine2="            ^">
-        <location
-            file="res/layout/mland.xml"
-            line="45"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageButton"
-        errorLine2="        ^">
-        <location
-            file="res/layout/mland.xml"
-            line="73"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageButton"
-        errorLine2="        ^">
-        <location
-            file="res/layout/mland.xml"
-            line="92"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/mobile_signal_group.xml"
-            line="31"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/mobile_signal_group.xml"
-            line="39"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/mobile_signal_group.xml"
-            line="48"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/nav_control_widget.xml"
-            line="28"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/nav_control_widget.xml"
-            line="41"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/nav_control_widget.xml"
-            line="54"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="&lt;ImageView xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
-        errorLine2="^">
-        <location
-            file="res/layout/navigation_bar_app_item.xml"
-            line="21"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/notification_info.xml"
-            line="38"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/notification_snooze.xml"
-            line="42"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="&lt;ImageView"
-        errorLine2="^">
-        <location
-            file="res/layout/pip_menu_action.xml"
-            line="16"
-            column="1"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/preference_widget_settings.xml"
-            line="36"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/qs_detail_header.xml"
-            line="47"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/qs_detail_item.xml"
-            line="27"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/qs_detail_items.xml"
-            line="42"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="                &lt;ImageView"
-        errorLine2="                ^">
-        <location
-            file="res/layout/qs_footer_impl.xml"
-            line="93"
-            column="17"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView android:id=&quot;@+id/restricted_padlock&quot;"
-        errorLine2="        ^">
-        <location
-            file="res/layout/qs_tile_label.xml"
-            line="50"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/qs_tile_label.xml"
-            line="59"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/qs_user_detail_item.xml"
-            line="58"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/quick_settings_header_info.xml"
-            line="43"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/quick_settings_header_info.xml"
-            line="69"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/recents.xml"
-            line="37"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/recents_task_view_lock_to_app.xml"
-            line="29"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/rounded_corners.xml"
-            line="21"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/rounded_corners.xml"
-            line="28"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons.xml"
-            line="48"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons.xml"
-            line="55"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons.xml"
-            line="65"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons.xml"
-            line="91"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons.xml"
-            line="98"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons.xml"
-            line="108"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons.xml"
-            line="134"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons.xml"
-            line="141"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons.xml"
-            line="151"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="44"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="51"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="61"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="84"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="91"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="101"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="125"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="132"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="142"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="44"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="52"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="63"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="87"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="95"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="106"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="130"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="138"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="149"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView android:id=&quot;@+id/shelf_menu_anchor_anchor&quot;"
-        errorLine2="    ^">
-        <location
-            file="res/layout/shelf_menu_anchor.xml"
-            line="20"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/signal_cluster_view.xml"
-            line="60"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/signal_cluster_view.xml"
-            line="68"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/signal_cluster_view.xml"
-            line="95"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/signal_cluster_view.xml"
-            line="124"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/status_bar.xml"
-            line="34"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="            &lt;ImageView"
-        errorLine2="            ^">
-        <location
-            file="res/layout/status_bar_mobile_signal_group.xml"
-            line="39"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="            &lt;ImageView"
-        errorLine2="            ^">
-        <location
-            file="res/layout/status_bar_mobile_signal_group.xml"
-            line="47"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/status_bar_mobile_signal_group.xml"
-            line="56"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="            &lt;ImageView"
-        errorLine2="            ^">
-        <location
-            file="res/layout/status_bar_wifi_group.xml"
-            line="39"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="            &lt;ImageView"
-        errorLine2="            ^">
-        <location
-            file="res/layout/status_bar_wifi_group.xml"
-            line="47"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView android:id=&quot;@+id/backdrop_back&quot;"
-        errorLine2="        ^">
-        <location
-            file="res/layout/super_status_bar.xml"
-            line="35"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView android:id=&quot;@+id/backdrop_front&quot;"
-        errorLine2="        ^">
-        <location
-            file="res/layout/super_status_bar.xml"
-            line="39"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/tuner_shortcut_item.xml"
-            line="26"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/tuner_widget_settings_switch.xml"
-            line="24"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView android:id=&quot;@+id/button&quot;"
-        errorLine2="    ^">
-        <location
-            file="res/layout/tv_pip_control_button.xml"
-            line="23"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="    &lt;ImageView"
-        errorLine2="    ^">
-        <location
-            file="res/layout/wireless_charging_layout.xml"
-            line="26"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="ContentDescription"
-        message="[Accessibility] Missing `contentDescription` attribute on image"
-        errorLine1="        &lt;ImageView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/zen_mode_panel.xml"
-            line="136"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="RelativeOverlap"
-        message="`@id/group_name` can overlap `@id/info` if @id/group_name grows due to localized text expansion"
-        errorLine1="        &lt;TextView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/notification_info.xml"
-            line="64"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="RelativeOverlap"
-        message="`@id/undo` can overlap `@id/expand_button` if @string/snooze_undo grows due to localized text expansion"
-        errorLine1="        &lt;TextView"
-        errorLine2="        ^">
-        <location
-            file="res/layout/notification_snooze.xml"
-            line="51"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="RtlCompat"
-        message="Inconsistent alignment specification between `textAlignment` and `gravity` attributes: was `fill_horizontal|center_vertical`, expected `start`"
-        errorLine1="        android:textAlignment=&quot;viewStart&quot; />"
-        errorLine2="                               ~~~~~~~~~">
-        <location
-            file="res/layout/foreground_service_item.xml"
-            line="46"
-            column="32"/>
-        <location
-            file="res/layout/foreground_service_item.xml"
-            line="42"
-            column="33"/>
-    </issue>
-
-    <issue
-        id="RtlCompat"
-        message="Inconsistent alignment specification between `textAlignment` and `gravity` attributes: was `center_vertical`, expected `start`"
-        errorLine1="        android:textAlignment=&quot;viewStart&quot;"
-        errorLine2="                               ~~~~~~~~~">
-        <location
-            file="res/layout/heads_up_status_bar_layout.xml"
-            line="42"
-            column="32"/>
-        <location
-            file="res/layout/heads_up_status_bar_layout.xml"
-            line="45"
-            column="33"/>
-    </issue>
-
-    <issue
-        id="RtlCompat"
-        message="Inconsistent alignment specification between `textAlignment` and `gravity` attributes: was `center_vertical`, expected `start`"
-        errorLine1="        android:textAlignment=&quot;viewStart&quot;"
-        errorLine2="                               ~~~~~~~~~">
-        <location
-            file="res/layout/switch_bar.xml"
-            line="38"
-            column="32"/>
-        <location
-            file="res/layout/switch_bar.xml"
-            line="32"
-            column="33"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingStart` you should probably also define `paddingEnd` for right-to-left symmetry"
-        errorLine1="        android:paddingStart=&quot;@dimen/battery_level_padding_start&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/battery_percentage_view.xml"
-            line="28"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
-        errorLine1="        android:paddingLeft=&quot;30dp&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_navigation_bar.xml"
-            line="33"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
-        errorLine1="        android:paddingLeft=&quot;30dp&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_navigation_bar_unprovisioned.xml"
-            line="33"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingStart` you should probably also define `paddingEnd` for right-to-left symmetry"
-        errorLine1="        android:paddingStart=&quot;6dp&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/heads_up_status_bar_layout.xml"
-            line="43"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry"
-        errorLine1="    android:paddingEnd=&quot;@dimen/group_overflow_number_padding&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/hybrid_overflow_number.xml"
-            line="23"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry"
-        errorLine1="            android:paddingEnd=&quot;12dp&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/keyboard_shortcut_app_item.xml"
-            line="40"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry"
-        errorLine1="            android:paddingEnd=&quot;@dimen/system_icons_keyguard_padding_end&quot; >"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/keyguard_status_bar.xml"
-            line="41"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry"
-        errorLine1="            android:paddingEnd=&quot;2dp&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/mobile_signal_group.xml"
-            line="37"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry"
-        errorLine1="            android:paddingEnd=&quot;2dp&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/mobile_signal_group.xml"
-            line="44"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry"
-        errorLine1="    android:paddingEnd=&quot;8dp&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/qs_detail_buttons.xml"
-            line="20"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingStart` you should probably also define `paddingEnd` for right-to-left symmetry"
-        errorLine1="            android:paddingStart=&quot;@dimen/qs_detail_header_text_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/qs_detail_header.xml"
-            line="40"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingStart` you should probably also define `paddingEnd` for right-to-left symmetry"
-        errorLine1="            android:paddingStart=&quot;16dp&quot;>"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/qs_footer_impl.xml"
-            line="49"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
-        errorLine1="            android:paddingLeft=&quot;@dimen/screen_pinning_request_inner_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="56"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
-        errorLine1="            android:paddingLeft=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="65"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
-        errorLine1="            android:paddingLeft=&quot;@dimen/screen_pinning_request_inner_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="96"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
-        errorLine1="            android:paddingLeft=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="106"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
-        errorLine1="            android:paddingLeft=&quot;@dimen/screen_pinning_request_inner_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="137"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
-        errorLine1="            android:paddingLeft=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="147"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingRight` you should probably also define `paddingLeft` for right-to-left symmetry"
-        errorLine1="            android:paddingRight=&quot;@dimen/screen_pinning_request_inner_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="58"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingRight` you should probably also define `paddingLeft` for right-to-left symmetry"
-        errorLine1="            android:paddingRight=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="68"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingRight` you should probably also define `paddingLeft` for right-to-left symmetry"
-        errorLine1="            android:paddingRight=&quot;@dimen/screen_pinning_request_inner_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="101"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingRight` you should probably also define `paddingLeft` for right-to-left symmetry"
-        errorLine1="            android:paddingRight=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="111"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingRight` you should probably also define `paddingLeft` for right-to-left symmetry"
-        errorLine1="            android:paddingRight=&quot;@dimen/screen_pinning_request_inner_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="144"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingRight` you should probably also define `paddingLeft` for right-to-left symmetry"
-        errorLine1="            android:paddingRight=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="153"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry"
-        errorLine1="    android:paddingEnd=&quot;@dimen/signal_cluster_battery_padding&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/signal_cluster_view.xml"
-            line="27"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry"
-        errorLine1="        android:paddingEnd=&quot;6dp&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/signal_cluster_view.xml"
-            line="33"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry"
-        errorLine1="            android:paddingEnd=&quot;2dp&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/signal_cluster_view.xml"
-            line="66"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry"
-        errorLine1="            android:paddingEnd=&quot;2dp&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/signal_cluster_view.xml"
-            line="73"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingStart` you should probably also define `paddingEnd` for right-to-left symmetry"
-        errorLine1="        android:paddingStart=&quot;8dp&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/slice_permission_request.xml"
-            line="31"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingStart` you should probably also define `paddingEnd` for right-to-left symmetry"
-        errorLine1="        android:paddingStart=&quot;8dp&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/slice_permission_request.xml"
-            line="39"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingStart` you should probably also define `paddingEnd` for right-to-left symmetry"
-        errorLine1="        android:paddingStart=&quot;@dimen/status_bar_padding_start&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/status_bar.xml"
-            line="38"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry"
-        errorLine1="                android:paddingEnd=&quot;2dp&quot;"
-        errorLine2="                ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/status_bar_mobile_signal_group.xml"
-            line="45"
-            column="17"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry"
-        errorLine1="                android:paddingEnd=&quot;2dp&quot;"
-        errorLine2="                ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/status_bar_mobile_signal_group.xml"
-            line="52"
-            column="17"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry"
-        errorLine1="                android:paddingEnd=&quot;2dp&quot;"
-        errorLine2="                ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/status_bar_wifi_group.xml"
-            line="45"
-            column="17"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry"
-        errorLine1="                android:paddingEnd=&quot;2dp&quot;"
-        errorLine2="                ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/status_bar_wifi_group.xml"
-            line="52"
-            column="17"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingStart` you should probably also define `paddingEnd` for right-to-left symmetry"
-        errorLine1="        android:paddingStart=&quot;48dp&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/switch_bar.xml"
-            line="33"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="RtlSymmetry"
-        message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry"
-        errorLine1="        android:paddingEnd=&quot;@dimen/signal_cluster_battery_padding&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/system_icons.xml"
-            line="27"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Use &quot;`start`&quot; instead of &quot;`left`&quot; to ensure correct behavior in right-to-left locales"
-        errorLine1="        android:gravity=&quot;left&quot;"
-        errorLine2="                         ~~~~">
-        <location
-            file="res/layout/car_navigation_bar.xml"
-            line="32"
-            column="26"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:paddingLeft` with `android:paddingStart=&quot;30dp&quot;` to better support right-to-left layouts"
-        errorLine1="        android:paddingLeft=&quot;30dp&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_navigation_bar.xml"
-            line="33"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Use &quot;`end`&quot; instead of &quot;`right`&quot; to ensure correct behavior in right-to-left locales"
-        errorLine1="        android:gravity=&quot;right&quot;"
-        errorLine2="                         ~~~~~">
-        <location
-            file="res/layout/car_navigation_bar.xml"
-            line="65"
-            column="26"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Redundant attribute `paddingRight`; already defining `paddingEnd` with `targetSdkVersion` 28"
-        errorLine1="            android:paddingRight=&quot;20dp&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_navigation_bar.xml"
-            line="88"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Use &quot;`start`&quot; instead of &quot;`left`&quot; to ensure correct behavior in right-to-left locales"
-        errorLine1="        android:gravity=&quot;left&quot;"
-        errorLine2="                         ~~~~">
-        <location
-            file="res/layout/car_navigation_bar_unprovisioned.xml"
-            line="32"
-            column="26"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:paddingLeft` with `android:paddingStart=&quot;30dp&quot;` to better support right-to-left layouts"
-        errorLine1="        android:paddingLeft=&quot;30dp&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/car_navigation_bar_unprovisioned.xml"
-            line="33"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Use &quot;`end`&quot; instead of &quot;`right`&quot; to ensure correct behavior in right-to-left locales"
-        errorLine1="    android:layout_gravity=&quot;top|right&quot;"
-        errorLine2="                            ~~~~~~~~~">
-        <location
-            file="res/layout/global_actions_wrapped.xml"
-            line="6"
-            column="29"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Use &quot;`end`&quot; instead of &quot;`right`&quot; to ensure correct behavior in right-to-left locales"
-        errorLine1="        android:layout_gravity=&quot;top|right&quot;"
-        errorLine2="                                ~~~~~~~~~">
-        <location
-            file="res/layout/global_actions_wrapped.xml"
-            line="19"
-            column="33"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Use &quot;`end`&quot; instead of &quot;`right`&quot; to ensure correct behavior in right-to-left locales"
-        errorLine1="        android:layout_gravity=&quot;top|right&quot;"
-        errorLine2="                                ~~~~~~~~~">
-        <location
-            file="res/layout/global_actions_wrapped.xml"
-            line="30"
-            column="33"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:paddingLeft` with `android:paddingStart=&quot;@dimen/qs_detail_header_padding&quot;` to better support right-to-left layouts"
-        errorLine1="    android:paddingLeft=&quot;@dimen/qs_detail_header_padding&quot;"
-        errorLine2="    ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/qs_detail_header.xml"
-            line="21"
-            column="5"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:layout_marginLeft` with `android:layout_marginStart=&quot;@dimen/restricted_padlock_pading&quot;` to better support right-to-left layouts"
-        errorLine1="            android:layout_marginLeft=&quot;@dimen/restricted_padlock_pading&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/qs_tile_label.xml"
-            line="55"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:layout_marginLeft` with `android:layout_marginStart=&quot;@dimen/restricted_padlock_pading&quot;` to better support right-to-left layouts"
-        errorLine1="                android:layout_marginLeft=&quot;@dimen/restricted_padlock_pading&quot;"
-        errorLine2="                ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/qs_user_detail_item.xml"
-            line="64"
-            column="17"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Use &quot;`start`&quot; instead of &quot;`left`&quot; to ensure correct behavior in right-to-left locales"
-        errorLine1="        android:layout_gravity=&quot;left|top&quot;"
-        errorLine2="                                ~~~~~~~~">
-        <location
-            file="res/layout/rounded_corners.xml"
-            line="25"
-            column="33"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Use &quot;`end`&quot; instead of &quot;`right`&quot; to ensure correct behavior in right-to-left locales"
-        errorLine1="        android:layout_gravity=&quot;right|bottom&quot;"
-        errorLine2="                                ~~~~~~~~~~~~">
-        <location
-            file="res/layout/rounded_corners.xml"
-            line="33"
-            column="33"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:paddingLeft` with `android:paddingStart=&quot;@dimen/screen_pinning_request_inner_padding&quot;` to better support right-to-left layouts"
-        errorLine1="            android:paddingLeft=&quot;@dimen/screen_pinning_request_inner_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="56"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:paddingLeft` with `android:paddingStart=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;` to better support right-to-left layouts"
-        errorLine1="            android:paddingLeft=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="65"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:paddingLeft` with `android:paddingStart=&quot;@dimen/screen_pinning_request_inner_padding&quot;` to better support right-to-left layouts"
-        errorLine1="            android:paddingLeft=&quot;@dimen/screen_pinning_request_inner_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="96"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:paddingLeft` with `android:paddingStart=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;` to better support right-to-left layouts"
-        errorLine1="            android:paddingLeft=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="106"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:paddingLeft` with `android:paddingStart=&quot;@dimen/screen_pinning_request_inner_padding&quot;` to better support right-to-left layouts"
-        errorLine1="            android:paddingLeft=&quot;@dimen/screen_pinning_request_inner_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="137"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:paddingLeft` with `android:paddingStart=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;` to better support right-to-left layouts"
-        errorLine1="            android:paddingLeft=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_land.xml"
-            line="147"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:layout_marginLeft` with `android:layout_marginStart=&quot;@dimen/screen_pinning_request_seascape_padding_negative&quot;` to better support right-to-left layouts"
-        errorLine1="            android:layout_marginLeft=&quot;@dimen/screen_pinning_request_seascape_padding_negative&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="49"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:layout_marginLeft` with `android:layout_marginStart=&quot;@dimen/screen_pinning_request_seascape_button_offset&quot;` to better support right-to-left layouts"
-        errorLine1="            android:layout_marginLeft=&quot;@dimen/screen_pinning_request_seascape_button_offset&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="57"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:paddingRight` with `android:paddingEnd=&quot;@dimen/screen_pinning_request_inner_padding&quot;` to better support right-to-left layouts"
-        errorLine1="            android:paddingRight=&quot;@dimen/screen_pinning_request_inner_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="58"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:paddingRight` with `android:paddingEnd=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;` to better support right-to-left layouts"
-        errorLine1="            android:paddingRight=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="68"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:layout_marginLeft` with `android:layout_marginStart=&quot;@dimen/screen_pinning_request_seascape_padding_negative&quot;` to better support right-to-left layouts"
-        errorLine1="            android:layout_marginLeft=&quot;@dimen/screen_pinning_request_seascape_padding_negative&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="92"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:layout_marginLeft` with `android:layout_marginStart=&quot;@dimen/screen_pinning_request_seascape_button_offset&quot;` to better support right-to-left layouts"
-        errorLine1="            android:layout_marginLeft=&quot;@dimen/screen_pinning_request_seascape_button_offset&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="100"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:paddingRight` with `android:paddingEnd=&quot;@dimen/screen_pinning_request_inner_padding&quot;` to better support right-to-left layouts"
-        errorLine1="            android:paddingRight=&quot;@dimen/screen_pinning_request_inner_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="101"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:paddingRight` with `android:paddingEnd=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;` to better support right-to-left layouts"
-        errorLine1="            android:paddingRight=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="111"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:layout_marginLeft` with `android:layout_marginStart=&quot;@dimen/screen_pinning_request_seascape_padding_negative&quot;` to better support right-to-left layouts"
-        errorLine1="            android:layout_marginLeft=&quot;@dimen/screen_pinning_request_seascape_padding_negative&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="135"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:layout_marginLeft` with `android:layout_marginStart=&quot;@dimen/screen_pinning_request_seascape_button_offset&quot;` to better support right-to-left layouts"
-        errorLine1="            android:layout_marginLeft=&quot;@dimen/screen_pinning_request_seascape_button_offset&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="143"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:paddingRight` with `android:paddingEnd=&quot;@dimen/screen_pinning_request_inner_padding&quot;` to better support right-to-left layouts"
-        errorLine1="            android:paddingRight=&quot;@dimen/screen_pinning_request_inner_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="144"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:paddingRight` with `android:paddingEnd=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;` to better support right-to-left layouts"
-        errorLine1="            android:paddingRight=&quot;@dimen/screen_pinning_request_nav_icon_padding&quot;"
-        errorLine2="            ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_buttons_sea.xml"
-            line="153"
-            column="13"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Use &quot;`end`&quot; instead of &quot;`right`&quot; to ensure correct behavior in right-to-left locales"
-        errorLine1="    android:gravity=&quot;right|center_vertical&quot;"
-        errorLine2="                     ~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_land_phone.xml"
-            line="22"
-            column="22"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Use &quot;`start`&quot; instead of &quot;`left`&quot; to ensure correct behavior in right-to-left locales"
-        errorLine1="    android:gravity=&quot;left|center_vertical&quot;"
-        errorLine2="                     ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/screen_pinning_request_sea_phone.xml"
-            line="22"
-            column="22"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Use &quot;`end`&quot; instead of &quot;`right`&quot; to ensure correct behavior in right-to-left locales"
-        errorLine1="        android:layout_gravity=&quot;center_vertical|right&quot;"
-        errorLine2="                                ~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/volume_dialog.xml"
-            line="28"
-            column="33"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:paddingRight` with `android:paddingEnd=&quot;@dimen/volume_dialog_panel_transparent_padding_right&quot;` to better support right-to-left layouts"
-        errorLine1="        android:paddingRight=&quot;@dimen/volume_dialog_panel_transparent_padding_right&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/volume_dialog.xml"
-            line="30"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:paddingLeft` with `android:paddingStart=&quot;@dimen/volume_dialog_panel_transparent_padding&quot;` to better support right-to-left layouts"
-        errorLine1="        android:paddingLeft=&quot;@dimen/volume_dialog_panel_transparent_padding&quot;"
-        errorLine2="        ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/volume_dialog.xml"
-            line="33"
-            column="9"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Use &quot;`end`&quot; instead of &quot;`right`&quot; to ensure correct behavior in right-to-left locales"
-        errorLine1="            android:layout_gravity=&quot;right&quot;"
-        errorLine2="                                    ~~~~~">
-        <location
-            file="res/layout/volume_dialog.xml"
-            line="43"
-            column="37"/>
-    </issue>
-
-    <issue
-        id="RtlHardcoded"
-        message="Consider replacing `android:layout_marginRight` with `android:layout_marginEnd=&quot;@dimen/volume_dialog_stream_padding&quot;` to better support right-to-left layouts"
-        errorLine1="                     android:layout_marginRight=&quot;@dimen/volume_dialog_stream_padding&quot;"
-        errorLine2="                     ~~~~~~~~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/layout/volume_dialog.xml"
-            line="59"
-            column="22"/>
-    </issue>
-
-</issues>
diff --git a/packages/SystemUI/tools/lint/lint.xml b/packages/SystemUI/tools/lint/lint.xml
deleted file mode 100644
index 76773e8..0000000
--- a/packages/SystemUI/tools/lint/lint.xml
+++ /dev/null
@@ -1,77 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<lint>
-
-    <!-- Translations are done in separate CLs from source changes, so typically it's not actionable
-         by CL authors -->
-    <issue id="MissingTranslation" severity="ignore" />
-    <issue id="ExtraTranslation" severity="ignore" />
-
-    <!-- SystemUI is a priviledged app -->
-    <issue id="ProtectedPermissions" severity="ignore" />
-
-    <!-- SystemUI doesn't have launcher presence -->
-    <issue id="MissingApplicationIcon" severity="ignore" />
-
-    <!-- Make system inserts these attributes -->
-    <issue id="UsesMinSdkAttributes" severity="ignore" />
-    <issue id="MissingVersion" severity="ignore" />
-
-    <!-- Translation import automatically generates all of them -->
-    <issue id="UnusedQuantity" severity="ignore" />
-    <!-- This lint check misses the format used in TextUtils.expandTemplate (^1),
-         so it's not very useful (b/37128132) -->
-    <issue id="ImpliedQuantity" severity="ignore" />
-    <!-- SystemUI's SDK version is always latest so these are not relevant -->
-    <issue id="UnusedAttribute" severity="ignore" />
-    <issue id="NewApi" severity="ignore" />
-
-    <!-- We don't care about WebP for now (having a lint for optiPNG will be great though) -->
-    <issue id="ConvertToWebp" severity="ignore" />
-
-    <!-- b/37129369: MissingRegistered doesn't take libraries into account -->
-    <issue id="MissingRegistered" severity="ignore" />
-
-
-    <!-- We don't care about app indexing -->
-    <issue id="GoogleAppIndexingWarning" severity="ignore" />
-    <issue id="GoogleAppIndexingUrlError" severity="ignore" />
-
-    <!-- Issues under out/ typically comes from libraries -->
-    <issue id="ClickableViewAccessibility" severity="error">
-        <ignore regexp=".*/out/soong/.intermediates/frameworks/base/packages/SystemUI/SystemUI-core/android_common/combined/.*" />
-    </issue>
-
-    <!-- Turn on stop ship check -->
-    <issue id="StopShip" severity="warning" />
-
-
-    <issue id="UnusedResources" severity="error">
-        <!-- Nested script references are not picked up by lint -->
-        <ignore regexp="res/xml/wizard_script.*\.xml" />
-        <!-- Ignore translation files -->
-        <ignore regexp="res/values(-[a-zA-Z0-9]+)*-(\w\w|b+[a-zA-Z0-9+]+)(-[a-zA-Z0-9]+)*/strings.xml" />
-        <!-- Ignore translations arrays that are no longer used-->
-        <ignore regexp="res/values(-[a-zA-Z0-9]+)*-(\w\w|b+[a-zA-Z0-9+]+)(-[a-zA-Z0-9]+)*/arrays.xml" />
-    </issue>
-
-    <!-- Ignore translations when linting strings -->
-    <issue id="TypographyQuotes" severity="error">
-        <ignore regexp="res/values(-[a-zA-Z0-9]+)*-(\w\w|b+[a-zA-Z0-9+]+)(-[a-zA-Z0-9]+)*/strings.xml" />
-        <ignore regexp="res/values(-[a-zA-Z0-9]+)*-(\w\w|b+[a-zA-Z0-9+]+)(-[a-zA-Z0-9]+)*/arrays.xml" />
-    </issue>
-    <issue id="TypographyEllipsis" severity="error">
-        <ignore regexp="res/values(-[a-zA-Z0-9]+)*-(\w\w|b+[a-zA-Z0-9+]+)(-[a-zA-Z0-9]+)*/strings.xml" />
-        <ignore regexp="res/values(-[a-zA-Z0-9]+)*-(\w\w|b+[a-zA-Z0-9+]+)(-[a-zA-Z0-9]+)*/arrays.xml" />
-    </issue>
-    <issue id="TypographyDashes" severity="error">
-        <ignore regexp="res/values(-[a-zA-Z0-9]+)*-(\w\w|b+[a-zA-Z0-9+]+)(-[a-zA-Z0-9]+)*/strings.xml" />
-        <ignore regexp="res/values(-[a-zA-Z0-9]+)*-(\w\w|b+[a-zA-Z0-9+]+)(-[a-zA-Z0-9]+)*/arrays.xml" />
-    </issue>
-
-    <issue id="Wakelock" severity="error">
-        <ignore regexp=".*/out/soong/.intermediates/frameworks/base/packages/SystemUI/SystemUI-core/android_common/classes/android/support" />
-    </issue>
-
-    <issue id="InconsistentArrays" severity="ignore" />
-    <issue id="StringFormatCount" severity="ignore" />
-</lint>
diff --git a/packages/SystemUI/tools/lint/run_lint.sh b/packages/SystemUI/tools/lint/run_lint.sh
deleted file mode 100755
index 10d9e83..0000000
--- a/packages/SystemUI/tools/lint/run_lint.sh
+++ /dev/null
@@ -1,59 +0,0 @@
-#! /bin/bash
-
-if [[ $# -ne 2 ]]; then
-    echo "Error: Incorrect number of arguments" >&2
-    echo "Usage: ./run_lint.sh <repo_root> <CL_SHA>" >&2
-    exit 100
-fi
-
-git show --name-only --pretty=format: $2 | grep packages/SystemUI/ > /dev/null
-exitcode=$?
-if [[ exitcode -eq 1 ]];  then
-    exit 0
-fi
-
-if [[ -z $ANDROID_BUILD_TOP ]]; then
-    echo "Error: ANDROID_BUILD_TOP must be set" >&2
-    echo "Try setting up your environment first:" >&2
-    echo "    source build/envsetup.sh && lunch <target>" >&2
-    exit 101
-fi
-
-# TODO: Run lint as part of the build so we can specify the dependency properly
-systemuijarpath="out/soong/.intermediates/frameworks/base/packages/SystemUI/SystemUI-core/android_common/combined/SystemUI-core.jar"
-if [[ ! -f $ANDROID_BUILD_TOP/$systemuijarpath ]]; then
-    echo "Error: Classes.jar file not found" >&2
-    echo "Try building that jar file manually:" >&2
-    echo "    m -j16 out/soong/.intermediates/frameworks/base/packages/SystemUI/SystemUI-core/android_common/combined/SystemUI-core.jar" >&2
-    exit 102
-fi
-
-REPO_ROOT=$1
-${REPO_ROOT}/prebuilts/devtools/tools/lint \
-       . \
-       --exitcode \
-       -Werror \
-       --config ${REPO_ROOT}/frameworks/base/packages/SystemUI/tools/lint/lint.xml \
-       --html ${REPO_ROOT}/out/lint_output.html \
-       --baseline ${REPO_ROOT}/frameworks/base/packages/SystemUI/tools/lint/baseline.xml \
-       --remove-fixed
-exitcode=$?
-if [[ exitcode -eq 1 ]];  then
-    cat >&2 <<EOF
-
-Please check the HTML results file and fix the errors.
-If the error cannot be fixed immediately, there are 3 possible resolutions:
-1. Use tools:ignore or @SuppressLint annotation. This is preferred
-   for cases where the lint violation is intended, so that reviewers
-   can review whether the suppression is appropriate.
-2. Use tools/lint.xml to ignore a lint check which we don't care
-   about for any file, or checks that are not actionable by the
-   CL author (e.g. translation issues)
-3. If there are lint errors that should be fixed, but cannot be done
-   immediately for some reason, run ./tools/lint/update_baseline.sh to
-   add them to baseline.xml.
-
-EOF
-fi
-
-exit $exitcode
diff --git a/packages/SystemUI/tools/lint/update_baseline.sh b/packages/SystemUI/tools/lint/update_baseline.sh
deleted file mode 100755
index aa0cd808..0000000
--- a/packages/SystemUI/tools/lint/update_baseline.sh
+++ /dev/null
@@ -1,18 +0,0 @@
-#! /bin/bash
-
-if [[ $PWD != *"/frameworks/base/packages/SystemUI" ]]; then
-    echo "Please run this in frameworks/base/packages/SystemUI" >&2
-    exit 1
-fi
-
-# Empty the baseline file so the baseline-generation run below do not ignore any existing errors.
-echo '' > tools/lint/baseline.xml
-
-lint . -Werror --exitcode --config tools/lint/lint.xml --html /tmp/lint_output.html \
-  --baseline tools/lint/baseline.xml --remove-fixed &
-
-# b/37579990 - The file needs to be removed *while* lint is running
-sleep 0.5
-rm tools/lint/baseline.xml
-
-wait
diff --git a/proto/src/metrics_constants/OWNERS b/proto/src/metrics_constants/OWNERS
index 7009282..b032841 100644
--- a/proto/src/metrics_constants/OWNERS
+++ b/proto/src/metrics_constants/OWNERS
@@ -1,4 +1,3 @@
 cwren@android.com
-yanglu@google.com
 yaochen@google.com
 yro@google.com
diff --git a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodAwareTestRunner.java b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodAwareTestRunner.java
index 3ebef02..b616766 100644
--- a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodAwareTestRunner.java
+++ b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodAwareTestRunner.java
@@ -23,13 +23,10 @@
 
 import android.annotation.NonNull;
 import android.annotation.Nullable;
-import android.os.Bundle;
 import android.platform.test.annotations.RavenwoodTestRunnerInitializing;
 import android.platform.test.annotations.internal.InnerRunner;
 import android.util.Log;
 
-import androidx.test.platform.app.InstrumentationRegistry;
-
 import com.android.ravenwood.common.RavenwoodCommonUtils;
 
 import org.junit.rules.TestRule;
@@ -285,11 +282,6 @@
     private boolean onBefore(Description description, Scope scope, Order order) {
         Log.v(TAG, "onBefore: description=" + description + ", " + scope + ", " + order);
 
-        if (scope == Scope.Instance && order == Order.Outer) {
-            // Start of a test method.
-            mState.enterTestMethod(description);
-        }
-
         final var classDescription = getDescription();
 
         // Class-level annotations are checked by the runner already, so we only check
@@ -299,6 +291,12 @@
                 return false;
             }
         }
+
+        if (scope == Scope.Instance && order == Order.Outer) {
+            // Start of a test method.
+            mState.enterTestMethod(description);
+        }
+
         return true;
     }
 
@@ -314,8 +312,7 @@
 
         if (scope == Scope.Instance && order == Order.Outer) {
             // End of a test method.
-            mState.exitTestMethod();
-
+            mState.exitTestMethod(description);
         }
 
         // If RUN_DISABLED_TESTS is set, and the method did _not_ throw, make it an error.
diff --git a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRunnerState.java b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRunnerState.java
index 70bc52b..705186e 100644
--- a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRunnerState.java
+++ b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRunnerState.java
@@ -81,12 +81,15 @@
         RavenwoodRuntimeEnvironmentController.exitTestClass();
     }
 
+    /** Called when a test method is about to start */
     public void enterTestMethod(Description description) {
         mMethodDescription = description;
-        RavenwoodRuntimeEnvironmentController.initForMethod();
+        RavenwoodRuntimeEnvironmentController.enterTestMethod(description);
     }
 
-    public void exitTestMethod() {
+    /** Called when a test method finishes */
+    public void exitTestMethod(Description description) {
+        RavenwoodRuntimeEnvironmentController.exitTestMethod(description);
         mMethodDescription = null;
     }
 
diff --git a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRuntimeEnvironmentController.java b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRuntimeEnvironmentController.java
index f205d23..d935626 100644
--- a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRuntimeEnvironmentController.java
+++ b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRuntimeEnvironmentController.java
@@ -51,6 +51,7 @@
 import android.os.Bundle;
 import android.os.HandlerThread;
 import android.os.Looper;
+import android.os.Message;
 import android.os.Process_ravenwood;
 import android.os.ServiceManager;
 import android.os.ServiceManager.ServiceNotFoundException;
@@ -74,6 +75,7 @@
 import com.android.server.LocalServices;
 import com.android.server.compat.PlatformCompat;
 
+import org.junit.AssumptionViolatedException;
 import org.junit.internal.management.ManagementFactory;
 import org.junit.runner.Description;
 
@@ -81,6 +83,7 @@
 import java.io.IOException;
 import java.io.PrintStream;
 import java.util.Collections;
+import java.util.Comparator;
 import java.util.HashMap;
 import java.util.Locale;
 import java.util.Map;
@@ -93,6 +96,7 @@
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicReference;
 import java.util.function.Supplier;
+import java.util.stream.Collectors;
 
 /**
  * Responsible for initializing and the environment.
@@ -107,32 +111,60 @@
     @SuppressWarnings("UnusedVariable")
     private static final PrintStream sStdErr = System.err;
 
-    private static final String MAIN_THREAD_NAME = "RavenwoodMain";
+    private static final String MAIN_THREAD_NAME = "Ravenwood:Main";
+    private static final String TESTS_THREAD_NAME = "Ravenwood:Test";
+
     private static final String LIBRAVENWOOD_INITIALIZER_NAME = "ravenwood_initializer";
     private static final String RAVENWOOD_NATIVE_RUNTIME_NAME = "ravenwood_runtime";
 
     private static final String ANDROID_LOG_TAGS = "ANDROID_LOG_TAGS";
     private static final String RAVENWOOD_ANDROID_LOG_TAGS = "RAVENWOOD_" + ANDROID_LOG_TAGS;
 
+    static volatile Thread sTestThread;
+    static volatile Thread sMainThread;
+
     /**
      * When enabled, attempt to dump all thread stacks just before we hit the
      * overall Tradefed timeout, to aid in debugging deadlocks.
+     *
+     * Note, this timeout will _not_ stop the test, as there isn't really a clean way to do it.
+     * It'll merely print stacktraces.
      */
     private static final boolean ENABLE_TIMEOUT_STACKS =
-            "1".equals(System.getenv("RAVENWOOD_ENABLE_TIMEOUT_STACKS"));
+            !"0".equals(System.getenv("RAVENWOOD_ENABLE_TIMEOUT_STACKS"));
 
-    private static final int TIMEOUT_MILLIS = 9_000;
+    private static final boolean TOLERATE_LOOPER_ASSERTS =
+            !"0".equals(System.getenv("RAVENWOOD_TOLERATE_LOOPER_ASSERTS"));
+
+    static final int DEFAULT_TIMEOUT_SECONDS = 10;
+    private static final int TIMEOUT_MILLIS = getTimeoutSeconds() * 1000;
+
+    static int getTimeoutSeconds() {
+        var e = System.getenv("RAVENWOOD_TIMEOUT_SECONDS");
+        if (e == null || e.isEmpty()) {
+            return DEFAULT_TIMEOUT_SECONDS;
+        }
+        return Integer.parseInt(e);
+    }
+
 
     private static final ScheduledExecutorService sTimeoutExecutor =
-            Executors.newScheduledThreadPool(1);
+            Executors.newScheduledThreadPool(1, (Runnable r) -> {
+                Thread t = Executors.defaultThreadFactory().newThread(r);
+                t.setName("Ravenwood:TimeoutMonitor");
+                t.setDaemon(true);
+                return t;
+            });
 
-    private static ScheduledFuture<?> sPendingTimeout;
+    private static volatile ScheduledFuture<?> sPendingTimeout;
 
     /**
      * When enabled, attempt to detect uncaught exceptions from background threads.
      */
     private static final boolean ENABLE_UNCAUGHT_EXCEPTION_DETECTION =
-            "1".equals(System.getenv("RAVENWOOD_ENABLE_UNCAUGHT_EXCEPTION_DETECTION"));
+            !"0".equals(System.getenv("RAVENWOOD_ENABLE_UNCAUGHT_EXCEPTION_DETECTION"));
+
+    private static final boolean DIE_ON_UNCAUGHT_EXCEPTION = true;
 
     /**
      * When set, an unhandled exception was discovered (typically on a background thread), and we
@@ -141,12 +173,6 @@
     private static final AtomicReference<Throwable> sPendingUncaughtException =
             new AtomicReference<>();
 
-    private static final Thread.UncaughtExceptionHandler sUncaughtExceptionHandler =
-            (thread, throwable) -> {
-                // Remember the first exception we discover
-                sPendingUncaughtException.compareAndSet(null, throwable);
-            };
-
     // TODO: expose packCallingIdentity function in libbinder and use it directly
     // See: packCallingIdentity in frameworks/native/libs/binder/IPCThreadState.cpp
     private static long packBinderIdentityToken(
@@ -187,6 +213,8 @@
      * Initialize the global environment.
      */
     public static void globalInitOnce() {
+        sTestThread = Thread.currentThread();
+        Thread.currentThread().setName(TESTS_THREAD_NAME);
         synchronized (sInitializationLock) {
             if (!sInitialized) {
                 // globalInitOnce() is called from class initializer, which cause
@@ -194,6 +222,7 @@
                 sInitialized = true;
 
                 // This is the first call.
+                final long start = System.currentTimeMillis();
                 try {
                     globalInitInner();
                 } catch (Throwable th) {
@@ -202,6 +231,9 @@
                     sExceptionFromGlobalInit = th;
                     SneakyThrow.sneakyThrow(th);
                 }
+                final long end = System.currentTimeMillis();
+                // TODO Show user/system time too
+                Log.e(TAG, "globalInit() took " + (end - start) + "ms");
             } else {
                 // Subsequent calls. If the first call threw, just throw the same error, to prevent
                 // the test from running.
@@ -220,7 +252,8 @@
         RavenwoodCommonUtils.log(TAG, "globalInitInner()");
 
         if (ENABLE_UNCAUGHT_EXCEPTION_DETECTION) {
-            Thread.setDefaultUncaughtExceptionHandler(sUncaughtExceptionHandler);
+            Thread.setDefaultUncaughtExceptionHandler(
+                    RavenwoodRuntimeEnvironmentController::reportUncaughtExceptions);
         }
 
         // Some process-wide initialization:
@@ -304,6 +337,7 @@
         ActivityManager.init$ravenwood(SYSTEM.getIdentifier());
 
         final var main = new HandlerThread(MAIN_THREAD_NAME);
+        sMainThread = main;
         main.start();
         Looper.setMainLooperForTest(main.getLooper());
 
@@ -350,9 +384,20 @@
         var systemServerContext =
                 new RavenwoodContext(ANDROID_PACKAGE_NAME, main, systemResourcesLoader);
 
-        sInstrumentation = new Instrumentation();
-        sInstrumentation.basicInit(instContext, targetContext, null);
-        InstrumentationRegistry.registerInstance(sInstrumentation, Bundle.EMPTY);
+        var instArgs = Bundle.EMPTY;
+        RavenwoodUtils.runOnMainThreadSync(() -> {
+            try {
+                // TODO We should get the instrumentation class name from the build file or
+                // somewhere.
+                var InstClass = Class.forName("android.app.Instrumentation");
+                sInstrumentation = (Instrumentation) InstClass.getConstructor().newInstance();
+                sInstrumentation.basicInit(instContext, targetContext, null);
+                sInstrumentation.onCreate(instArgs);
+            } catch (Exception e) {
+                SneakyThrow.sneakyThrow(e);
+            }
+        });
+        InstrumentationRegistry.registerInstance(sInstrumentation, instArgs);
 
         RavenwoodSystemServer.init(systemServerContext);
 
@@ -399,22 +444,46 @@
 
         SystemProperties.clearChangeCallbacksForTest();
 
-        if (ENABLE_TIMEOUT_STACKS) {
-            sPendingTimeout = sTimeoutExecutor.schedule(
-                    RavenwoodRuntimeEnvironmentController::dumpStacks,
-                    TIMEOUT_MILLIS, TimeUnit.MILLISECONDS);
-        }
-        if (ENABLE_UNCAUGHT_EXCEPTION_DETECTION) {
-            maybeThrowPendingUncaughtException(false);
-        }
+        maybeThrowPendingUncaughtException();
     }
 
     /**
-     * Partially reset and initialize before each test method invocation
+     * Called when a test method is about to be started.
      */
-    public static void initForMethod() {
+    public static void enterTestMethod(Description description) {
         // TODO(b/375272444): this is a hacky workaround to ensure binder identity
         Binder.restoreCallingIdentity(sCallingIdentity);
+
+        scheduleTimeout();
+    }
+
+    /**
+     * Called when a test method finished.
+     */
+    public static void exitTestMethod(Description description) {
+        cancelTimeout();
+        maybeThrowPendingUncaughtException();
+    }
+
+    private static void scheduleTimeout() {
+        if (!ENABLE_TIMEOUT_STACKS) {
+            return;
+        }
+        cancelTimeout();
+
+        sPendingTimeout = sTimeoutExecutor.schedule(
+                RavenwoodRuntimeEnvironmentController::onTestTimedOut,
+                TIMEOUT_MILLIS, TimeUnit.MILLISECONDS);
+    }
+
+    private static void cancelTimeout() {
+        if (!ENABLE_TIMEOUT_STACKS) {
+            return;
+        }
+        var pt = sPendingTimeout;
+        if (pt != null) {
+            pt.cancel(false);
+        }
     }
 
     private static void initializeCompatIds() {
@@ -473,15 +542,36 @@
     }
 
     /**
+     * Return if an exception is benign and okay to continue running the main looper even
+     * if we detect it.
+     */
+    private static boolean isThrowableBenign(Throwable th) {
+        return th instanceof AssertionError || th instanceof AssumptionViolatedException;
+    }
+
+    static void dispatchMessage(Message msg) {
+        try {
+            msg.getTarget().dispatchMessage(msg);
+        } catch (Throwable th) {
+            var desc = String.format("Detected %s on looper thread %s", th.getClass().getName(),
+                    Thread.currentThread());
+            sStdErr.println(desc);
+            if (TOLERATE_LOOPER_ASSERTS && isThrowableBenign(th)) {
+                sStdErr.printf("*** Continuing the test because it's %s ***\n",
+                        th.getClass().getSimpleName());
+                var e = new Exception(desc, th);
+                sPendingUncaughtException.compareAndSet(null, e);
+                return;
+            }
+            throw th;
+        }
+    }
+
+    /**
      * A callback when a test class finishes its execution, mostly only for debugging.
      */
     public static void exitTestClass() {
-        if (ENABLE_TIMEOUT_STACKS) {
-            sPendingTimeout.cancel(false);
-        }
-        if (ENABLE_UNCAUGHT_EXCEPTION_DETECTION) {
-            maybeThrowPendingUncaughtException(true);
-        }
+        maybeThrowPendingUncaughtException();
     }
 
     public static void logTestRunner(String label, Description description) {
@@ -491,35 +581,70 @@
                 + "(" + description.getTestClass().getName() + ")");
     }
 
-    private static void dumpStacks() {
-        final PrintStream out = System.err;
-        out.println("-----BEGIN ALL THREAD STACKS-----");
-        final Map<Thread, StackTraceElement[]> stacks = Thread.getAllStackTraces();
-        for (Map.Entry<Thread, StackTraceElement[]> stack : stacks.entrySet()) {
-            out.println();
-            Thread t = stack.getKey();
-            out.println(t.toString() + " ID=" + t.getId());
-            for (StackTraceElement e : stack.getValue()) {
-                out.println("\tat " + e);
-            }
+    private static void maybeThrowPendingUncaughtException() {
+        final Throwable pending = sPendingUncaughtException.getAndSet(null);
+        if (pending != null) {
+            throw new IllegalStateException("Found an uncaught exception", pending);
         }
-        out.println("-----END ALL THREAD STACKS-----");
     }
 
     /**
-     * If there's a pending uncaught exception, consume and throw it now. Typically used to
-     * report an exception on a background thread as a failure for the currently running test.
+     * Prints the stack trace from all threads.
      */
-    private static void maybeThrowPendingUncaughtException(boolean duringReset) {
-        final Throwable pending = sPendingUncaughtException.getAndSet(null);
-        if (pending != null) {
-            if (duringReset) {
-                throw new IllegalStateException(
-                        "Found an uncaught exception during this test", pending);
-            } else {
-                throw new IllegalStateException(
-                        "Found an uncaught exception before this test started", pending);
+    private static void onTestTimedOut() {
+        sStdErr.println("********* SLOW TEST DETECTED ********");
+        dumpStacks(null, null);
+    }
+
+    private static final Object sDumpStackLock = new Object();
+
+    /**
+     * Prints the stack trace from all threads.
+     */
+    private static void dumpStacks(
+            @Nullable Thread exceptionThread, @Nullable Throwable throwable) {
+        cancelTimeout();
+        synchronized (sDumpStackLock) {
+            final PrintStream out = sStdErr;
+            out.println("-----BEGIN ALL THREAD STACKS-----");
+
+            var stacks = Thread.getAllStackTraces();
+            var threads = stacks.keySet().stream().sorted(
+                    Comparator.comparingLong(Thread::getId)).collect(Collectors.toList());
+
+            // Put the test and the main thread at the top.
+            var testThread = sTestThread;
+            var mainThread = sMainThread;
+            if (mainThread != null) {
+                threads.remove(mainThread);
+                threads.add(0, mainThread);
             }
+            if (testThread != null) {
+                threads.remove(testThread);
+                threads.add(0, testThread);
+            }
+            // Put the exception thread at the top.
+            // Also inject the stacktrace from the exception.
+            if (exceptionThread != null) {
+                threads.remove(exceptionThread);
+                threads.add(0, exceptionThread);
+                stacks.put(exceptionThread, throwable.getStackTrace());
+            }
+            for (var th : threads) {
+                out.println();
+
+                out.print("Thread");
+                if (th == exceptionThread) {
+                    out.print(" [** EXCEPTION THREAD **]");
+                }
+                out.print(": " + th.getName() + " / " + th);
+                out.println();
+
+                for (StackTraceElement e :  stacks.get(th)) {
+                    out.println("\tat " + e);
+                }
+            }
+            out.println("-----END ALL THREAD STACKS-----");
         }
     }
 
@@ -545,13 +670,17 @@
                 () -> Class.forName("org.mockito.Matchers"));
     }
 
-    // TODO: use the real UiAutomation class instead of a mock
-    private static UiAutomation createMockUiAutomation() {
-        sAdoptedPermissions = Collections.emptySet();
-        var mock = mock(UiAutomation.class, inv -> {
+    static <T> T makeDefaultThrowMock(Class<T> clazz) {
+        return mock(clazz, inv -> {
             HostTestUtils.onThrowMethodCalled();
             return null;
         });
+    }
+
+    // TODO: use the real UiAutomation class instead of a mock
+    private static UiAutomation createMockUiAutomation() {
+        sAdoptedPermissions = Collections.emptySet();
+        var mock = makeDefaultThrowMock(UiAutomation.class);
         doAnswer(inv -> {
             sAdoptedPermissions = UiAutomation.ALL_PERMISSIONS;
             return null;
@@ -586,6 +715,23 @@
         }
     }
 
+    private static void reportUncaughtExceptions(Thread th, Throwable e) {
+        sStdErr.printf("Uncaught exception detected: %s: %s\n",
+                th, RavenwoodCommonUtils.getStackTraceString(e));
+
+        doBugreport(th, e, DIE_ON_UNCAUGHT_EXCEPTION);
+    }
+
+    private static void doBugreport(
+            @Nullable Thread exceptionThread, @Nullable Throwable throwable,
+            boolean killSelf) {
+        // TODO: Print more information
+        dumpStacks(exceptionThread, throwable);
+        if (killSelf) {
+            System.exit(13);
+        }
+    }
+
     private static void dumpJavaProperties() {
         Log.v(TAG, "JVM properties:");
         dumpMap(System.getProperties());
@@ -601,7 +747,6 @@
             Log.v(TAG, "  " + key + "=" + map.get(key));
         }
     }
-
     private static void dumpOtherInfo() {
         Log.v(TAG, "Other key information:");
         var jloc = Locale.getDefault();
diff --git a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodSystemProperties.java b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodSystemProperties.java
index 70c161c1..819d93a 100644
--- a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodSystemProperties.java
+++ b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodSystemProperties.java
@@ -26,6 +26,7 @@
 import java.nio.file.Files;
 import java.nio.file.Path;
 import java.util.HashMap;
+import java.util.HashSet;
 import java.util.LinkedHashMap;
 import java.util.Map;
 import java.util.Set;
@@ -45,6 +46,9 @@
     /** The default values. */
     static final Map<String, String> sDefaultValues = new HashMap<>();
 
+    static final Set<String> sReadableKeys = new HashSet<>();
+    static final Set<String> sWritableKeys = new HashSet<>();
+
     private static final String[] PARTITIONS = {
             "bootimage",
             "odm",
@@ -88,9 +92,24 @@
         ravenwoodProps.forEach((key, origValue) -> {
             final String value;
 
-            // If a value starts with "$$$", then this is a reference to the device-side value.
             if (origValue.startsWith("$$$")) {
+                // If a value starts with "$$$", then:
+                // - If it's "$$$r", the key is allowed to read.
+                // - If it's "$$$w", the key is allowed to write.
+                // - Otherwise, it's a reference to the device-side value.
+                // In case of $$$r and $$$w, if the key ends with a '.', then it'll be treaded
+                // as a prefix match.
                 var deviceKey = origValue.substring(3);
+                if ("r".equals(deviceKey)) {
+                    sReadableKeys.add(key);
+                    Log.v(TAG, key + " (readable)");
+                    return;
+                } else if ("w".equals(deviceKey)) {
+                    sWritableKeys.add(key);
+                    Log.v(TAG, key + " (writable)");
+                    return;
+                }
+
                 var deviceValue = deviceProps.get(deviceKey);
                 if (deviceValue == null) {
                     throw new RuntimeException("Failed to initialize system properties. Key '"
@@ -131,50 +150,38 @@
         sDefaultValues.forEach(RavenwoodRuntimeNative::setSystemProperty);
     }
 
+    private static boolean checkAllowedInner(String key, Set<String> allowed) {
+        if (allowed.contains(key)) {
+            return true;
+        }
+
+        // Also search for a prefix match.
+        for (var k : allowed) {
+            if (k.endsWith(".") && key.startsWith(k)) {
+                return true;
+            }
+        }
+        return false;
+    }
+
+    private static boolean checkAllowed(String key, Set<String> allowed) {
+        return checkAllowedInner(key, allowed) || checkAllowedInner(getKeyRoot(key), allowed);
+    }
+
     private static boolean isKeyReadable(String key) {
-        // All writable keys are also readable
-        if (isKeyWritable(key)) return true;
-
-        final String root = getKeyRoot(key);
-
-        // This set is carefully curated to help identify situations where a test may
-        // accidentally depend on a default value of an obscure property whose owner hasn't
-        // decided how Ravenwood should behave.
-        if (root.startsWith("boot.")) return true;
-        if (root.startsWith("build.")) return true;
-        if (root.startsWith("product.")) return true;
-        if (root.startsWith("soc.")) return true;
-        if (root.startsWith("system.")) return true;
-
         // All core values should be readable
-        if (sDefaultValues.containsKey(key)) return true;
-
-        // Hardcoded allowlist
-        return switch (key) {
-            case "gsm.version.baseband",
-                 "no.such.thing",
-                 "qemu.sf.lcd_density",
-                 "ro.bootloader",
-                 "ro.hardware",
-                 "ro.hw_timeout_multiplier",
-                 "ro.odm.build.media_performance_class",
-                 "ro.sf.lcd_density",
-                 "ro.treble.enabled",
-                 "ro.vndk.version",
-                 "ro.icu.data.path" -> true;
-            default -> false;
-        };
+        if (sDefaultValues.containsKey(key)) {
+            return true;
+        }
+        if (checkAllowed(key, sReadableKeys)) {
+            return true;
+        }
+        // All writable keys are also readable
+        return isKeyWritable(key);
     }
 
     private static boolean isKeyWritable(String key) {
-        final String root = getKeyRoot(key);
-
-        if (root.startsWith("debug.")) return true;
-
-        // For PropertyInvalidatedCache
-        if (root.startsWith("cache_key.")) return true;
-
-        return false;
+        return checkAllowed(key, sWritableKeys);
     }
 
     static boolean isKeyAccessible(String key, boolean write) {
diff --git a/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodUtils.java b/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodUtils.java
index 19c1bff..3e2c405 100644
--- a/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodUtils.java
+++ b/ravenwood/junit-src/android/platform/test/ravenwood/RavenwoodUtils.java
@@ -15,7 +15,20 @@
  */
 package android.platform.test.ravenwood;
 
+import static com.android.ravenwood.common.RavenwoodCommonUtils.ReflectedMethod.reflectMethod;
+
+import android.annotation.NonNull;
+import android.annotation.Nullable;
+import android.os.Handler;
+import android.os.Looper;
+
 import com.android.ravenwood.common.RavenwoodCommonUtils;
+import com.android.ravenwood.common.SneakyThrow;
+
+import java.util.concurrent.Callable;
+import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.atomic.AtomicReference;
+import java.util.function.Supplier;
 
 /**
  * Utilities for writing (bivalent) ravenwood tests.
@@ -47,4 +60,129 @@
     public static void loadJniLibrary(String libname) {
         RavenwoodCommonUtils.loadJniLibrary(libname);
     }
+
+    private class MainHandlerHolder {
+        static Handler sMainHandler = new Handler(Looper.getMainLooper());
+    }
+
+    /**
+     * Returns the main thread handler.
+     */
+    public static Handler getMainHandler() {
+        return MainHandlerHolder.sMainHandler;
+    }
+
+    /**
+     * Run a Callable on Handler and wait for it to complete.
+     */
+    @Nullable
+    public static <T> T runOnHandlerSync(@NonNull Handler h, @NonNull Callable<T> c) {
+        var result = new AtomicReference<T>();
+        var thrown = new AtomicReference<Throwable>();
+        var latch = new CountDownLatch(1);
+        h.post(() -> {
+            try {
+                result.set(c.call());
+            } catch (Throwable th) {
+                thrown.set(th);
+            }
+            latch.countDown();
+        });
+        try {
+            latch.await();
+        } catch (InterruptedException e) {
+            throw new RuntimeException("Interrupted while waiting on the Runnable", e);
+        }
+        var th = thrown.get();
+        if (th != null) {
+            SneakyThrow.sneakyThrow(th);
+        }
+        return result.get();
+    }
+
+
+    /**
+     * Run a Runnable on Handler and wait for it to complete.
+     */
+    @Nullable
+    public static void runOnHandlerSync(@NonNull Handler h, @NonNull Runnable r) {
+        runOnHandlerSync(h, () -> {
+            r.run();
+            return null;
+        });
+    }
+
+    /**
+     * Run a Callable on main thread and wait for it to complete.
+     */
+    @Nullable
+    public static <T> T runOnMainThreadSync(@NonNull Callable<T> c) {
+        return runOnHandlerSync(getMainHandler(), c);
+    }
+
+    /**
+     * Run a Runnable on main thread and wait for it to complete.
+     */
+    @Nullable
+    public static void runOnMainThreadSync(@NonNull Runnable r) {
+        runOnHandlerSync(getMainHandler(), r);
+    }
+
+    public static class MockitoHelper {
+        private MockitoHelper() {
+        }
+
+        /**
+         * Allow verifyZeroInteractions to work on ravenwood. It was replaced with a different
+         * method on. (Maybe we should do it in Ravenizer.)
+         */
+        public static void verifyZeroInteractions(Object... mocks) {
+            if (RavenwoodRule.isOnRavenwood()) {
+                // Mockito 4 or later
+                reflectMethod("org.mockito.Mockito", "verifyNoInteractions", Object[].class)
+                        .callStatic(new Object[]{mocks});
+            } else {
+                // Mockito 2
+                reflectMethod("org.mockito.Mockito", "verifyZeroInteractions", Object[].class)
+                        .callStatic(new Object[]{mocks});
+            }
+        }
+    }
+
+
+    /**
+     * Wrap the given {@link Supplier} to become memoized.
+     *
+     * The underlying {@link Supplier} will only be invoked once, and that result will be cached
+     * and returned for any future requests.
+     */
+    static <T> Supplier<T> memoize(ThrowingSupplier<T> supplier) {
+        return new Supplier<>() {
+            private T mInstance;
+
+            @Override
+            public T get() {
+                synchronized (this) {
+                    if (mInstance == null) {
+                        mInstance = create();
+                    }
+                    return mInstance;
+                }
+            }
+
+            private T create() {
+                try {
+                    return supplier.get();
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
+            }
+        };
+    }
+
+    /** Used by {@link #memoize(ThrowingSupplier)}  */
+    public interface ThrowingSupplier<T> {
+        /** */
+        T get() throws Exception;
+    }
 }
diff --git a/ravenwood/runtime-common-src/com/android/ravenwood/common/RavenwoodCommonUtils.java b/ravenwood/runtime-common-src/com/android/ravenwood/common/RavenwoodCommonUtils.java
index a967a3f..893b354 100644
--- a/ravenwood/runtime-common-src/com/android/ravenwood/common/RavenwoodCommonUtils.java
+++ b/ravenwood/runtime-common-src/com/android/ravenwood/common/RavenwoodCommonUtils.java
@@ -26,10 +26,12 @@
 import java.io.PrintStream;
 import java.io.PrintWriter;
 import java.io.StringWriter;
+import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Member;
 import java.lang.reflect.Method;
 import java.lang.reflect.Modifier;
 import java.util.Arrays;
+import java.util.Objects;
 import java.util.function.Supplier;
 
 public class RavenwoodCommonUtils {
@@ -329,4 +331,70 @@
     public static <T> T withDefault(@Nullable T value, @Nullable T def) {
         return value != null ? value : def;
     }
+
+    /**
+     * Utility for calling a method with reflections. Used to call a method by name.
+     * Note, this intentionally does _not_ support non-public methods, as we generally
+     * shouldn't violate java visibility in ravenwood.
+     *
+     * @param <TTHIS> class owning the method.
+     */
+    public static class ReflectedMethod<TTHIS> {
+        private final Class<TTHIS> mThisClass;
+        private final Method mMethod;
+
+        private ReflectedMethod(Class<TTHIS> thisClass, Method method) {
+            mThisClass = thisClass;
+            mMethod = method;
+        }
+
+        /** Factory method. */
+        @SuppressWarnings("unchecked")
+        public static <TTHIS> ReflectedMethod<TTHIS> reflectMethod(
+                @NonNull Class<TTHIS> clazz, @NonNull String methodName,
+                @NonNull Class<?>... argTypes) {
+            try {
+                return new ReflectedMethod(clazz, clazz.getMethod(methodName, argTypes));
+            } catch (NoSuchMethodException e) {
+                throw new RuntimeException(e);
+            }
+        }
+
+        /** Factory method. */
+        @SuppressWarnings("unchecked")
+        public static <TTHIS> ReflectedMethod<TTHIS> reflectMethod(
+                @NonNull String className, @NonNull String methodName,
+                @NonNull Class<?>... argTypes) {
+            try {
+                return reflectMethod((Class<TTHIS>) Class.forName(className), methodName, argTypes);
+            } catch (ClassNotFoundException e) {
+                throw new RuntimeException(e);
+            }
+        }
+
+        /** Call the instance method */
+        @SuppressWarnings("unchecked")
+        public <RET> RET call(@NonNull TTHIS thisObject, @NonNull Object... args) {
+            try {
+                return (RET) mMethod.invoke(Objects.requireNonNull(thisObject), args);
+            } catch (InvocationTargetException | IllegalAccessException e) {
+                throw new RuntimeException(e);
+            }
+        }
+
+        /** Call the static method */
+        @SuppressWarnings("unchecked")
+        public <RET> RET callStatic(@NonNull Object... args) {
+            try {
+                return (RET) mMethod.invoke(null, args);
+            } catch (InvocationTargetException | IllegalAccessException e) {
+                throw new RuntimeException(e);
+            }
+        }
+    }
+
+    /** Handy method to create an array */
+    public static <T> T[] arr(@NonNull T... objects) {
+        return objects;
+    }
 }
diff --git a/ravenwood/runtime-helper-src/framework/android/util/Log_ravenwood.java b/ravenwood/runtime-helper-src/framework/android/util/Log_ravenwood.java
index 7ab9cda..855a4ff 100644
--- a/ravenwood/runtime-helper-src/framework/android/util/Log_ravenwood.java
+++ b/ravenwood/runtime-helper-src/framework/android/util/Log_ravenwood.java
@@ -21,7 +21,6 @@
 import com.android.internal.annotations.GuardedBy;
 import com.android.internal.os.RuntimeInit;
 import com.android.ravenwood.RavenwoodRuntimeNative;
-import com.android.ravenwood.common.RavenwoodCommonUtils;
 
 import java.io.PrintStream;
 import java.text.SimpleDateFormat;
@@ -164,7 +163,7 @@
      * Return the "real" {@code System.out} if it's been swapped by {@code RavenwoodRuleImpl}, so
      * that we don't end up in a recursive loop.
      */
-    private static PrintStream getRealOut() {
+    public static PrintStream getRealOut() {
         if (RuntimeInit.sOut$ravenwood != null) {
             return RuntimeInit.sOut$ravenwood;
         } else {
diff --git a/ravenwood/runtime-helper-src/libcore-fake/dalvik/system/VMRuntime.java b/ravenwood/runtime-helper-src/libcore-fake/dalvik/system/VMRuntime.java
index eaadac6..50cfd3b 100644
--- a/ravenwood/runtime-helper-src/libcore-fake/dalvik/system/VMRuntime.java
+++ b/ravenwood/runtime-helper-src/libcore-fake/dalvik/system/VMRuntime.java
@@ -57,4 +57,12 @@
     public int getTargetSdkVersion() {
         return RavenwoodRuntimeState.sTargetSdkLevel;
     }
+
+    /** Ignored on ravenwood. */
+    public void registerNativeAllocation(long bytes) {
+    }
+
+    /** Ignored on ravenwood. */
+    public void registerNativeFree(long bytes) {
+    }
 }
diff --git a/ravenwood/runtime-helper-src/libcore-fake/libcore/util/NativeAllocationRegistry.java b/ravenwood/runtime-helper-src/libcore-fake/libcore/util/NativeAllocationRegistry.java
index cf1a513..985e00e 100644
--- a/ravenwood/runtime-helper-src/libcore-fake/libcore/util/NativeAllocationRegistry.java
+++ b/ravenwood/runtime-helper-src/libcore-fake/libcore/util/NativeAllocationRegistry.java
@@ -97,6 +97,9 @@
         if (referent == null) {
             throw new IllegalArgumentException("referent is null");
         }
+        if (mFreeFunction == 0) {
+            return () -> {}; // do nothing
+        }
         if (nativePtr == 0) {
             throw new IllegalArgumentException("nativePtr is null");
         }
diff --git a/ravenwood/runtime-helper-src/libcore-fake/libcore/util/NonNull.java b/ravenwood/runtime-helper-src/libcore-fake/libcore/util/NonNull.java
index db3cd8ed..1153a77 100644
--- a/ravenwood/runtime-helper-src/libcore-fake/libcore/util/NonNull.java
+++ b/ravenwood/runtime-helper-src/libcore-fake/libcore/util/NonNull.java
@@ -35,14 +35,4 @@
 @Retention(SOURCE)
 @Target({FIELD, METHOD, PARAMETER, TYPE_USE})
 @libcore.api.IntraCoreApi
-public @interface NonNull {
-   /**
-    * Min Android API level (inclusive) to which this annotation is applied.
-    */
-   int from() default Integer.MIN_VALUE;
-
-   /**
-    * Max Android API level to which this annotation is applied.
-    */
-   int to() default Integer.MAX_VALUE;
-}
+public @interface NonNull {}
diff --git a/ravenwood/runtime-helper-src/libcore-fake/libcore/util/Nullable.java b/ravenwood/runtime-helper-src/libcore-fake/libcore/util/Nullable.java
index 3371978..295f083 100644
--- a/ravenwood/runtime-helper-src/libcore-fake/libcore/util/Nullable.java
+++ b/ravenwood/runtime-helper-src/libcore-fake/libcore/util/Nullable.java
@@ -35,14 +35,4 @@
 @Retention(SOURCE)
 @Target({FIELD, METHOD, PARAMETER, TYPE_USE})
 @libcore.api.IntraCoreApi
-public @interface Nullable {
-   /**
-    * Min Android API level (inclusive) to which this annotation is applied.
-    */
-   int from() default Integer.MIN_VALUE;
-
-   /**
-    * Max Android API level to which this annotation is applied.
-    */
-   int to() default Integer.MAX_VALUE;
-}
+public @interface Nullable {}
diff --git a/ravenwood/scripts/add-annotations.sh b/ravenwood/scripts/add-annotations.sh
index 3e86037..8c394f5 100755
--- a/ravenwood/scripts/add-annotations.sh
+++ b/ravenwood/scripts/add-annotations.sh
@@ -35,7 +35,7 @@
 # We add this line to each methods found.
 # Note, if we used a single @, that'd be handled as an at file. Use
 # the double-at instead.
-annotation="@@android.platform.test.annotations.DisabledOnRavenwood"
+annotation="@@android.platform.test.annotations.DisabledOnRavenwood(reason = \"bulk-disabled by script\")"
 while getopts "t:" opt; do
 case "$opt" in
     t)
diff --git a/ravenwood/tests/coretest/Android.bp b/ravenwood/tests/coretest/Android.bp
index 9dd7cc6..182a7cf 100644
--- a/ravenwood/tests/coretest/Android.bp
+++ b/ravenwood/tests/coretest/Android.bp
@@ -33,3 +33,34 @@
     },
     auto_gen_config: true,
 }
+
+// Same as RavenwoodCoreTest, but it excludes tests using platform-parametric-runner-lib,
+// because that modules has too many dependencies and slow to build incrementally.
+android_ravenwood_test {
+    name: "RavenwoodCoreTest-light",
+
+    static_libs: [
+        "androidx.annotation_annotation",
+        "androidx.test.ext.junit",
+        "androidx.test.rules",
+
+        // This library should be removed by Ravenizer
+        "mockito-target-minus-junit4",
+    ],
+    libs: [
+        // We access internal private classes
+        "ravenwood-junit-impl",
+    ],
+    srcs: [
+        "test/**/*.java",
+        "test/**/*.kt",
+    ],
+
+    exclude_srcs: [
+        "test/com/android/ravenwoodtest/runnercallbacktests/*",
+    ],
+    ravenizer: {
+        strip_mockito: true,
+    },
+    auto_gen_config: true,
+}
diff --git a/ravenwood/tests/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodMainThreadTest.java b/ravenwood/tests/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodMainThreadTest.java
new file mode 100644
index 0000000..68387d7
--- /dev/null
+++ b/ravenwood/tests/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodMainThreadTest.java
@@ -0,0 +1,82 @@
+/*
+ * Copyright (C) 2025 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.ravenwoodtest.coretest;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.junit.Assert.assertThrows;
+import static org.junit.Assert.fail;
+import static org.junit.Assume.assumeTrue;
+
+import android.platform.test.ravenwood.RavenwoodUtils;
+
+import org.junit.Test;
+
+import java.util.concurrent.atomic.AtomicReference;
+
+public class RavenwoodMainThreadTest {
+    private static final boolean RUN_UNSAFE_TESTS =
+            "1".equals(System.getenv("RAVENWOOD_RUN_UNSAFE_TESTS"));
+
+    @Test
+    public void testRunOnMainThread() {
+        AtomicReference<Thread> thr = new AtomicReference<>();
+        RavenwoodUtils.runOnMainThreadSync(() -> {
+            thr.set(Thread.currentThread());
+        });
+        var th = thr.get();
+        assertThat(th).isNotNull();
+        assertThat(th).isNotEqualTo(Thread.currentThread());
+    }
+
+    /**
+     * Sleep a long time on the main thread. This test would then "pass", but Ravenwood
+     * should show the stack traces.
+     *
+     * This is "unsafe" because this test is slow.
+     */
+    @Test
+    public void testUnsafeMainThreadHang() {
+        assumeTrue(RUN_UNSAFE_TESTS);
+
+        // The test should time out.
+        RavenwoodUtils.runOnMainThreadSync(() -> {
+            try {
+                Thread.sleep(30_000);
+            } catch (InterruptedException e) {
+                fail("Interrupted");
+            }
+        });
+    }
+
+    /**
+     * AssertionError on the main thread would be swallowed and reported "normally".
+     * (Other kinds of exceptions would be caught by the unhandled exception handler, and kills
+     * the process)
+     *
+     * This is "unsafe" only because this feature can be disabled via the env var.
+     */
+    @Test
+    public void testUnsafeAssertFailureOnMainThread() {
+        assumeTrue(RUN_UNSAFE_TESTS);
+
+        assertThrows(AssertionError.class, () -> {
+            RavenwoodUtils.runOnMainThreadSync(() -> {
+                fail();
+            });
+        });
+    }
+}
diff --git a/ravenwood/tests/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodReflectorTest.java b/ravenwood/tests/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodReflectorTest.java
new file mode 100644
index 0000000..421fb50
--- /dev/null
+++ b/ravenwood/tests/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodReflectorTest.java
@@ -0,0 +1,63 @@
+/*
+ * Copyright (C) 2025 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.ravenwoodtest.coretest;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import com.android.ravenwood.common.RavenwoodCommonUtils.ReflectedMethod;
+
+import org.junit.Test;
+
+/**
+ * Tests for {@link ReflectedMethod}.
+ */
+public class RavenwoodReflectorTest {
+    /** test target */
+    public class Target {
+        private final int mVar;
+
+        /** test target */
+        public Target(int var) {
+            mVar = var;
+        }
+
+        /** test target */
+        public int foo(int x) {
+            return x + mVar;
+        }
+
+        /** test target */
+        public static int bar(int x) {
+            return x + 1;
+        }
+    }
+
+    /** Test for a non-static method call */
+    @Test
+    public void testNonStatic() {
+        var obj = new Target(5);
+
+        var m = ReflectedMethod.reflectMethod(Target.class, "foo", int.class);
+        assertThat((int) m.call(obj, 2)).isEqualTo(7);
+    }
+
+    /** Test for a static method call */
+    @Test
+    public void testStatic() {
+        var m = ReflectedMethod.reflectMethod(Target.class, "bar", int.class);
+        assertThat((int) m.callStatic(1)).isEqualTo(2);
+    }
+}
diff --git a/ravenwood/tests/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodSystemPropertiesTest.java b/ravenwood/tests/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodSystemPropertiesTest.java
new file mode 100644
index 0000000..454f5a9
--- /dev/null
+++ b/ravenwood/tests/coretest/test/com/android/ravenwoodtest/coretest/RavenwoodSystemPropertiesTest.java
@@ -0,0 +1,65 @@
+/*
+ * Copyright (C) 2025 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.ravenwoodtest.coretest;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.junit.Assert.fail;
+
+import android.os.SystemProperties;
+
+import org.junit.Test;
+
+public class RavenwoodSystemPropertiesTest {
+    @Test
+    public void testRead() {
+        assertThat(SystemProperties.get("ro.board.first_api_level")).isEqualTo("1");
+    }
+
+    @Test
+    public void testWrite() {
+        SystemProperties.set("debug.xxx", "5");
+        assertThat(SystemProperties.get("debug.xxx")).isEqualTo("5");
+    }
+
+    private static void assertException(String expectedMessage, Runnable r) {
+        try {
+            r.run();
+            fail("Excepted exception with message '" + expectedMessage + "' but wasn't thrown");
+        } catch (RuntimeException e) {
+            if (e.getMessage().contains(expectedMessage)) {
+                return;
+            }
+            fail("Excepted exception with message '" + expectedMessage + "' but was '"
+                    + e.getMessage() +  "'");
+        }
+    }
+
+
+    @Test
+    public void testReadDisallowed() {
+        assertException("Read access to system property 'nonexisitent' denied", () -> {
+            SystemProperties.get("nonexisitent");
+        });
+    }
+
+    @Test
+    public void testWriteDisallowed() {
+        assertException("failed to set system property \"ro.board.first_api_level\" ", () -> {
+            SystemProperties.set("ro.board.first_api_level", "2");
+        });
+    }
+}
diff --git a/ravenwood/tests/minimum-test/test/com/android/ravenwoodtest/RavenwoodMinimumTest.java b/ravenwood/tests/minimum-test/test/com/android/ravenwoodtest/RavenwoodMinimumTest.java
index 30abaa2..b1a40f0 100644
--- a/ravenwood/tests/minimum-test/test/com/android/ravenwoodtest/RavenwoodMinimumTest.java
+++ b/ravenwood/tests/minimum-test/test/com/android/ravenwoodtest/RavenwoodMinimumTest.java
@@ -16,28 +16,27 @@
 package com.android.ravenwoodtest;
 
 import android.platform.test.annotations.IgnoreUnderRavenwood;
-import android.platform.test.ravenwood.RavenwoodRule;
 
 import androidx.test.ext.junit.runners.AndroidJUnit4;
 
 import org.junit.Assert;
-import org.junit.Rule;
+import org.junit.Assume;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 
 @RunWith(AndroidJUnit4.class)
 public class RavenwoodMinimumTest {
-    @Rule
-    public final RavenwoodRule mRavenwood = new RavenwoodRule.Builder()
-            .setProcessApp()
-            .build();
-
     @Test
     public void testSimple() {
         Assert.assertTrue(android.os.Process.isApplicationUid(android.os.Process.myUid()));
     }
 
     @Test
+    public void testAssumeNot() {
+        Assume.assumeFalse(android.os.Process.isApplicationUid(android.os.Process.myUid()));
+    }
+
+    @Test
     @IgnoreUnderRavenwood
     public void testIgnored() {
         throw new RuntimeException("Shouldn't be executed under ravenwood");
diff --git a/ravenwood/texts/ravenwood-build.prop b/ravenwood/texts/ravenwood-build.prop
index 37c50f1..512b459 100644
--- a/ravenwood/texts/ravenwood-build.prop
+++ b/ravenwood/texts/ravenwood-build.prop
@@ -8,9 +8,41 @@
 ro.soc.model=Ravenwood
 ro.debuggable=1
 
-# For the graphics stack
-ro.hwui.max_texture_allocation_size=104857600
 persist.sys.locale=en-US
+ro.product.locale=en-US
+
+ro.hwui.max_texture_allocation_size=104857600
+
+# Allowlist control:
+# This set is carefully curated to help identify situations where a test may
+# accidentally depend on a default value of an obscure property whose owner hasn't
+# decided how Ravenwood should behave.
+
+boot.=$$$r
+build.=$$$r
+product.=$$$r
+soc.=$$$r
+system.=$$$r
+wm.debug.=$$$r
+wm.extensions.=$$$r
+
+gsm.version.baseband=$$$r
+no.such.thing=$$$r
+qemu.sf.lcd_density=$$$r
+ro.bootloader=$$$r
+ro.hardware=$$$r
+ro.hw_timeout_multiplier=$$$r
+ro.odm.build.media_performance_class=$$$r
+ro.sf.lcd_density=$$$r
+ro.treble.enabled=$$$r
+ro.vndk.version=$$$r
+ro.icu.data.path=$$$r
+
+# Writable keys
+debug.=$$$w
+
+# For PropertyInvalidatedCache
+cache_key.=$$$w
 
 # The ones starting with "ro.product" or "ro.build" will be copied to all "partitions" too.
 # See RavenwoodSystemProperties.
diff --git a/ravenwood/texts/ravenwood-services-jarjar-rules.txt b/ravenwood/texts/ravenwood-services-jarjar-rules.txt
index 8fdd340..64a0e25 100644
--- a/ravenwood/texts/ravenwood-services-jarjar-rules.txt
+++ b/ravenwood/texts/ravenwood-services-jarjar-rules.txt
@@ -5,7 +5,7 @@
 
 # Rename all other service internals so that tests can continue to statically
 # link services code when owners aren't ready to support on Ravenwood
-rule com.android.server.** repackaged.@0
+rule com.android.server.** repackaged.services.@0
 
 # TODO: support AIDL generated Parcelables via hoststubgen
-rule android.hardware.power.stats.** repackaged.@0
+rule android.hardware.power.stats.** repackaged.services.@0
diff --git a/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/FilterRemapper.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/FilterRemapper.kt
index c5a2f9f..bba4681 100644
--- a/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/FilterRemapper.kt
+++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/FilterRemapper.kt
@@ -15,6 +15,7 @@
  */
 package com.android.hoststubgen.filters
 
+import com.android.hoststubgen.log
 import org.objectweb.asm.commons.Remapper
 
 /**
@@ -23,19 +24,25 @@
 class FilterRemapper(val filter: OutputFilter) : Remapper() {
     private val cache = mutableMapOf<String, String>()
 
-    override fun mapType(typeInternalName: String?): String? {
+
+    override fun map(typeInternalName: String?): String? {
         if (typeInternalName == null) {
             return null
         }
 
         cache[typeInternalName]?.let {
+            // log.d("Cached rename from $typeInternalName to $it")
             return it
         }
 
-        var mapped = filter.remapType(typeInternalName) ?: typeInternalName
+        var mapped = filter.remapType(typeInternalName)
+        if (mapped != null) {
+            log.d("Renaming type $typeInternalName to $mapped")
+        } else {
+            // log.d("Not renaming type $typeInternalName")
+        }
+        mapped = mapped ?: typeInternalName
         cache[typeInternalName] = mapped
         return mapped
     }
-
-    // TODO Do we need to implement mapPackage(), etc too?
 }
\ No newline at end of file
diff --git a/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/TextFilePolicyRemapperFilter.kt b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/TextFilePolicyRemapperFilter.kt
index a78c655..bc90d12 100644
--- a/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/TextFilePolicyRemapperFilter.kt
+++ b/ravenwood/tools/hoststubgen/src/com/android/hoststubgen/filters/TextFilePolicyRemapperFilter.kt
@@ -15,7 +15,6 @@
  */
 package com.android.hoststubgen.filters
 
-import com.android.hoststubgen.log
 import java.util.regex.Pattern
 
 /**
@@ -34,17 +33,12 @@
         val typeInternalNamePrefix: String,
     )
 
-    private val cache = mutableMapOf<String, String>()
-
     override fun remapType(className: String): String? {
-        var mapped: String = className
         typeRenameSpecs.forEach {
             if (it.typeInternalNamePattern.matcher(className).matches()) {
-                mapped = it.typeInternalNamePrefix + className
-                log.d("Renaming type $className to $mapped")
+                return it.typeInternalNamePrefix + className
             }
         }
-        cache[className] = mapped
-        return mapped
+        return null
     }
 }
diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output.RELEASE_TARGET_JAVA_21/01-hoststubgen-test-tiny-framework-orig-dump.txt b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output.RELEASE_TARGET_JAVA_21/01-hoststubgen-test-tiny-framework-orig-dump.txt
index 635f66d..e846d6e 100644
--- a/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output.RELEASE_TARGET_JAVA_21/01-hoststubgen-test-tiny-framework-orig-dump.txt
+++ b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output.RELEASE_TARGET_JAVA_21/01-hoststubgen-test-tiny-framework-orig-dump.txt
@@ -3198,7 +3198,7 @@
   flags: (0x0021) ACC_PUBLIC, ACC_SUPER
   this_class: #x                         // com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller
   super_class: #x                         // java/lang/Object
-  interfaces: 0, fields: 0, methods: 2, attributes: 2
+  interfaces: 0, fields: 0, methods: 3, attributes: 2
 Constant pool:
 {
   public com.android.hoststubgen.test.tinyframework.TinyFrameworkRenamedClassCaller();
@@ -3229,6 +3229,22 @@
       LocalVariableTable:
         Start  Length  Slot  Name   Signature
             0      12     0 value   I
+
+  public static int bar(int);
+    descriptor: (I)I
+    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
+    Code:
+      stack=2, locals=1, args_size=1
+         x: iload_0
+         x: invokestatic  #x                 // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.getArray:(I)[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+         x: iconst_0
+         x: aaload
+         x: invokevirtual #x                 // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.getValue:()I
+         x: ireturn
+      LineNumberTable:
+      LocalVariableTable:
+        Start  Length  Slot  Name   Signature
+            0      10     0 value   I
 }
 SourceFile: "TinyFrameworkRenamedClassCaller.java"
 RuntimeInvisibleAnnotations:
@@ -3242,7 +3258,7 @@
   flags: (0x0021) ACC_PUBLIC, ACC_SUPER
   this_class: #x                          // com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
   super_class: #x                         // java/lang/Object
-  interfaces: 0, fields: 1, methods: 2, attributes: 2
+  interfaces: 0, fields: 1, methods: 3, attributes: 2
 Constant pool:
 {
   private final int mValue;
@@ -3278,6 +3294,26 @@
       LocalVariableTable:
         Start  Length  Slot  Name   Signature
             0       5     0  this   Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+
+  public static com.android.hoststubgen.test.tinyframework.TinyFrameworkToBeRenamed[] getArray(int);
+    descriptor: (I)[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
+    Code:
+      stack=6, locals=1, args_size=1
+         x: iconst_1
+         x: anewarray     #x                  // class com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+         x: dup
+         x: iconst_0
+         x: new           #x                  // class com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+         x: dup
+        x: iload_0
+        x: invokespecial #x                 // Method "<init>":(I)V
+        x: aastore
+        x: areturn
+      LineNumberTable:
+      LocalVariableTable:
+        Start  Length  Slot  Name   Signature
+            0      16     0 value   I
 }
 SourceFile: "TinyFrameworkToBeRenamed.java"
 RuntimeInvisibleAnnotations:
diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output.RELEASE_TARGET_JAVA_21/03-hoststubgen-test-tiny-framework-host-dump.txt b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output.RELEASE_TARGET_JAVA_21/03-hoststubgen-test-tiny-framework-host-dump.txt
index 51a3355..be95fe0 100644
--- a/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output.RELEASE_TARGET_JAVA_21/03-hoststubgen-test-tiny-framework-host-dump.txt
+++ b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output.RELEASE_TARGET_JAVA_21/03-hoststubgen-test-tiny-framework-host-dump.txt
@@ -3392,7 +3392,7 @@
   flags: (0x0021) ACC_PUBLIC, ACC_SUPER
   this_class: #x                          // com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller
   super_class: #x                         // java/lang/Object
-  interfaces: 0, fields: 0, methods: 2, attributes: 3
+  interfaces: 0, fields: 0, methods: 3, attributes: 3
 Constant pool:
 {
   public com.android.hoststubgen.test.tinyframework.TinyFrameworkRenamedClassCaller();
@@ -3429,6 +3429,25 @@
     RuntimeVisibleAnnotations:
       x: #x()
         com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep
+
+  public static int bar(int);
+    descriptor: (I)I
+    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
+    Code:
+      stack=2, locals=1, args_size=1
+         x: iload_0
+         x: invokestatic  #x                 // Method rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.getArray:(I)[Lrename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+         x: iconst_0
+         x: aaload
+         x: invokevirtual #x                 // Method rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.getValue:()I
+         x: ireturn
+      LineNumberTable:
+      LocalVariableTable:
+        Start  Length  Slot  Name   Signature
+            0      10     0 value   I
+    RuntimeVisibleAnnotations:
+      x: #x()
+        com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep
 }
 SourceFile: "TinyFrameworkRenamedClassCaller.java"
 RuntimeVisibleAnnotations:
@@ -3867,7 +3886,7 @@
   flags: (0x0021) ACC_PUBLIC, ACC_SUPER
   this_class: #x                          // rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
   super_class: #x                         // java/lang/Object
-  interfaces: 0, fields: 1, methods: 2, attributes: 3
+  interfaces: 0, fields: 1, methods: 3, attributes: 3
 Constant pool:
 {
   private final int mValue;
@@ -3891,7 +3910,7 @@
       LineNumberTable:
       LocalVariableTable:
         Start  Length  Slot  Name   Signature
-            0      10     0  this   Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+            0      10     0  this   Lrename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
             0      10     1 value   I
     RuntimeVisibleAnnotations:
       x: #x()
@@ -3908,7 +3927,30 @@
       LineNumberTable:
       LocalVariableTable:
         Start  Length  Slot  Name   Signature
-            0       5     0  this   Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+            0       5     0  this   Lrename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+    RuntimeVisibleAnnotations:
+      x: #x()
+        com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep
+
+  public static rename_prefix.com.android.hoststubgen.test.tinyframework.TinyFrameworkToBeRenamed[] getArray(int);
+    descriptor: (I)[Lrename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
+    Code:
+      stack=6, locals=1, args_size=1
+         x: iconst_1
+         x: anewarray     #x                  // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+         x: dup
+         x: iconst_0
+         x: new           #x                  // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+         x: dup
+        x: iload_0
+        x: invokespecial #x                 // Method "<init>":(I)V
+        x: aastore
+        x: areturn
+      LineNumberTable:
+      LocalVariableTable:
+        Start  Length  Slot  Name   Signature
+            0      16     0 value   I
     RuntimeVisibleAnnotations:
       x: #x()
         com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep
diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output.RELEASE_TARGET_JAVA_21/13-hoststubgen-test-tiny-framework-host-ext-dump.txt b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output.RELEASE_TARGET_JAVA_21/13-hoststubgen-test-tiny-framework-host-ext-dump.txt
index a466a2e..667981f 100644
--- a/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output.RELEASE_TARGET_JAVA_21/13-hoststubgen-test-tiny-framework-host-ext-dump.txt
+++ b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output.RELEASE_TARGET_JAVA_21/13-hoststubgen-test-tiny-framework-host-ext-dump.txt
@@ -4241,7 +4241,7 @@
   flags: (0x0021) ACC_PUBLIC, ACC_SUPER
   this_class: #x                          // com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller
   super_class: #x                         // java/lang/Object
-  interfaces: 0, fields: 0, methods: 3, attributes: 3
+  interfaces: 0, fields: 0, methods: 4, attributes: 3
 Constant pool:
 {
   private static {};
@@ -4298,6 +4298,30 @@
     RuntimeVisibleAnnotations:
       x: #x()
         com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep
+
+  public static int bar(int);
+    descriptor: (I)I
+    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
+    Code:
+      stack=4, locals=1, args_size=1
+         x: ldc           #x                  // class com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller
+         x: ldc           #x                 // String bar
+         x: ldc           #x                 // String (I)I
+         x: ldc           #x                 // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall
+         x: invokestatic  #x                 // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
+        x: iload_0
+        x: invokestatic  #x                 // Method rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.getArray:(I)[Lrename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+        x: iconst_0
+        x: aaload
+        x: invokevirtual #x                 // Method rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.getValue:()I
+        x: ireturn
+      LineNumberTable:
+      LocalVariableTable:
+        Start  Length  Slot  Name   Signature
+           11      10     0 value   I
+    RuntimeVisibleAnnotations:
+      x: #x()
+        com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep
 }
 SourceFile: "TinyFrameworkRenamedClassCaller.java"
 RuntimeVisibleAnnotations:
@@ -4947,7 +4971,7 @@
   flags: (0x0021) ACC_PUBLIC, ACC_SUPER
   this_class: #x                          // rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
   super_class: #x                         // java/lang/Object
-  interfaces: 0, fields: 1, methods: 3, attributes: 3
+  interfaces: 0, fields: 1, methods: 4, attributes: 3
 Constant pool:
 {
   private final int mValue;
@@ -4962,8 +4986,8 @@
     flags: (0x000a) ACC_PRIVATE, ACC_STATIC
     Code:
       stack=2, locals=0, args_size=0
-         x: ldc           #x                  // class com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
-         x: ldc           #x                 // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded
+         x: ldc           #x                  // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+         x: ldc           #x                  // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded
          x: invokestatic  #x                 // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V
          x: return
 
@@ -4972,7 +4996,7 @@
     flags: (0x0001) ACC_PUBLIC
     Code:
       stack=4, locals=2, args_size=2
-         x: ldc           #x                  // class com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+         x: ldc           #x                  // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
          x: ldc           #x                 // String <init>
          x: ldc           #x                 // String (I)V
          x: ldc           #x                 // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall
@@ -4986,7 +5010,7 @@
       LineNumberTable:
       LocalVariableTable:
         Start  Length  Slot  Name   Signature
-           11      10     0  this   Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+           11      10     0  this   Lrename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
            11      10     1 value   I
     RuntimeVisibleAnnotations:
       x: #x()
@@ -4997,7 +5021,7 @@
     flags: (0x0001) ACC_PUBLIC
     Code:
       stack=4, locals=1, args_size=1
-         x: ldc           #x                  // class com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+         x: ldc           #x                  // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
          x: ldc           #x                 // String getValue
          x: ldc           #x                 // String ()I
          x: ldc           #x                 // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall
@@ -5008,7 +5032,35 @@
       LineNumberTable:
       LocalVariableTable:
         Start  Length  Slot  Name   Signature
-           11       5     0  this   Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+           11       5     0  this   Lrename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+    RuntimeVisibleAnnotations:
+      x: #x()
+        com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep
+
+  public static rename_prefix.com.android.hoststubgen.test.tinyframework.TinyFrameworkToBeRenamed[] getArray(int);
+    descriptor: (I)[Lrename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
+    Code:
+      stack=6, locals=1, args_size=1
+         x: ldc           #x                  // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+         x: ldc           #x                 // String getArray
+         x: ldc           #x                 // String (I)[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+         x: ldc           #x                 // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall
+         x: invokestatic  #x                 // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
+        x: iconst_1
+        x: anewarray     #x                  // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+        x: dup
+        x: iconst_0
+        x: new           #x                  // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+        x: dup
+        x: iload_0
+        x: invokespecial #x                 // Method "<init>":(I)V
+        x: aastore
+        x: areturn
+      LineNumberTable:
+      LocalVariableTable:
+        Start  Length  Slot  Name   Signature
+           11      16     0 value   I
     RuntimeVisibleAnnotations:
       x: #x()
         com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep
diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/01-hoststubgen-test-tiny-framework-orig-dump.txt b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/01-hoststubgen-test-tiny-framework-orig-dump.txt
index 78341d7..8f56f0e 100644
--- a/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/01-hoststubgen-test-tiny-framework-orig-dump.txt
+++ b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/01-hoststubgen-test-tiny-framework-orig-dump.txt
@@ -3219,7 +3219,7 @@
   flags: (0x0021) ACC_PUBLIC, ACC_SUPER
   this_class: #x                         // com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller
   super_class: #x                         // java/lang/Object
-  interfaces: 0, fields: 0, methods: 2, attributes: 2
+  interfaces: 0, fields: 0, methods: 3, attributes: 2
 Constant pool:
 {
   public com.android.hoststubgen.test.tinyframework.TinyFrameworkRenamedClassCaller();
@@ -3250,6 +3250,22 @@
       LocalVariableTable:
         Start  Length  Slot  Name   Signature
             0      12     0 value   I
+
+  public static int bar(int);
+    descriptor: (I)I
+    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
+    Code:
+      stack=2, locals=1, args_size=1
+         x: iload_0
+         x: invokestatic  #x                 // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.getArray:(I)[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+         x: iconst_0
+         x: aaload
+         x: invokevirtual #x                 // Method com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.getValue:()I
+         x: ireturn
+      LineNumberTable:
+      LocalVariableTable:
+        Start  Length  Slot  Name   Signature
+            0      10     0 value   I
 }
 SourceFile: "TinyFrameworkRenamedClassCaller.java"
 RuntimeInvisibleAnnotations:
@@ -3263,7 +3279,7 @@
   flags: (0x0021) ACC_PUBLIC, ACC_SUPER
   this_class: #x                          // com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
   super_class: #x                         // java/lang/Object
-  interfaces: 0, fields: 1, methods: 2, attributes: 2
+  interfaces: 0, fields: 1, methods: 3, attributes: 2
 Constant pool:
 {
   private final int mValue;
@@ -3299,6 +3315,26 @@
       LocalVariableTable:
         Start  Length  Slot  Name   Signature
             0       5     0  this   Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+
+  public static com.android.hoststubgen.test.tinyframework.TinyFrameworkToBeRenamed[] getArray(int);
+    descriptor: (I)[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
+    Code:
+      stack=6, locals=1, args_size=1
+         x: iconst_1
+         x: anewarray     #x                  // class com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+         x: dup
+         x: iconst_0
+         x: new           #x                  // class com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+         x: dup
+        x: iload_0
+        x: invokespecial #x                 // Method "<init>":(I)V
+        x: aastore
+        x: areturn
+      LineNumberTable:
+      LocalVariableTable:
+        Start  Length  Slot  Name   Signature
+            0      16     0 value   I
 }
 SourceFile: "TinyFrameworkToBeRenamed.java"
 RuntimeInvisibleAnnotations:
diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/03-hoststubgen-test-tiny-framework-host-dump.txt b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/03-hoststubgen-test-tiny-framework-host-dump.txt
index 2e0b182..c918bf8 100644
--- a/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/03-hoststubgen-test-tiny-framework-host-dump.txt
+++ b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/03-hoststubgen-test-tiny-framework-host-dump.txt
@@ -3422,7 +3422,7 @@
   flags: (0x0021) ACC_PUBLIC, ACC_SUPER
   this_class: #x                          // com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller
   super_class: #x                         // java/lang/Object
-  interfaces: 0, fields: 0, methods: 2, attributes: 3
+  interfaces: 0, fields: 0, methods: 3, attributes: 3
 Constant pool:
 {
   public com.android.hoststubgen.test.tinyframework.TinyFrameworkRenamedClassCaller();
@@ -3459,6 +3459,25 @@
     RuntimeVisibleAnnotations:
       x: #x()
         com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep
+
+  public static int bar(int);
+    descriptor: (I)I
+    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
+    Code:
+      stack=2, locals=1, args_size=1
+         x: iload_0
+         x: invokestatic  #x                 // Method rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.getArray:(I)[Lrename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+         x: iconst_0
+         x: aaload
+         x: invokevirtual #x                 // Method rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.getValue:()I
+         x: ireturn
+      LineNumberTable:
+      LocalVariableTable:
+        Start  Length  Slot  Name   Signature
+            0      10     0 value   I
+    RuntimeVisibleAnnotations:
+      x: #x()
+        com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep
 }
 SourceFile: "TinyFrameworkRenamedClassCaller.java"
 RuntimeVisibleAnnotations:
@@ -3897,7 +3916,7 @@
   flags: (0x0021) ACC_PUBLIC, ACC_SUPER
   this_class: #x                          // rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
   super_class: #x                         // java/lang/Object
-  interfaces: 0, fields: 1, methods: 2, attributes: 3
+  interfaces: 0, fields: 1, methods: 3, attributes: 3
 Constant pool:
 {
   private final int mValue;
@@ -3921,7 +3940,7 @@
       LineNumberTable:
       LocalVariableTable:
         Start  Length  Slot  Name   Signature
-            0      10     0  this   Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+            0      10     0  this   Lrename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
             0      10     1 value   I
     RuntimeVisibleAnnotations:
       x: #x()
@@ -3938,7 +3957,30 @@
       LineNumberTable:
       LocalVariableTable:
         Start  Length  Slot  Name   Signature
-            0       5     0  this   Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+            0       5     0  this   Lrename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+    RuntimeVisibleAnnotations:
+      x: #x()
+        com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep
+
+  public static rename_prefix.com.android.hoststubgen.test.tinyframework.TinyFrameworkToBeRenamed[] getArray(int);
+    descriptor: (I)[Lrename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
+    Code:
+      stack=6, locals=1, args_size=1
+         x: iconst_1
+         x: anewarray     #x                  // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+         x: dup
+         x: iconst_0
+         x: new           #x                  // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+         x: dup
+        x: iload_0
+        x: invokespecial #x                 // Method "<init>":(I)V
+        x: aastore
+        x: areturn
+      LineNumberTable:
+      LocalVariableTable:
+        Start  Length  Slot  Name   Signature
+            0      16     0 value   I
     RuntimeVisibleAnnotations:
       x: #x()
         com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep
diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/13-hoststubgen-test-tiny-framework-host-ext-dump.txt b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/13-hoststubgen-test-tiny-framework-host-ext-dump.txt
index 51f7925..28065bf 100644
--- a/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/13-hoststubgen-test-tiny-framework-host-ext-dump.txt
+++ b/ravenwood/tools/hoststubgen/test-tiny-framework/golden-output/13-hoststubgen-test-tiny-framework-host-ext-dump.txt
@@ -4271,7 +4271,7 @@
   flags: (0x0021) ACC_PUBLIC, ACC_SUPER
   this_class: #x                          // com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller
   super_class: #x                         // java/lang/Object
-  interfaces: 0, fields: 0, methods: 3, attributes: 3
+  interfaces: 0, fields: 0, methods: 4, attributes: 3
 Constant pool:
 {
   private static {};
@@ -4328,6 +4328,30 @@
     RuntimeVisibleAnnotations:
       x: #x()
         com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep
+
+  public static int bar(int);
+    descriptor: (I)I
+    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
+    Code:
+      stack=4, locals=1, args_size=1
+         x: ldc           #x                  // class com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller
+         x: ldc           #x                 // String bar
+         x: ldc           #x                 // String (I)I
+         x: ldc           #x                 // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall
+         x: invokestatic  #x                 // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
+        x: iload_0
+        x: invokestatic  #x                 // Method rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.getArray:(I)[Lrename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+        x: iconst_0
+        x: aaload
+        x: invokevirtual #x                 // Method rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.getValue:()I
+        x: ireturn
+      LineNumberTable:
+      LocalVariableTable:
+        Start  Length  Slot  Name   Signature
+           11      10     0 value   I
+    RuntimeVisibleAnnotations:
+      x: #x()
+        com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep
 }
 SourceFile: "TinyFrameworkRenamedClassCaller.java"
 RuntimeVisibleAnnotations:
@@ -4977,7 +5001,7 @@
   flags: (0x0021) ACC_PUBLIC, ACC_SUPER
   this_class: #x                          // rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
   super_class: #x                         // java/lang/Object
-  interfaces: 0, fields: 1, methods: 3, attributes: 3
+  interfaces: 0, fields: 1, methods: 4, attributes: 3
 Constant pool:
 {
   private final int mValue;
@@ -4992,8 +5016,8 @@
     flags: (0x000a) ACC_PRIVATE, ACC_STATIC
     Code:
       stack=2, locals=0, args_size=0
-         x: ldc           #x                  // class com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
-         x: ldc           #x                 // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded
+         x: ldc           #x                  // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+         x: ldc           #x                  // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded
          x: invokestatic  #x                 // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V
          x: return
 
@@ -5002,7 +5026,7 @@
     flags: (0x0001) ACC_PUBLIC
     Code:
       stack=4, locals=2, args_size=2
-         x: ldc           #x                  // class com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+         x: ldc           #x                  // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
          x: ldc           #x                 // String <init>
          x: ldc           #x                 // String (I)V
          x: ldc           #x                 // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall
@@ -5016,7 +5040,7 @@
       LineNumberTable:
       LocalVariableTable:
         Start  Length  Slot  Name   Signature
-           11      10     0  this   Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+           11      10     0  this   Lrename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
            11      10     1 value   I
     RuntimeVisibleAnnotations:
       x: #x()
@@ -5027,7 +5051,7 @@
     flags: (0x0001) ACC_PUBLIC
     Code:
       stack=4, locals=1, args_size=1
-         x: ldc           #x                  // class com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+         x: ldc           #x                  // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
          x: ldc           #x                 // String getValue
          x: ldc           #x                 // String ()I
          x: ldc           #x                 // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall
@@ -5038,7 +5062,35 @@
       LineNumberTable:
       LocalVariableTable:
         Start  Length  Slot  Name   Signature
-           11       5     0  this   Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+           11       5     0  this   Lrename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+    RuntimeVisibleAnnotations:
+      x: #x()
+        com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep
+
+  public static rename_prefix.com.android.hoststubgen.test.tinyframework.TinyFrameworkToBeRenamed[] getArray(int);
+    descriptor: (I)[Lrename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
+    Code:
+      stack=6, locals=1, args_size=1
+         x: ldc           #x                  // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+         x: ldc           #x                 // String getArray
+         x: ldc           #x                 // String (I)[Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed;
+         x: ldc           #x                 // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall
+         x: invokestatic  #x                 // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
+        x: iconst_1
+        x: anewarray     #x                  // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+        x: dup
+        x: iconst_0
+        x: new           #x                  // class rename_prefix/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed
+        x: dup
+        x: iload_0
+        x: invokespecial #x                 // Method "<init>":(I)V
+        x: aastore
+        x: areturn
+      LineNumberTable:
+      LocalVariableTable:
+        Start  Length  Slot  Name   Signature
+           11      16     0 value   I
     RuntimeVisibleAnnotations:
       x: #x()
         com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep
diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller.java
index 707bc0e..74e4610 100644
--- a/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller.java
+++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkRenamedClassCaller.java
@@ -25,4 +25,9 @@
         // so this code should work as-is.
         return new TinyFrameworkToBeRenamed(value).getValue();
     }
+
+    /** Calls the class that'll be renamed. */
+    public static int bar(int value) {
+        return TinyFrameworkToBeRenamed.getArray(value)[0].getValue();
+    }
 }
diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.java
index 8319ced..7dcc83e 100644
--- a/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.java
+++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-framework/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkToBeRenamed.java
@@ -31,4 +31,8 @@
     public int getValue() {
         return mValue;
     }
+
+    public static TinyFrameworkToBeRenamed[] getArray(int value) {
+        return new TinyFrameworkToBeRenamed[] { new TinyFrameworkToBeRenamed(value) };
+    }
 }
diff --git a/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassTest.java b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassTest.java
index 68673dc..b8d6be4 100644
--- a/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassTest.java
+++ b/ravenwood/tools/hoststubgen/test-tiny-framework/tiny-test/src/com/android/hoststubgen/test/tinyframework/TinyFrameworkClassTest.java
@@ -308,6 +308,11 @@
     }
 
     @Test
+    public void testTypeRenameArray() {
+        assertThat(TinyFrameworkRenamedClassCaller.bar(2)).isEqualTo(2);
+    }
+
+    @Test
     public void testMethodCallReplaceNonStatic() throws Exception {
         assertThat(TinyFrameworkMethodCallReplace.nonStaticMethodCallReplaceTester())
                 .isEqualTo(true);
diff --git a/services/accessibility/java/com/android/server/accessibility/AbstractAccessibilityServiceConnection.java b/services/accessibility/java/com/android/server/accessibility/AbstractAccessibilityServiceConnection.java
index 4b04248..47aa8f5 100644
--- a/services/accessibility/java/com/android/server/accessibility/AbstractAccessibilityServiceConnection.java
+++ b/services/accessibility/java/com/android/server/accessibility/AbstractAccessibilityServiceConnection.java
@@ -1115,14 +1115,12 @@
         if (svcConnTracingEnabled()) {
             logTraceSvcConn("performGlobalAction", "action=" + action);
         }
-        int currentUserId;
         synchronized (mLock) {
             if (!hasRightsToCurrentUserLocked()) {
                 return false;
             }
-            currentUserId = mSystemSupport.getCurrentUserIdLocked();
         }
-        enforceCurrentUserIfVisibleBackgroundEnabled(currentUserId);
+        enforceCurrentUserIfVisibleBackgroundEnabled();
         final long identity = Binder.clearCallingIdentity();
         try {
             return mSystemActionPerformer.performSystemAction(action);
@@ -2791,11 +2789,7 @@
     @RequiresNoPermission
     @Override
     public void setAnimationScale(float scale) {
-        int currentUserId;
-        synchronized (mLock) {
-            currentUserId = mSystemSupport.getCurrentUserIdLocked();
-        }
-        enforceCurrentUserIfVisibleBackgroundEnabled(currentUserId);
+        enforceCurrentUserIfVisibleBackgroundEnabled();
         final long identity = Binder.clearCallingIdentity();
         try {
             Settings.Global.putFloat(
diff --git a/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java b/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
index 9eb8442..42834ce 100644
--- a/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
+++ b/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
@@ -1402,11 +1402,7 @@
     @EnforcePermission(MANAGE_ACCESSIBILITY)
     public void registerSystemAction(RemoteAction action, int actionId) {
         registerSystemAction_enforcePermission();
-        int currentUserId;
-        synchronized (mLock) {
-            currentUserId = mCurrentUserId;
-        }
-        enforceCurrentUserIfVisibleBackgroundEnabled(currentUserId);
+        enforceCurrentUserIfVisibleBackgroundEnabled();
         if (mTraceManager.isA11yTracingEnabledForTypes(FLAGS_ACCESSIBILITY_MANAGER)) {
             mTraceManager.logTrace(LOG_TAG + ".registerSystemAction",
                     FLAGS_ACCESSIBILITY_MANAGER, "action=" + action + ";actionId=" + actionId);
@@ -1423,11 +1419,7 @@
     @EnforcePermission(MANAGE_ACCESSIBILITY)
     public void unregisterSystemAction(int actionId) {
         unregisterSystemAction_enforcePermission();
-        int currentUserId;
-        synchronized (mLock) {
-            currentUserId = mCurrentUserId;
-        }
-        enforceCurrentUserIfVisibleBackgroundEnabled(currentUserId);
+        enforceCurrentUserIfVisibleBackgroundEnabled();
         if (mTraceManager.isA11yTracingEnabledForTypes(FLAGS_ACCESSIBILITY_MANAGER)) {
             mTraceManager.logTrace(LOG_TAG + ".unregisterSystemAction",
                     FLAGS_ACCESSIBILITY_MANAGER, "actionId=" + actionId);
@@ -1759,7 +1751,7 @@
         synchronized (mLock) {
             currentUserId = mCurrentUserId;
         }
-        enforceCurrentUserIfVisibleBackgroundEnabled(currentUserId);
+        enforceCurrentUserIfVisibleBackgroundEnabled();
         if (mTraceManager.isA11yTracingEnabledForTypes(FLAGS_ACCESSIBILITY_MANAGER)) {
             mTraceManager.logTrace(LOG_TAG + ".notifyAccessibilityButtonClicked",
                     FLAGS_ACCESSIBILITY_MANAGER,
@@ -1807,11 +1799,7 @@
     @EnforcePermission(STATUS_BAR_SERVICE)
     public void notifyAccessibilityButtonVisibilityChanged(boolean shown) {
         notifyAccessibilityButtonVisibilityChanged_enforcePermission();
-        int currentUserId;
-        synchronized (mLock) {
-            currentUserId = mCurrentUserId;
-        }
-        enforceCurrentUserIfVisibleBackgroundEnabled(currentUserId);
+        enforceCurrentUserIfVisibleBackgroundEnabled();
         if (mTraceManager.isA11yTracingEnabledForTypes(FLAGS_ACCESSIBILITY_MANAGER)) {
             mTraceManager.logTrace(LOG_TAG + ".notifyAccessibilityButtonVisibilityChanged",
                     FLAGS_ACCESSIBILITY_MANAGER, "shown=" + shown);
@@ -2149,9 +2137,6 @@
                         this, 0, oldUserState.mUserId));
             }
 
-            // Announce user changes only if more than one exist.
-            final boolean announceNewUser = mUserManager.getUsers().size() > 1;
-
             // The user changed.
             mCurrentUserId = userId;
             AccessibilityUserState userState = getCurrentUserStateLocked();
@@ -2178,13 +2163,6 @@
             // As an initialization step, update the shortcuts for the current user.
             updateShortcutsForCurrentNavigationMode();
 
-            if (announceNewUser) {
-                // Schedule announcement of the current user if needed.
-                mMainHandler.sendMessageDelayed(
-                        obtainMessage(AccessibilityManagerService::announceNewUserIfNeeded, this),
-                        WAIT_FOR_USER_STATE_FULLY_INITIALIZED_MILLIS);
-            }
-
             for (IUserInitializationCompleteCallback callback
                     : mUserInitializationCompleteCallbacks) {
                 try {
@@ -2198,20 +2176,6 @@
         }
     }
 
-    private void announceNewUserIfNeeded() {
-        synchronized (mLock) {
-            AccessibilityUserState userState = getCurrentUserStateLocked();
-            if (userState.isHandlingAccessibilityEventsLocked()) {
-                String message = mContext.getString(R.string.user_switched,
-                        mUserManager.getUserInfo(mCurrentUserId).name);
-                AccessibilityEvent event = AccessibilityEvent.obtain(
-                        AccessibilityEvent.TYPE_ANNOUNCEMENT);
-                event.getText().add(message);
-                sendAccessibilityEventLocked(event, mCurrentUserId);
-            }
-        }
-    }
-
     private void unlockUser(int userId) {
         synchronized (mLock) {
             int parentUserId = mSecurityPolicy.resolveProfileParentLocked(userId);
@@ -5002,11 +4966,7 @@
             throws RemoteException {
         registerProxyForDisplay_enforcePermission();
         mSecurityPolicy.checkForAccessibilityPermissionOrRole();
-        int currentUserId;
-        synchronized (mLock) {
-            currentUserId = mCurrentUserId;
-        }
-        enforceCurrentUserIfVisibleBackgroundEnabled(currentUserId);
+        enforceCurrentUserIfVisibleBackgroundEnabled();
         if (client == null) {
             return false;
         }
diff --git a/services/accessibility/java/com/android/server/accessibility/autoclick/AutoclickController.java b/services/accessibility/java/com/android/server/accessibility/autoclick/AutoclickController.java
index aa82df4..bb3c710 100644
--- a/services/accessibility/java/com/android/server/accessibility/autoclick/AutoclickController.java
+++ b/services/accessibility/java/com/android/server/accessibility/autoclick/AutoclickController.java
@@ -156,7 +156,7 @@
 
         mWindowManager = mContext.getSystemService(WindowManager.class);
         mAutoclickTypePanel =
-                new AutoclickTypePanel(mContext, mWindowManager, clickPanelController);
+                new AutoclickTypePanel(mContext, mWindowManager, mUserId, clickPanelController);
 
         mAutoclickTypePanel.show();
         mWindowManager.addView(mAutoclickIndicatorView, mAutoclickIndicatorView.getLayoutParams());
@@ -230,6 +230,11 @@
         return Flags.enableAutoclickIndicator() && mAutoclickTypePanel.isPaused();
     }
 
+    @VisibleForTesting
+    void onChangeForTesting(boolean selfChange, Uri uri) {
+        mAutoclickSettingsObserver.onChange(selfChange, uri);
+    }
+
     /**
      * Observes autoclick setting values, and updates ClickScheduler delay and indicator size
      * whenever the setting value changes.
diff --git a/services/accessibility/java/com/android/server/accessibility/autoclick/AutoclickTypePanel.java b/services/accessibility/java/com/android/server/accessibility/autoclick/AutoclickTypePanel.java
index 342675a..ab4b3b1 100644
--- a/services/accessibility/java/com/android/server/accessibility/autoclick/AutoclickTypePanel.java
+++ b/services/accessibility/java/com/android/server/accessibility/autoclick/AutoclickTypePanel.java
@@ -16,6 +16,7 @@
 
 package com.android.server.accessibility.autoclick;
 
+import static android.provider.Settings.Secure.ACCESSIBILITY_AUTOCLICK_PANEL_POSITION;
 import static android.view.WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS;
 
 import android.annotation.IntDef;
@@ -23,6 +24,8 @@
 import android.graphics.PixelFormat;
 import android.graphics.drawable.Drawable;
 import android.graphics.drawable.GradientDrawable;
+import android.provider.Settings;
+import android.text.TextUtils;
 import android.view.Gravity;
 import android.view.LayoutInflater;
 import android.view.MotionEvent;
@@ -52,6 +55,9 @@
     public static final int CORNER_TOP_LEFT = 2;
     public static final int CORNER_TOP_RIGHT = 3;
 
+    // Used to remember and restore panel's position.
+    protected static final String POSITION_DELIMITER = ",";
+
     // Distance between panel and screen edge.
     // TODO(b/396402941): Finalize edge margin.
     private static final int PANEL_EDGE_MARGIN = 15;
@@ -112,6 +118,8 @@
 
     private final WindowManager mWindowManager;
 
+    private final int mUserId;
+
     private WindowManager.LayoutParams mParams;
 
     private final ClickPanelControllerInterface mClickPanelController;
@@ -142,9 +150,11 @@
     public AutoclickTypePanel(
             Context context,
             WindowManager windowManager,
+            int userId,
             ClickPanelControllerInterface clickPanelController) {
         mContext = context;
         mWindowManager = windowManager;
+        mUserId = userId;
         mClickPanelController = clickPanelController;
         mParams = getDefaultLayoutParams();
 
@@ -308,6 +318,9 @@
     }
 
     public void show() {
+        // Restores the panel position from saved settings. If no valid position is saved,
+        // defaults to bottom-right corner.
+        restorePanelPosition();
         mWindowManager.addView(mContentView, mParams);
     }
 
@@ -316,6 +329,9 @@
         // button background styling is correct when the panel shows up next time.
         toggleSelectedButtonStyle(mSelectedButton, /* isSelected= */ false);
 
+        // Save the panel's position when user turns off the autoclick.
+        savePanelPosition();
+
         mWindowManager.removeView(mContentView);
     }
 
@@ -424,6 +440,79 @@
         }
     }
 
+    private void savePanelPosition() {
+        String positionString = TextUtils.join(POSITION_DELIMITER, new String[]{
+                String.valueOf(mParams.gravity),
+                String.valueOf(mParams.x),
+                String.valueOf(mParams.y),
+                String.valueOf(mCurrentCornerIndex)
+        });
+        Settings.Secure.putStringForUser(mContext.getContentResolver(),
+                ACCESSIBILITY_AUTOCLICK_PANEL_POSITION, positionString, mUserId);
+    }
+
+    /**
+     * Restores the panel position from saved settings. If no valid position is saved,
+     * defaults to bottom-right corner.
+     */
+    private void restorePanelPosition() {
+        // Try to get saved position from settings.
+        String savedPosition = Settings.Secure.getStringForUser(mContext.getContentResolver(),
+                ACCESSIBILITY_AUTOCLICK_PANEL_POSITION, mUserId);
+        if (savedPosition == null) {
+            setPanelPositionForCorner(mParams, CORNER_BOTTOM_RIGHT);
+            mCurrentCornerIndex = 0;
+            return;
+        }
+
+        // Parse saved position string in "gravity,x,y,corner" format.
+        String[] parts = TextUtils.split(savedPosition, POSITION_DELIMITER);
+        if (!isValidPositionParts(parts)) {
+            setPanelPositionForCorner(mParams, CORNER_BOTTOM_RIGHT);
+            mCurrentCornerIndex = 0;
+            return;
+        }
+
+        // Restore the saved position values.
+        mParams.gravity = Integer.parseInt(parts[0]);
+        mParams.x = Integer.parseInt(parts[1]);
+        mParams.y = Integer.parseInt(parts[2]);
+        mCurrentCornerIndex = Integer.parseInt(parts[3]);
+    }
+
+    private boolean isValidPositionParts(String[] parts) {
+        // Check basic array validity.
+        if (parts == null || parts.length != 4) {
+            return false;
+        }
+
+        // Parse values after validating they are numbers.
+        int gravity = Integer.parseInt(parts[0]);
+        int x = Integer.parseInt(parts[1]);
+        int y = Integer.parseInt(parts[2]);
+        int cornerIndex = Integer.parseInt(parts[3]);
+
+        // Check gravity is valid (START/END | TOP/BOTTOM).
+        if (gravity != (Gravity.START | Gravity.TOP) && gravity != (Gravity.END | Gravity.TOP)
+                && gravity != (Gravity.START | Gravity.BOTTOM) && gravity != (Gravity.END
+                | Gravity.BOTTOM)) {
+            return false;
+        }
+
+        // Check coordinates are positive and within screen bounds.
+        int screenWidth = mContext.getResources().getDisplayMetrics().widthPixels;
+        int screenHeight = mContext.getResources().getDisplayMetrics().heightPixels;
+        if (x < 0 || x > screenWidth || y < 0 || y > screenHeight) {
+            return false;
+        }
+
+        // Check corner index is valid.
+        if (cornerIndex < 0 || cornerIndex >= 4) {
+            return false;
+        }
+        return true;
+    }
+
     @VisibleForTesting
     boolean getExpansionStateForTesting() {
         return mExpanded;
diff --git a/services/art-profile b/services/art-profile
index 712fca9..2c7e754 100644
--- a/services/art-profile
+++ b/services/art-profile
@@ -49,7 +49,7 @@
 HSPLcom/android/server/AppStateTrackerImpl$MyHandler;->handleUidActive(I)V+]Lcom/android/server/AppStateTrackerImpl$MyHandler;Lcom/android/server/AppStateTrackerImpl$MyHandler;
 HSPLcom/android/server/AppStateTrackerImpl$MyHandler;->handleUidCached(IZ)V+]Lcom/android/server/AppStateTrackerImpl$Listener;Lcom/android/server/AppStateTrackerImpl$1;,Lcom/android/server/alarm/AlarmManagerService$7;,Lcom/android/server/job/controllers/BackgroundJobsController$2;
 HSPLcom/android/server/AppStateTrackerImpl$MyHandler;->removeUid(IZ)V+]Lcom/android/server/AppStateTrackerImpl$MyHandler;Lcom/android/server/AppStateTrackerImpl$MyHandler;
-HPLcom/android/server/AppStateTrackerImpl;->areAlarmsRestrictedByBatterySaver(ILjava/lang/String;)Z+]Landroid/util/SparseSetArray;Landroid/util/SparseSetArray;]Lcom/android/server/AppStateTrackerImpl;Lcom/android/server/AppStateTrackerImpl;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController;
+HSPLcom/android/server/AppStateTrackerImpl;->areAlarmsRestrictedByBatterySaver(ILjava/lang/String;)Z+]Landroid/util/SparseSetArray;Landroid/util/SparseSetArray;]Lcom/android/server/AppStateTrackerImpl;Lcom/android/server/AppStateTrackerImpl;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController;
 HSPLcom/android/server/AppStateTrackerImpl;->areJobsRestricted(ILjava/lang/String;Z)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/util/SparseSetArray;Landroid/util/SparseSetArray;]Lcom/android/server/AppStateTrackerImpl;Lcom/android/server/AppStateTrackerImpl;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController;
 HSPLcom/android/server/AppStateTrackerImpl;->cloneListeners()[Lcom/android/server/AppStateTrackerImpl$Listener;
 HSPLcom/android/server/AppStateTrackerImpl;->findForcedAppStandbyUidPackageIndexLocked(ILjava/lang/String;)I
@@ -57,12 +57,13 @@
 HSPLcom/android/server/AppStateTrackerImpl;->isRunAnyInBackgroundAppOpsAllowed(ILjava/lang/String;)Z+]Lcom/android/server/AppStateTrackerImpl;Lcom/android/server/AppStateTrackerImpl;
 HSPLcom/android/server/AppStateTrackerImpl;->isRunAnyRestrictedLocked(ILjava/lang/String;)Z
 HSPLcom/android/server/AppStateTrackerImpl;->isUidActive(I)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;
-HPLcom/android/server/AppStateTrackerImpl;->isUidPowerSaveUserExempt(I)Z
+HSPLcom/android/server/AppStateTrackerImpl;->isUidPowerSaveUserExempt(I)Z
 HSPLcom/android/server/AppStateTrackerImpl;->setPowerSaveExemptionListAppIds([I[I[I)V+]Lcom/android/server/AppStateTrackerImpl$MyHandler;Lcom/android/server/AppStateTrackerImpl$MyHandler;
 HSPLcom/android/server/BatteryService$Led;->updateLightsLocked()V+]Lcom/android/server/lights/LogicalLight;Lcom/android/server/lights/LightsService$LightImpl;
 HSPLcom/android/server/BatteryService;->processValuesLocked(Z)V+]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/internal/logging/MetricsLogger;Lcom/android/internal/logging/MetricsLogger;
 HSPLcom/android/server/BatteryService;->rateLimitBatteryChangedBroadcast(Z)Z
 HSPLcom/android/server/BatteryService;->sendBatteryChangedIntentLocked(Z)V
+HSPLcom/android/server/BatteryService;->shouldSendBatteryLowLocked()Z
 HSPLcom/android/server/BatteryService;->traceBatteryChangedBroadcastEvent(Landroid/content/Intent;Z)V+]Landroid/content/Intent;Landroid/content/Intent;
 HSPLcom/android/server/BatteryService;->update(Landroid/hardware/health/HealthInfo;)V+]Landroid/os/ConditionVariable;Landroid/os/ConditionVariable;
 HSPLcom/android/server/BinderCallsStatsService$AuthorizedWorkSourceProvider;->getCallingUid()I
@@ -73,6 +74,7 @@
 HSPLcom/android/server/DeviceIdleController;->reportTempWhitelistChangedLocked(IZ)V+]Landroid/content/Context;Landroid/app/ContextImpl;
 HSPLcom/android/server/DeviceIdleController;->updateTempWhitelistAppIdsLocked(IZJIILjava/lang/String;I)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/os/PowerManagerInternal;Lcom/android/server/power/PowerManagerService$LocalService;]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/DropBoxManagerService$EntryFile;->compareTo(Lcom/android/server/DropBoxManagerService$EntryFile;)I
+HSPLcom/android/server/DropBoxManagerService$EntryFile;->compareTo(Ljava/lang/Object;)I
 HSPLcom/android/server/DropBoxManagerService$EntryFile;->getExtension()Ljava/lang/String;
 HSPLcom/android/server/DropBoxManagerService$EntryFile;->getFilename()Ljava/lang/String;
 HSPLcom/android/server/DropBoxManagerService;->addEntry(Ljava/lang/String;Lcom/android/server/DropBoxManagerInternal$EntrySource;I)V+]Lcom/android/server/DropBoxManagerInternal$EntrySource;Lcom/android/server/DropBoxManagerService$SimpleEntrySource;]Lcom/android/server/DropBoxManagerService$DropBoxManagerBroadcastHandler;Lcom/android/server/DropBoxManagerService$DropBoxManagerBroadcastHandler;]Ljava/lang/Thread;Lcom/android/server/IoThread;,Lcom/android/server/ServiceThread;,Lcom/android/server/am/ActivityManagerService$13;,Ljava/lang/Thread;
@@ -114,7 +116,7 @@
 HSPLcom/android/server/StorageManagerService$WatchedUnlockedUsers;->contains(I)Z
 HSPLcom/android/server/StorageManagerService;->getMountModeInternal(ILjava/lang/String;)I+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/internal/app/IAppOpsService;Lcom/android/server/appop/AppOpsService;
 HSPLcom/android/server/StorageManagerService;->getVolumeList(ILjava/lang/String;I)[Landroid/os/storage/StorageVolume;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/storage/VolumeInfo;Landroid/os/storage/VolumeInfo;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/StorageManagerService;Lcom/android/server/StorageManagerService;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;
-HSPLcom/android/server/StorageManagerService;->getVolumes(I)[Landroid/os/storage/VolumeInfo;
+HSPLcom/android/server/StorageManagerService;->getVolumes(I)[Landroid/os/storage/VolumeInfo;+]Lcom/android/server/storage/WatchedVolumeInfo;Lcom/android/server/storage/WatchedVolumeInfo;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;
 HSPLcom/android/server/StorageManagerService;->isCeStorageUnlocked(I)Z+]Lcom/android/server/StorageManagerService$WatchedUnlockedUsers;Lcom/android/server/StorageManagerService$WatchedUnlockedUsers;
 HPLcom/android/server/StorageManagerService;->monitor()V+]Landroid/os/IVold;Landroid/os/IVold$Stub$Proxy;
 HSPLcom/android/server/StorageManagerService;->updateLegacyStorageApps(Ljava/lang/String;IZ)V+]Ljava/util/Set;Landroid/util/ArraySet;
@@ -122,12 +124,12 @@
 HSPLcom/android/server/SystemConfig;->readPermissionAllowlist(Lorg/xmlpull/v1/XmlPullParser;Landroid/util/ArrayMap;Ljava/lang/String;)V
 HSPLcom/android/server/SystemConfig;->readPermissionsFromXml(Lorg/xmlpull/v1/XmlPullParser;Ljava/io/File;I)V
 HSPLcom/android/server/SystemService;->getContext()Landroid/content/Context;
-HSPLcom/android/server/SystemServiceManager;->onUser(Lcom/android/server/utils/TimingsTraceAndSlog;Ljava/lang/String;Lcom/android/server/SystemService$TargetUser;Lcom/android/server/SystemService$TargetUser;Lcom/android/server/SystemService$UserCompletedEventType;)V+]Lcom/android/server/SystemService;megamorphic_types]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;]Ljava/util/concurrent/ExecutorService;Ljava/util/concurrent/ThreadPoolExecutor;
-HSPLcom/android/server/SystemServiceManager;->startBootPhase(Lcom/android/server/utils/TimingsTraceAndSlog;I)V
+HPLcom/android/server/TelephonyRegistry$Record;->matchTelephonyCallbackEvent(I)Z+]Ljava/util/Set;Ljava/util/HashSet;
 HSPLcom/android/server/TelephonyRegistry;->add(Landroid/os/IBinder;IIZ)Lcom/android/server/TelephonyRegistry$Record;+]Landroid/os/IBinder;megamorphic_types]Lcom/android/server/TelephonyRegistry$ConfigurationProvider;Lcom/android/server/TelephonyRegistry$ConfigurationProvider;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/TelephonyRegistry;->listen(ZZLjava/lang/String;Ljava/lang/String;Lcom/android/internal/telephony/IPhoneStateListener;Ljava/util/Set;ZI)V+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/util/IntArray;Landroid/util/IntArray;]Lcom/android/internal/telephony/IPhoneStateListener;Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub;,Landroid/telephony/TelephonyCallback$IPhoneStateListenerStub;,Lcom/android/internal/telephony/IPhoneStateListener$Stub$Proxy;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/Set;Ljava/util/HashSet;
 HSPLcom/android/server/ThreadPriorityBooster;->boost()V+]Ljava/lang/ThreadLocal;Lcom/android/server/ThreadPriorityBooster$1;
 HSPLcom/android/server/ThreadPriorityBooster;->reset()V+]Ljava/lang/ThreadLocal;Lcom/android/server/ThreadPriorityBooster$1;
+HSPLcom/android/server/UiModeManagerService;->updateConfigurationLocked()V+]Lcom/android/server/UiModeManagerService$IntProperty;Lcom/android/server/UiModeManagerService$1;,Lcom/android/server/UiModeManagerService$2;]Lcom/android/server/twilight/TwilightManager;Lcom/android/server/twilight/TwilightService$1;
 HPLcom/android/server/Watchdog$HandlerChecker;->getCompletionStateLocked()I+]Ljava/time/Clock;Landroid/os/SystemClock$1;
 HSPLcom/android/server/Watchdog$HandlerChecker;->isHandlerPolling()Z
 HSPLcom/android/server/Watchdog$HandlerChecker;->run()V+]Lcom/android/server/Watchdog$Monitor;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;
@@ -136,6 +138,7 @@
 HSPLcom/android/server/Watchdog$HandlerCheckerAndTimeout;->customTimeoutMillis()Ljava/util/Optional;
 HPLcom/android/server/Watchdog;->evaluateCheckerCompletionLocked()I+]Lcom/android/server/Watchdog$HandlerChecker;Lcom/android/server/Watchdog$HandlerChecker;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/Watchdog;->run()V
+HSPLcom/android/server/accessibility/AccessibilityManagerService;->getEnabledAccessibilityServiceList(II)Ljava/util/List;+]Lcom/android/server/accessibility/AccessibilitySecurityPolicy;Lcom/android/server/accessibility/AccessibilitySecurityPolicy;]Lcom/android/server/accessibility/AccessibilityServiceConnection;Lcom/android/server/accessibility/AccessibilityServiceConnection;]Lcom/android/server/accessibility/AccessibilityTraceManager;Lcom/android/server/accessibility/AccessibilityTraceManager;]Lcom/android/server/accessibility/ProxyManager;Lcom/android/server/accessibility/ProxyManager;]Lcom/android/server/accessibility/UiAutomationManager;Lcom/android/server/accessibility/UiAutomationManager;]Ljava/util/List;Ljava/util/ArrayList;
 HPLcom/android/server/accounts/AccountManagerService$7;->onResult(Landroid/os/Bundle;)V
 HPLcom/android/server/accounts/AccountManagerService$GetAccountsByTypeAndFeatureSession;-><init>(Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService$UserAccounts;Landroid/accounts/IAccountManagerResponse;Ljava/lang/String;[Ljava/lang/String;ILjava/lang/String;Z)V
 HPLcom/android/server/accounts/AccountManagerService$GetAccountsByTypeAndFeatureSession;->checkAccount()V+]Landroid/accounts/IAccountAuthenticator;Landroid/accounts/IAccountAuthenticator$Stub$Proxy;]Lcom/android/server/accounts/AccountManagerService$GetAccountsByTypeAndFeatureSession;Lcom/android/server/accounts/AccountManagerService$GetAccountsByTypeAndFeatureSession;
@@ -149,13 +152,14 @@
 HPLcom/android/server/accounts/AccountManagerService$Session;->onResult(Landroid/os/Bundle;)V+]Landroid/accounts/IAccountManagerResponse;Landroid/accounts/IAccountManagerResponse$Stub$Proxy;]Lcom/android/server/accounts/AccountManagerService$Session;Lcom/android/server/accounts/AccountManagerService$12;,Lcom/android/server/accounts/AccountManagerService$7;,Lcom/android/server/accounts/AccountManagerService$RemoveAccountSession;
 HPLcom/android/server/accounts/AccountManagerService$Session;->unbind()V+]Landroid/content/Context;Landroid/app/ContextImpl;
 HPLcom/android/server/accounts/AccountManagerService;->accountExistsCache(Lcom/android/server/accounts/AccountManagerService$UserAccounts;Landroid/accounts/Account;)Z+]Ljava/util/HashMap;Ljava/util/LinkedHashMap;
+HPLcom/android/server/accounts/AccountManagerService;->calculatePackageSignatureDigest(Ljava/lang/String;I)[B+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/pm/Signature;Landroid/content/pm/Signature;]Ljava/security/MessageDigest;Ljava/security/MessageDigest$Delegate;
 HPLcom/android/server/accounts/AccountManagerService;->cancelNotification(Lcom/android/server/accounts/AccountManagerService$NotificationId;Ljava/lang/String;Lcom/android/server/accounts/AccountManagerService$UserAccounts;)V+]Landroid/app/INotificationManager;Lcom/android/server/notification/NotificationManagerService$12;,Lcom/android/server/notification/NotificationManagerService$13;]Lcom/android/server/accounts/AccountManagerService$Injector;Lcom/android/server/accounts/AccountManagerService$Injector;
-HPLcom/android/server/accounts/AccountManagerService;->checkPackageSignature(Ljava/lang/String;II)I+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/accounts/IAccountAuthenticatorCache;Lcom/android/server/accounts/AccountAuthenticatorCache;]Ljava/util/Collection;Ljava/util/Collections$UnmodifiableCollection;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1;
+HSPLcom/android/server/accounts/AccountManagerService;->checkPackageSignature(Ljava/lang/String;II)I+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/accounts/IAccountAuthenticatorCache;Lcom/android/server/accounts/AccountAuthenticatorCache;]Ljava/util/Collection;Ljava/util/Collections$UnmodifiableCollection;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1;
 HSPLcom/android/server/accounts/AccountManagerService;->filterAccounts(Lcom/android/server/accounts/AccountManagerService$UserAccounts;[Landroid/accounts/Account;ILjava/lang/String;Z)[Landroid/accounts/Account;+]Ljava/util/Map;Ljava/util/LinkedHashMap;]Ljava/util/Set;Ljava/util/LinkedHashMap$LinkedKeySet;
 HSPLcom/android/server/accounts/AccountManagerService;->filterSharedAccounts(Lcom/android/server/accounts/AccountManagerService$UserAccounts;Ljava/util/Map;ILjava/lang/String;)Ljava/util/Map;+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserManager;Landroid/os/UserManager;
 HPLcom/android/server/accounts/AccountManagerService;->getAccountVisibilityFromCache(Landroid/accounts/Account;Ljava/lang/String;Lcom/android/server/accounts/AccountManagerService$UserAccounts;)I+]Ljava/util/Map;Ljava/util/HashMap;
 HSPLcom/android/server/accounts/AccountManagerService;->getAccountsAsUser(Ljava/lang/String;ILjava/lang/String;)[Landroid/accounts/Account;+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;
-HSPLcom/android/server/accounts/AccountManagerService;->getAccountsAsUserForPackage(Ljava/lang/String;ILjava/lang/String;ILjava/lang/String;Z)[Landroid/accounts/Account;+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/accounts/AccountManagerService;->getAccountsAsUserForPackage(Ljava/lang/String;ILjava/lang/String;ILjava/lang/String;Z)[Landroid/accounts/Account;+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Ljava/util/List;Ljava/util/ArrayList;
 HPLcom/android/server/accounts/AccountManagerService;->getAccountsByFeatures(Landroid/accounts/IAccountManagerResponse;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)V+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Ljava/util/List;Ljava/util/ArrayList;
 HPLcom/android/server/accounts/AccountManagerService;->getAccountsByTypeForPackage(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)[Landroid/accounts/Account;+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;
 HSPLcom/android/server/accounts/AccountManagerService;->getAccountsFromCache(Lcom/android/server/accounts/AccountManagerService$UserAccounts;Ljava/lang/String;ILjava/lang/String;Z)[Landroid/accounts/Account;+]Ljava/util/Collection;Ljava/util/LinkedHashMap$LinkedValues;]Ljava/util/HashMap;Ljava/util/LinkedHashMap;]Ljava/util/Iterator;Ljava/util/LinkedHashMap$LinkedValueIterator;
@@ -172,17 +176,18 @@
 HPLcom/android/server/accounts/AccountManagerService;->isAccountManagedByCaller(Ljava/lang/String;II)Z+]Ljava/util/List;Ljava/util/ArrayList;
 HPLcom/android/server/accounts/AccountManagerService;->isPermittedForPackage(Ljava/lang/String;I[Ljava/lang/String;)Z+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;
 HPLcom/android/server/accounts/AccountManagerService;->isPreOApplication(Ljava/lang/String;)Z+]Landroid/content/pm/PackageManager$NameNotFoundException;Landroid/content/pm/PackageManager$NameNotFoundException;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;
-HPLcom/android/server/accounts/AccountManagerService;->isPrivileged(I)Z+]Landroid/content/pm/PackageManager$NameNotFoundException;Landroid/content/pm/PackageManager$NameNotFoundException;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;
-HPLcom/android/server/accounts/AccountManagerService;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
+HSPLcom/android/server/accounts/AccountManagerService;->isPrivileged(I)Z+]Landroid/content/pm/PackageManager$NameNotFoundException;Landroid/content/pm/PackageManager$NameNotFoundException;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;
+HSPLcom/android/server/accounts/AccountManagerService;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
 HPLcom/android/server/accounts/AccountManagerService;->peekAuthToken(Landroid/accounts/Account;Ljava/lang/String;)Ljava/lang/String;+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;
-HPLcom/android/server/accounts/AccountManagerService;->permissionIsGranted(Landroid/accounts/Account;Ljava/lang/String;II)Z
+HSPLcom/android/server/accounts/AccountManagerService;->permissionIsGranted(Landroid/accounts/Account;Ljava/lang/String;II)Z
 HPLcom/android/server/accounts/AccountManagerService;->readAuthTokenInternal(Lcom/android/server/accounts/AccountManagerService$UserAccounts;Landroid/accounts/Account;Ljava/lang/String;)Ljava/lang/String;+]Lcom/android/server/accounts/AccountsDb;Lcom/android/server/accounts/AccountsDb;]Ljava/util/Map;Ljava/util/HashMap;
 HPLcom/android/server/accounts/AccountManagerService;->readUserDataInternal(Lcom/android/server/accounts/AccountManagerService$UserAccounts;Landroid/accounts/Account;Ljava/lang/String;)Ljava/lang/String;+]Lcom/android/server/accounts/AccountsDb;Lcom/android/server/accounts/AccountsDb;]Ljava/util/Map;Ljava/util/HashMap;
-HSPLcom/android/server/accounts/AccountManagerService;->resolveAccountVisibility(Landroid/accounts/Account;Ljava/lang/String;Lcom/android/server/accounts/AccountManagerService$UserAccounts;)Ljava/lang/Integer;+]Landroid/content/pm/PackageManager$NameNotFoundException;Landroid/content/pm/PackageManager$NameNotFoundException;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;
+HSPLcom/android/server/accounts/AccountManagerService;->resolveAccountVisibility(Landroid/accounts/Account;Ljava/lang/String;Lcom/android/server/accounts/AccountManagerService$UserAccounts;)Ljava/lang/Integer;+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;
 HPLcom/android/server/accounts/AccountManagerService;->saveAuthTokenToDatabase(Lcom/android/server/accounts/AccountManagerService$UserAccounts;Landroid/accounts/Account;Ljava/lang/String;Ljava/lang/String;)Z+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Lcom/android/server/accounts/AccountsDb;Lcom/android/server/accounts/AccountsDb;
 HPLcom/android/server/accounts/AccountManagerService;->setAuthToken(Landroid/accounts/Account;Ljava/lang/String;Ljava/lang/String;)V+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;
 HPLcom/android/server/accounts/AccountManagerService;->setUserData(Landroid/accounts/Account;Ljava/lang/String;Ljava/lang/String;)V+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;
 HPLcom/android/server/accounts/AccountManagerService;->setUserdataInternal(Lcom/android/server/accounts/AccountManagerService$UserAccounts;Landroid/accounts/Account;Ljava/lang/String;Ljava/lang/String;I)V+]Lcom/android/server/accounts/AccountManagerService;Lcom/android/server/accounts/AccountManagerService;]Lcom/android/server/accounts/AccountsDb;Lcom/android/server/accounts/AccountsDb;
+HPLcom/android/server/accounts/AccountsDb$DeDatabaseHelper;->getWritableDatabaseUserIsUnlocked()Landroid/database/sqlite/SQLiteDatabase;
 HPLcom/android/server/accounts/AccountsDb;->beginTransaction()V+]Landroid/database/sqlite/SQLiteOpenHelper;Lcom/android/server/accounts/AccountsDb$DeDatabaseHelper;
 HPLcom/android/server/accounts/AccountsDb;->findDeAccountId(Landroid/accounts/Account;)J+]Landroid/database/Cursor;Landroid/database/sqlite/SQLiteCursor;]Landroid/database/sqlite/SQLiteOpenHelper;Lcom/android/server/accounts/AccountsDb$DeDatabaseHelper;
 HPLcom/android/server/accounts/AccountsDb;->findExtrasIdByAccountId(JLjava/lang/String;)J+]Landroid/database/Cursor;Landroid/database/sqlite/SQLiteCursor;]Lcom/android/server/accounts/AccountsDb$DeDatabaseHelper;Lcom/android/server/accounts/AccountsDb$DeDatabaseHelper;
@@ -200,7 +205,6 @@
 HSPLcom/android/server/alarm/Alarm;->matches(Landroid/app/PendingIntent;Landroid/app/IAlarmListener;)Z+]Landroid/app/IAlarmListener;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/app/IAlarmListener$Stub$Proxy;,Lcom/android/server/alarm/AlarmManagerService$2;]Landroid/os/IBinder;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/os/BinderProxy;,Lcom/android/server/alarm/AlarmManagerService$2;
 HSPLcom/android/server/alarm/Alarm;->setPolicyElapsed(IJ)Z
 HSPLcom/android/server/alarm/Alarm;->updateWhenElapsed()Z
-HSPLcom/android/server/alarm/AlarmManagerService$$ExternalSyntheticLambda13;-><init>(Landroid/app/PendingIntent;Landroid/app/IAlarmListener;)V
 HSPLcom/android/server/alarm/AlarmManagerService$$ExternalSyntheticLambda13;->test(Ljava/lang/Object;)Z
 HSPLcom/android/server/alarm/AlarmManagerService$$ExternalSyntheticLambda15;->updateAlarmDelivery(Lcom/android/server/alarm/Alarm;)Z
 HPLcom/android/server/alarm/AlarmManagerService$4;->canScheduleExactAlarms(Ljava/lang/String;)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/alarm/AlarmManagerService$Injector;Lcom/android/server/alarm/AlarmManagerService$Injector;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;
@@ -210,7 +214,7 @@
 HSPLcom/android/server/alarm/AlarmManagerService$7;->updateAlarmsForUid(I)V+]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;]Lcom/android/server/alarm/AlarmStore;Lcom/android/server/alarm/LazyAlarmStore;
 HSPLcom/android/server/alarm/AlarmManagerService$AlarmHandler;->handleMessage(Landroid/os/Message;)V+]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Lcom/android/server/alarm/AlarmManagerService$DeliveryTracker;Lcom/android/server/alarm/AlarmManagerService$DeliveryTracker;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;
 HSPLcom/android/server/alarm/AlarmManagerService$AlarmThread;->run()V
-HPLcom/android/server/alarm/AlarmManagerService$AppWakeupHistory;->getTotalWakeupsInWindow(Ljava/lang/String;I)I+]Landroid/util/LongArrayQueue;Landroid/util/LongArrayQueue;
+HSPLcom/android/server/alarm/AlarmManagerService$AppWakeupHistory;->getTotalWakeupsInWindow(Ljava/lang/String;I)I+]Landroid/util/LongArrayQueue;Landroid/util/LongArrayQueue;
 HSPLcom/android/server/alarm/AlarmManagerService$ClockReceiver;->scheduleTimeTickEvent()V+]Lcom/android/server/alarm/AlarmManagerService$Injector;Lcom/android/server/alarm/AlarmManagerService$Injector;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;
 HSPLcom/android/server/alarm/AlarmManagerService$DeliveryTracker;->alarmComplete(Landroid/os/IBinder;)V
 HSPLcom/android/server/alarm/AlarmManagerService$DeliveryTracker;->deliverLocked(Lcom/android/server/alarm/Alarm;J)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/IAlarmListener;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/app/IAlarmListener$Stub$Proxy;,Lcom/android/server/alarm/AlarmManagerService$2;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/os/IBinder;Landroid/app/AlarmManager$ListenerWrapper;,Landroid/os/BinderProxy;,Lcom/android/server/alarm/AlarmManagerService$2;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/AppStateTrackerImpl;Lcom/android/server/AppStateTrackerImpl;]Lcom/android/server/alarm/AlarmManagerService$AppWakeupHistory;Lcom/android/server/alarm/AlarmManagerService$AppWakeupHistory;]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;]Lcom/android/server/alarm/AlarmStore;Lcom/android/server/alarm/LazyAlarmStore;]Ljava/util/ArrayList;Ljava/util/ArrayList;
@@ -224,7 +228,7 @@
 HSPLcom/android/server/alarm/AlarmManagerService$Injector;->getElapsedRealtimeMillis()J
 HSPLcom/android/server/alarm/AlarmManagerService$Injector;->isAlarmDriverPresent()Z
 HSPLcom/android/server/alarm/AlarmManagerService$Injector;->setAlarm(IJ)V
-HPLcom/android/server/alarm/AlarmManagerService$LocalService;->remove(Landroid/app/PendingIntent;)V
+HSPLcom/android/server/alarm/AlarmManagerService$LocalService;->remove(Landroid/app/PendingIntent;)V
 HSPLcom/android/server/alarm/AlarmManagerService$LocalService;->shouldGetBucketElevation(Ljava/lang/String;I)Z+]Lcom/android/server/alarm/AlarmManagerService;Lcom/android/server/alarm/AlarmManagerService;
 HPLcom/android/server/alarm/AlarmManagerService$RemovedAlarm;-><init>(Lcom/android/server/alarm/Alarm;IJJ)V
 HPLcom/android/server/alarm/AlarmManagerService;->$r8$lambda$WZFEMPWy81l-szSzhRJHOwNjF-M([ILcom/android/server/alarm/Alarm;)Z
@@ -270,6 +274,7 @@
 HSPLcom/android/server/alarm/LazyAlarmStore;->updateAlarmDeliveries(Lcom/android/server/alarm/AlarmStore$AlarmDeliveryCalculator;)Z+]Lcom/android/server/alarm/AlarmStore$AlarmDeliveryCalculator;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;
 HSPLcom/android/server/alarm/MetricsHelper;->pushAlarmScheduled(Lcom/android/server/alarm/Alarm;I)V
 HSPLcom/android/server/alarm/UserWakeupStore;->getNextWakeupTime()J+]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;
+HSPLcom/android/server/alarm/UserWakeupStore;->getUserIdsToWakeup(J)[I+]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;
 HSPLcom/android/server/am/ActiveServices$$ExternalSyntheticLambda7;->apply(Ljava/lang/Object;)Ljava/lang/Object;
 HSPLcom/android/server/am/ActiveServices$ProcessAnrTimer;->getPid(Lcom/android/server/am/ProcessRecord;)I+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
 HSPLcom/android/server/am/ActiveServices$ProcessAnrTimer;->getPid(Ljava/lang/Object;)I+]Lcom/android/server/am/ActiveServices$ProcessAnrTimer;Lcom/android/server/am/ActiveServices$ProcessAnrTimer;
@@ -335,7 +340,7 @@
 HSPLcom/android/server/am/ActiveServices;->stopServiceAndUpdateAllowlistManagerLocked(Lcom/android/server/am/ServiceRecord;)V+]Lcom/android/server/am/ProcessStateController;Lcom/android/server/am/ProcessStateController;
 HPLcom/android/server/am/ActiveServices;->stopServiceLocked(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;IZILjava/lang/String;Ljava/lang/String;)I+]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;
 HPLcom/android/server/am/ActiveServices;->stopServiceLocked(Lcom/android/server/am/ServiceRecord;Z)V+]Lcom/android/server/am/ProcessStateController;Lcom/android/server/am/ProcessStateController;
-HPLcom/android/server/am/ActiveServices;->stopServiceTokenLocked(Landroid/content/ComponentName;Landroid/os/IBinder;I)Z+]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Lcom/android/server/am/ProcessStateController;Lcom/android/server/am/ProcessStateController;]Lcom/android/server/am/ServiceRecord$StartItem;Lcom/android/server/am/ServiceRecord$StartItem;]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/am/ActiveServices;->stopServiceTokenLocked(Landroid/content/ComponentName;Landroid/os/IBinder;I)Z+]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Lcom/android/server/am/ProcessStateController;Lcom/android/server/am/ProcessStateController;]Lcom/android/server/am/ServiceRecord$StartItem;Lcom/android/server/am/ServiceRecord$StartItem;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/am/ActiveServices;->traceInstant(Ljava/lang/String;Lcom/android/server/am/ServiceRecord;)V
 HPLcom/android/server/am/ActiveServices;->unbindFinishedLocked(Lcom/android/server/am/ServiceRecord;Landroid/content/Intent;)V+]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/am/ActiveServices;->unbindServiceLocked(Landroid/app/IServiceConnection;)Z+]Landroid/app/IServiceConnection;Landroid/app/IServiceConnection$Stub$Proxy;,Landroid/app/LoadedApk$ServiceDispatcher$InnerConnection;]Lcom/android/server/am/ActivityManagerService$Injector;Lcom/android/server/am/ActivityManagerService$Injector;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessStateController;Lcom/android/server/am/ProcessStateController;]Ljava/util/ArrayList;Ljava/util/ArrayList;
@@ -357,14 +362,15 @@
 HSPLcom/android/server/am/ActivityManagerService$LocalService;->getCurrentUserId()I+]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;
 HSPLcom/android/server/am/ActivityManagerService$LocalService;->getRestrictionLevel(I)I
 HSPLcom/android/server/am/ActivityManagerService$LocalService;->getUidProcessState(I)I+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;
+HSPLcom/android/server/am/ActivityManagerService$LocalService;->handleIncomingUser(IIIZILjava/lang/String;Ljava/lang/String;)I+]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;
 HSPLcom/android/server/am/ActivityManagerService$LocalService;->isAppBad(Ljava/lang/String;I)Z
 HSPLcom/android/server/am/ActivityManagerService$LocalService;->isAppStartModeDisabled(ILjava/lang/String;)Z+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;
-HSPLcom/android/server/am/ActivityManagerService$LocalService;->isAssociatedCompanionApp(II)Z+]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/Set;Landroid/util/ArraySet;
+HPLcom/android/server/am/ActivityManagerService$LocalService;->isAssociatedCompanionApp(II)Z+]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/Set;Landroid/util/ArraySet;
 HSPLcom/android/server/am/ActivityManagerService$LocalService;->isBgAutoRestrictedBucketFeatureFlagEnabled()Z
 HSPLcom/android/server/am/ActivityManagerService$LocalService;->isDeviceOwner(I)Z
 HSPLcom/android/server/am/ActivityManagerService$LocalService;->isPendingTopUid(I)Z
 HSPLcom/android/server/am/ActivityManagerService$LocalService;->isProfileOwner(I)Z
-HPLcom/android/server/am/ActivityManagerService$LocalService;->isTempAllowlistedForFgsWhileInUse(I)Z+]Lcom/android/server/am/FgsTempAllowList;Lcom/android/server/am/FgsTempAllowList;
+HSPLcom/android/server/am/ActivityManagerService$LocalService;->isTempAllowlistedForFgsWhileInUse(I)Z+]Lcom/android/server/am/FgsTempAllowList;Lcom/android/server/am/FgsTempAllowList;
 HSPLcom/android/server/am/ActivityManagerService$LocalService;->isUidActive(I)Z+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;
 HSPLcom/android/server/am/ActivityManagerService$LocalService;->notifyNetworkPolicyRulesUpdated(IJ)V
 HSPLcom/android/server/am/ActivityManagerService$LocalService;->onUidBlockedReasonsChanged(II)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;
@@ -372,24 +378,25 @@
 HSPLcom/android/server/am/ActivityManagerService$LocalService;->updateDeviceIdleTempAllowlist([IIZJIILjava/lang/String;I)V+]Lcom/android/server/am/FgsTempAllowList;Lcom/android/server/am/FgsTempAllowList;
 HSPLcom/android/server/am/ActivityManagerService$MainHandler$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;)V
 HSPLcom/android/server/am/ActivityManagerService$MainHandler$$ExternalSyntheticLambda2;->accept(Ljava/lang/Object;)V
-HSPLcom/android/server/am/ActivityManagerService$MainHandler;->$r8$lambda$-BaOH0nhWmB1j4fAdRCLVwJvRCA(Landroid/os/Message;Landroid/app/ActivityManagerInternal$BindServiceEventListener;)V+]Landroid/app/ActivityManagerInternal$BindServiceEventListener;Lcom/android/server/am/AppBindServiceEventsTracker;
 HSPLcom/android/server/am/ActivityManagerService$MainHandler;->$r8$lambda$bz9CTa7TXqawLiiOdBfpNP_dnbI(Landroid/os/Message;Landroid/app/ActivityManagerInternal$BroadcastEventListener;)V+]Landroid/app/ActivityManagerInternal$BroadcastEventListener;Lcom/android/server/am/AppBroadcastEventsTracker;
-HSPLcom/android/server/am/ActivityManagerService$MainHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/app/IUiAutomationConnection;Landroid/app/IUiAutomationConnection$Stub$Proxy;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/AppProfiler$CachedAppsWatermarkData;Lcom/android/server/am/AppProfiler$CachedAppsWatermarkData;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList;
+HSPLcom/android/server/am/ActivityManagerService$MainHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/app/IApplicationThread;Lcom/android/server/am/ApplicationThreadDeferred;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/AppProfiler$CachedAppsWatermarkData;Lcom/android/server/am/AppProfiler$CachedAppsWatermarkData;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList;
 HSPLcom/android/server/am/ActivityManagerService$PendingTempAllowlist;-><init>(IJILjava/lang/String;II)V
 HSPLcom/android/server/am/ActivityManagerService$PidMap;->get(I)Lcom/android/server/am/ProcessRecord;+]Landroid/util/SparseArray;Landroid/util/SparseArray;
+HSPLcom/android/server/am/ActivityManagerService$UiHandler;->handleMessage(Landroid/os/Message;)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/AppErrors;Lcom/android/server/am/AppErrors;
 HSPLcom/android/server/am/ActivityManagerService;->$r8$lambda$Dp0egYYO_wvfUqcu1s5QAPQddjA([ILjava/lang/String;Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
 HSPLcom/android/server/am/ActivityManagerService;->addCreatorToken(Landroid/content/Intent;Ljava/lang/String;)V+]Landroid/content/Intent;Landroid/content/Intent;]Ljava/util/Set;Landroid/util/ArraySet;
 HSPLcom/android/server/am/ActivityManagerService;->addErrorToDropBox(Ljava/lang/String;Lcom/android/server/am/ProcessRecord;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/android/server/am/ProcessRecord;Ljava/lang/String;Ljava/lang/String;Ljava/io/File;Landroid/app/ApplicationErrorReport$CrashInfo;Ljava/lang/Float;Landroid/os/incremental/IncrementalMetrics;Ljava/util/UUID;Lcom/android/server/am/ActivityManagerService$VolatileDropboxEntryStates;)V+]Landroid/os/DropBoxManager;Landroid/os/DropBoxManager;]Landroid/os/incremental/IncrementalMetrics;Landroid/os/incremental/IncrementalMetrics;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/DropboxRateLimiter$RateLimitResult;Lcom/android/server/am/DropboxRateLimiter$RateLimitResult;]Lcom/android/server/am/DropboxRateLimiter;Lcom/android/server/am/DropboxRateLimiter;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
 HSPLcom/android/server/am/ActivityManagerService;->addPidLocked(Lcom/android/server/am/ProcessRecord;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;
 HSPLcom/android/server/am/ActivityManagerService;->addStartInfoTimestampInternal(IJII)V
 HSPLcom/android/server/am/ActivityManagerService;->appDiedLocked(Lcom/android/server/am/ProcessRecord;ILandroid/app/IApplicationThread;ZLjava/lang/String;)V+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
+HSPLcom/android/server/am/ActivityManagerService;->attachApplication(Landroid/app/IApplicationThread;J)V
 HSPLcom/android/server/am/ActivityManagerService;->attachApplicationLocked(Landroid/app/IApplicationThread;IIJ)V+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/autofill/AutofillManagerInternal;Lcom/android/server/autofill/AutofillManagerService$LocalService;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/ContentProviderHelper;Lcom/android/server/am/ContentProviderHelper;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateController;Lcom/android/server/am/ProcessStateController;]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat;]Lcom/android/server/contentcapture/ContentCaptureManagerInternal;Lcom/android/server/contentcapture/ContentCaptureManagerService$LocalService;]Lcom/android/server/graphics/fonts/FontManagerInternal;Lcom/android/server/graphics/fonts/FontManagerService$Lifecycle$1;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/am/ActivityManagerService;->bindServiceInstance(Landroid/app/IApplicationThread;Landroid/os/IBinder;Landroid/content/Intent;Ljava/lang/String;Landroid/app/IServiceConnection;JLjava/lang/String;Ljava/lang/String;I)I
 HSPLcom/android/server/am/ActivityManagerService;->bindServiceInstance(Landroid/app/IApplicationThread;Landroid/os/IBinder;Landroid/content/Intent;Ljava/lang/String;Landroid/app/IServiceConnection;JLjava/lang/String;ZILjava/lang/String;Landroid/app/IApplicationThread;Ljava/lang/String;I)I+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;
 HSPLcom/android/server/am/ActivityManagerService;->boostPriorityForLockedSection()V+]Lcom/android/server/ThreadPriorityBooster;Lcom/android/server/ThreadPriorityBooster;
 HSPLcom/android/server/am/ActivityManagerService;->boostPriorityForProcLockedSection()V+]Lcom/android/server/ThreadPriorityBooster;Lcom/android/server/ThreadPriorityBooster;
 HSPLcom/android/server/am/ActivityManagerService;->broadcastIntentWithFeature(Landroid/app/IApplicationThread;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Landroid/content/IIntentReceiver;ILjava/lang/String;Landroid/os/Bundle;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/os/Bundle;ZZI)I+]Lcom/android/server/am/BroadcastController;Lcom/android/server/am/BroadcastController;
-HPLcom/android/server/am/ActivityManagerService;->cancelIntentSender(Landroid/content/IIntentSender;)V+]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController;
+HSPLcom/android/server/am/ActivityManagerService;->cancelIntentSender(Landroid/content/IIntentSender;)V+]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController;
 HSPLcom/android/server/am/ActivityManagerService;->checkCallingPermission(Ljava/lang/String;)I+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;
 HSPLcom/android/server/am/ActivityManagerService;->checkComponentPermission(Ljava/lang/String;IIIIZ)I+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/am/ActivityManagerService;->checkComponentPermission(Ljava/lang/String;IIIZ)I
@@ -434,8 +441,9 @@
 HSPLcom/android/server/am/ActivityManagerService;->isReceivingBroadcastLocked(Lcom/android/server/am/ProcessRecord;[I)Z+]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueImpl;,Lcom/android/server/am/BroadcastQueueModernImpl;
 HSPLcom/android/server/am/ActivityManagerService;->isSingleton(Ljava/lang/String;Landroid/content/pm/ApplicationInfo;Ljava/lang/String;I)Z
 HSPLcom/android/server/am/ActivityManagerService;->isUidActiveLOSP(I)Z
+HPLcom/android/server/am/ActivityManagerService;->lambda$checkExcessivePowerUsage$22(JJZZLcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
+HSPLcom/android/server/am/ActivityManagerService;->logStrictModeViolationToDropBox(Lcom/android/server/am/ProcessRecord;Landroid/os/StrictMode$ViolationInfo;)V
 HSPLcom/android/server/am/ActivityManagerService;->maybeSendBootCompletedLocked(Lcom/android/server/am/ProcessRecord;Z)V+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
-HSPLcom/android/server/am/ActivityManagerService;->noteUidProcessState(III)V+]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/stats/pull/StatsPullAtomServiceInternal;Lcom/android/server/stats/pull/StatsPullAtomService$StatsPullAtomServiceInternalImpl;
 HSPLcom/android/server/am/ActivityManagerService;->notifyPackageUse(Ljava/lang/String;I)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;
 HPLcom/android/server/am/ActivityManagerService;->onProcessFreezableChangedLocked(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueImpl;,Lcom/android/server/am/BroadcastQueueModernImpl;
 HSPLcom/android/server/am/ActivityManagerService;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
@@ -457,7 +465,7 @@
 HSPLcom/android/server/am/ActivityManagerService;->startService(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;ZLjava/lang/String;Ljava/lang/String;IZILjava/lang/String;Ljava/lang/String;)Landroid/content/ComponentName;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;
 HSPLcom/android/server/am/ActivityManagerService;->stopAssociationLocked(ILjava/lang/String;IJLandroid/content/ComponentName;Ljava/lang/String;)V
 HPLcom/android/server/am/ActivityManagerService;->stopService(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;IZILjava/lang/String;Ljava/lang/String;)I+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;
-HPLcom/android/server/am/ActivityManagerService;->stopServiceToken(Landroid/content/ComponentName;Landroid/os/IBinder;I)Z
+HSPLcom/android/server/am/ActivityManagerService;->stopServiceToken(Landroid/content/ComponentName;Landroid/os/IBinder;I)Z
 HSPLcom/android/server/am/ActivityManagerService;->tempAllowlistUidLocked(IJILjava/lang/String;II)V+]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Lcom/android/server/am/FgsTempAllowList;Lcom/android/server/am/FgsTempAllowList;
 HSPLcom/android/server/am/ActivityManagerService;->traceBegin(JLjava/lang/String;Ljava/lang/String;)V
 HSPLcom/android/server/am/ActivityManagerService;->trimApplicationsLocked(ZI)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList;
@@ -473,6 +481,7 @@
 HSPLcom/android/server/am/AppExitInfoTracker$$ExternalSyntheticLambda10;->apply(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
 HSPLcom/android/server/am/AppExitInfoTracker$AppExitInfoContainer;->addExitInfoLocked(Landroid/app/ApplicationExitInfo;)V+]Ljava/io/File;Ljava/io/File;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/am/AppExitInfoTracker$AppExitInfoContainer;->getExitInfosLocked(IILjava/util/List;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/am/AppExitInfoTracker$KillHandler;->handleMessage(Landroid/os/Message;)V
 HSPLcom/android/server/am/AppExitInfoTracker;->forEachPackageLocked(Ljava/util/function/BiFunction;)V+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;]Ljava/util/function/BiFunction;Lcom/android/server/am/AppExitInfoTracker$$ExternalSyntheticLambda10;,Lcom/android/server/am/AppExitInfoTracker$$ExternalSyntheticLambda14;,Lcom/android/server/am/AppExitInfoTracker$$ExternalSyntheticLambda16;,Lcom/android/server/am/AppExitInfoTracker$$ExternalSyntheticLambda6;
 HSPLcom/android/server/am/AppExitInfoTracker;->getExitInfo(Ljava/lang/String;IIILjava/util/List;)V+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/am/AppExitInfoTracker;->lambda$updateExitInfoIfNecessaryLocked$2(II[ZLjava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Long;Ljava/lang/String;Landroid/util/SparseArray;)Ljava/lang/Integer;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/ArrayList;Ljava/util/ArrayList;
@@ -491,7 +500,7 @@
 HSPLcom/android/server/am/AppProfiler;->$r8$lambda$O0KXijwG7-p0M_PB8ZuTBcOSGho(Lcom/android/server/am/ProcessRecord;)V+]Landroid/app/IApplicationThread;Lcom/android/server/am/ApplicationThreadDeferred;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
 HPLcom/android/server/am/AppProfiler;->collectRssInBackground()V+]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/am/AppProfiler;->isLastMemoryLevelNormal()Z
-HPLcom/android/server/am/AppProfiler;->isProfilingPss()Z
+HSPLcom/android/server/am/AppProfiler;->isProfilingPss()Z
 HPLcom/android/server/am/AppProfiler;->recordRssSampleLPf(Lcom/android/server/am/ProcessProfileRecord;IJIJJ)V+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;
 HPLcom/android/server/am/AppProfiler;->requestPssLPf(Lcom/android/server/am/ProcessProfileRecord;I)Z+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/am/AppProfiler;->setupProfilerInfoLocked(Landroid/app/IApplicationThread;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ActiveInstrumentation;)Landroid/app/ProfilerInfo;+]Landroid/app/IApplicationThread;Landroid/app/IApplicationThread$Stub$Proxy;]Lcom/android/server/am/AppProfiler$ProfileData;Lcom/android/server/am/AppProfiler$ProfileData;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList;
@@ -499,20 +508,23 @@
 HSPLcom/android/server/am/AppProfiler;->updateLowMemStateLSP(IIIJ)V+]Lcom/android/server/am/AppProfiler$CachedAppsWatermarkData;Lcom/android/server/am/AppProfiler$CachedAppsWatermarkData;]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/ProcessStateController;Lcom/android/server/am/ProcessStateController;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;
 HSPLcom/android/server/am/AppProfiler;->updateNextPssTimeLPf(ILcom/android/server/am/ProcessProfileRecord;JZ)V+]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;
 HSPLcom/android/server/am/AppRestrictionController$BgHandler;->handleMessage(Landroid/os/Message;)V+]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;
-HSPLcom/android/server/am/AppRestrictionController$Injector;->getActivityManagerService()Lcom/android/server/am/ActivityManagerService;
 HSPLcom/android/server/am/AppRestrictionController$Injector;->getAppStandbyInternal()Lcom/android/server/usage/AppStandbyInternal;
 HSPLcom/android/server/am/AppRestrictionController$RestrictionSettings$PkgSettings;->update(III)I
 HSPLcom/android/server/am/AppRestrictionController$RestrictionSettings;->forEachPackageInUidLocked(ILcom/android/internal/util/function/TriConsumer;)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/internal/util/function/TriConsumer;Lcom/android/server/am/AppRestrictionController$$ExternalSyntheticLambda3;
 HSPLcom/android/server/am/AppRestrictionController$RestrictionSettings;->getRestrictionLevel(I)I+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;
+HSPLcom/android/server/am/AppRestrictionController$RestrictionSettings;->loadOneFromXml(Lcom/android/modules/utils/TypedXmlPullParser;J[JZ)V+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController;
 HSPLcom/android/server/am/AppRestrictionController;->applyRestrictionLevel(Ljava/lang/String;IILcom/android/server/am/AppRestrictionController$TrackerInfo;IZII)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController;
 HSPLcom/android/server/am/AppRestrictionController;->calcAppRestrictionLevel(IILjava/lang/String;IZZ)Landroid/util/Pair;+]Lcom/android/server/AppStateTracker;Lcom/android/server/AppStateTrackerImpl;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Lcom/android/server/apphibernation/AppHibernationManagerInternal;Lcom/android/server/apphibernation/AppHibernationService$LocalService;
 HSPLcom/android/server/am/AppRestrictionController;->getBackgroundRestrictionExemptionReason(I)I+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;
 HSPLcom/android/server/am/AppRestrictionController;->getPotentialSystemExemptionReason(I)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;
-HSPLcom/android/server/am/AppRestrictionController;->getPotentialSystemExemptionReason(ILjava/lang/String;)I+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController;]Ljava/util/Set;Ljava/util/Collections$EmptySet;
-HSPLcom/android/server/am/AppRestrictionController;->getPotentialUserAllowedExemptionReason(ILjava/lang/String;)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;
-HSPLcom/android/server/am/AppRestrictionController;->isCarrierApp(Ljava/lang/String;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet;
-HSPLcom/android/server/am/AppRestrictionController;->isOnDeviceIdleAllowlist(I)Z
+HPLcom/android/server/am/AppRestrictionController;->getPotentialSystemExemptionReason(ILjava/lang/String;)I+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController;]Ljava/util/Set;Ljava/util/Collections$EmptySet;
+HPLcom/android/server/am/AppRestrictionController;->getPotentialUserAllowedExemptionReason(ILjava/lang/String;)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;
+HSPLcom/android/server/am/AppRestrictionController;->handleUidInactive(IZ)V+]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/am/AppRestrictionController;->isBgAutoRestrictedBucketFeatureFlagEnabled()Z
+HPLcom/android/server/am/AppRestrictionController;->isCarrierApp(Ljava/lang/String;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet;
+HPLcom/android/server/am/AppRestrictionController;->isOnDeviceIdleAllowlist(I)Z
 HSPLcom/android/server/am/AppRestrictionController;->isOnSystemDeviceIdleAllowlist(I)Z
+HPLcom/android/server/am/AppRestrictionController;->isSystemModule(Ljava/lang/String;)Z+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/am/AppRestrictionController$Injector;Lcom/android/server/am/AppRestrictionController$Injector;]Ljava/io/File;Ljava/io/File;]Ljava/util/HashMap;Ljava/util/HashMap;
 HSPLcom/android/server/am/AppRestrictionController;->refreshAppRestrictionLevelForUser(III)V
 HSPLcom/android/server/am/AppStartInfoTracker$AppStartInfoContainer;->addStartInfoLocked(Landroid/app/ApplicationStartInfo;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/am/AppStartInfoTracker$AppStartInfoContainer;->addTimestampToStartLocked(IJ)V+]Ljava/util/ArrayList;Ljava/util/ArrayList;
@@ -521,19 +533,18 @@
 HPLcom/android/server/am/AppStartInfoTracker$AppStartInfoContainer;->writeToProto(Landroid/util/proto/ProtoOutputStream;J)V+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/am/AppStartInfoTracker;->addBaseFieldsFromProcessRecord(Landroid/app/ApplicationStartInfo;Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
 HSPLcom/android/server/am/AppStartInfoTracker;->addStartInfoLocked(Landroid/app/ApplicationStartInfo;)Landroid/app/ApplicationStartInfo;+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;
+HSPLcom/android/server/am/AppStartInfoTracker;->addTimestampToStart(Lcom/android/server/am/ProcessRecord;JI)V
 HSPLcom/android/server/am/AppStartInfoTracker;->addTimestampToStart(Ljava/lang/String;IJI)V+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;
 HSPLcom/android/server/am/ApplicationThreadDeferred;-><init>(Landroid/app/IApplicationThread;Z)V
 HSPLcom/android/server/am/ApplicationThreadDeferred;->asBinder()Landroid/os/IBinder;+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;
-HSPLcom/android/server/am/BaseAppStateEvents;->getEarliest(J)J+]Lcom/android/server/am/BaseAppStateEvents$MaxTrackingDurationConfig;Lcom/android/server/am/AppBindServiceEventsTracker$AppBindServiceEventsPolicy;,Lcom/android/server/am/AppBroadcastEventsTracker$AppBroadcastEventsPolicy;,Lcom/android/server/am/AppFGSTracker$AppFGSPolicy;,Lcom/android/server/am/AppMediaSessionTracker$AppMediaSessionPolicy;
-HSPLcom/android/server/am/BaseAppStateEvents;->getTotalEvents(JI)I+]Lcom/android/server/am/BaseAppStateEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;
+HPLcom/android/server/am/BaseAppStateEvents;->getEarliest(J)J+]Lcom/android/server/am/BaseAppStateEvents$MaxTrackingDurationConfig;Lcom/android/server/am/AppBindServiceEventsTracker$AppBindServiceEventsPolicy;,Lcom/android/server/am/AppBroadcastEventsTracker$AppBroadcastEventsPolicy;,Lcom/android/server/am/AppFGSTracker$AppFGSPolicy;,Lcom/android/server/am/AppMediaSessionTracker$AppMediaSessionPolicy;
 HSPLcom/android/server/am/BaseAppStateEventsTracker$BaseAppStateEventsPolicy;->getMaxTrackingDuration()J
 HSPLcom/android/server/am/BaseAppStateEventsTracker;->isUidOnTop(I)Z
-HSPLcom/android/server/am/BaseAppStatePolicy;->isEnabled()Z
 HSPLcom/android/server/am/BaseAppStatePolicy;->shouldExemptUid(I)I
-HSPLcom/android/server/am/BaseAppStateTimeSlotEvents;->addEvent(JI)V+]Lcom/android/server/am/BaseAppStateEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Lcom/android/server/am/BaseAppStateTimeSlotEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Ljava/util/LinkedList;Ljava/util/LinkedList;
-HSPLcom/android/server/am/BaseAppStateTimeSlotEvents;->getTotalEventsSince(JJI)I+]Lcom/android/server/am/BaseAppStateTimeSlotEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Ljava/util/Iterator;Ljava/util/LinkedList$DescendingIterator;]Ljava/util/LinkedList;Ljava/util/LinkedList;
-HSPLcom/android/server/am/BaseAppStateTimeSlotEvents;->trimEvents(JI)V+]Lcom/android/server/am/BaseAppStateTimeSlotEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Ljava/util/LinkedList;Ljava/util/LinkedList;
-HSPLcom/android/server/am/BaseAppStateTimeSlotEventsTracker$BaseAppStateTimeSlotEventsPolicy;->getNumOfEventsThreshold()I
+HPLcom/android/server/am/BaseAppStateTimeSlotEvents;->addEvent(JI)V+]Lcom/android/server/am/BaseAppStateEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Lcom/android/server/am/BaseAppStateTimeSlotEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Ljava/util/LinkedList;Ljava/util/LinkedList;
+HPLcom/android/server/am/BaseAppStateTimeSlotEvents;->getTotalEventsSince(JJI)I+]Lcom/android/server/am/BaseAppStateTimeSlotEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Ljava/util/Iterator;Ljava/util/LinkedList$DescendingIterator;]Ljava/util/LinkedList;Ljava/util/LinkedList;
+HPLcom/android/server/am/BaseAppStateTimeSlotEvents;->trimEvents(JI)V+]Lcom/android/server/am/BaseAppStateTimeSlotEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Ljava/util/LinkedList;Ljava/util/LinkedList;
+HPLcom/android/server/am/BaseAppStateTimeSlotEventsTracker$BaseAppStateTimeSlotEventsPolicy;->getNumOfEventsThreshold()I
 HSPLcom/android/server/am/BaseAppStateTimeSlotEventsTracker$BaseAppStateTimeSlotEventsPolicy;->shouldExempt(Ljava/lang/String;I)I+]Lcom/android/server/am/BaseAppStateEventsTracker;Lcom/android/server/am/AppBindServiceEventsTracker;,Lcom/android/server/am/AppBroadcastEventsTracker;]Lcom/android/server/am/BaseAppStatePolicy;Lcom/android/server/am/AppBindServiceEventsTracker$AppBindServiceEventsPolicy;,Lcom/android/server/am/AppBroadcastEventsTracker$AppBroadcastEventsPolicy;
 HSPLcom/android/server/am/BaseAppStateTimeSlotEventsTracker$H;->handleMessage(Landroid/os/Message;)V+]Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker;Lcom/android/server/am/AppBindServiceEventsTracker;,Lcom/android/server/am/AppBroadcastEventsTracker;
 HSPLcom/android/server/am/BaseAppStateTimeSlotEventsTracker;->handleNewEvent(Ljava/lang/String;I)V+]Lcom/android/server/am/BaseAppStateEvents$Factory;Lcom/android/server/am/AppBindServiceEventsTracker;,Lcom/android/server/am/AppBroadcastEventsTracker;]Lcom/android/server/am/BaseAppStateEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Lcom/android/server/am/BaseAppStateTimeSlotEvents;Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$SimpleAppStateTimeslotEvents;]Lcom/android/server/am/BaseAppStateTimeSlotEventsTracker$BaseAppStateTimeSlotEventsPolicy;Lcom/android/server/am/AppBindServiceEventsTracker$AppBindServiceEventsPolicy;,Lcom/android/server/am/AppBroadcastEventsTracker$AppBroadcastEventsPolicy;]Lcom/android/server/am/BaseAppStateTracker$Injector;Lcom/android/server/am/BaseAppStateTracker$Injector;]Lcom/android/server/am/UidProcessMap;Lcom/android/server/am/UidProcessMap;
@@ -542,25 +553,25 @@
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda104;->run()V
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda11;-><init>(Lcom/android/server/am/BatteryStatsService;IIIIIIIIJJJJ)V
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda11;->run()V
-HPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda16;-><init>(Lcom/android/server/am/BatteryStatsService;ILjava/lang/String;Ljava/lang/String;JJ)V
+HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda16;-><init>(Lcom/android/server/am/BatteryStatsService;ILjava/lang/String;Ljava/lang/String;JJ)V
 HPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda16;->run()V
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda17;-><init>(Lcom/android/server/am/BatteryStatsService;Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IZJJ)V
-HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda17;->run()V
+HPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda17;->run()V
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda1;-><init>(Lcom/android/server/am/BatteryStatsService;IILjava/lang/String;Ljava/lang/String;IZJJ)V
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda1;->run()V
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda25;-><init>(Lcom/android/server/am/BatteryStatsService;Ljava/lang/String;Landroid/os/WorkSource;IJJ)V
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda25;->run()V
 HPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda29;-><init>(Lcom/android/server/am/BatteryStatsService;Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;ILandroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IZJJ)V
 HPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda29;->run()V
-HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda31;->run()V
+HPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda31;->run()V
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda34;-><init>(Lcom/android/server/am/BatteryStatsService;Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IJJ)V
-HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda34;->run()V
+HPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda34;->run()V
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda58;-><init>(Lcom/android/server/am/BatteryStatsService;Ljava/lang/String;Landroid/os/WorkSource;IJJ)V
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda58;->run()V
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda5;-><init>(Lcom/android/server/am/BatteryStatsService;ILjava/lang/String;Ljava/lang/String;JJ)V
-HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda5;->run()V
+HPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda5;->run()V
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda64;-><init>(Lcom/android/server/am/BatteryStatsService;Ljava/lang/String;IIJJ)V
-HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda64;->run()V
+HPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda64;->run()V
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda73;-><init>(Lcom/android/server/am/BatteryStatsService;ILjava/lang/String;IJJ)V
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda73;->run()V
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda76;->run()V
@@ -570,8 +581,8 @@
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda98;->run()V
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda9;-><init>(Lcom/android/server/am/BatteryStatsService;IILjava/lang/String;Ljava/lang/String;IJJ)V
 HSPLcom/android/server/am/BatteryStatsService$$ExternalSyntheticLambda9;->run()V
+HSPLcom/android/server/am/BatteryStatsService$LocalService;->getOwnerUid(I)I+]Lcom/android/server/power/stats/PowerStatsUidResolver;Lcom/android/server/power/stats/PowerStatsUidResolver;
 HPLcom/android/server/am/BatteryStatsService$StatsPerUidLogger;->addStatsForPowerComponent(Ljava/util/List;Lcom/android/server/am/BatteryStatsService$StatsPerUidLogger$SessionInfo;IIFJLandroid/os/BatteryConsumer;I)Z+]Landroid/os/BatteryConsumer;Landroid/os/AggregateBatteryConsumer;,Landroid/os/UidBatteryConsumer;
-HPLcom/android/server/am/BatteryStatsService$StatsPerUidLogger;->clampPowerMah(DLjava/lang/String;)F
 HPLcom/android/server/am/BatteryStatsService$StatsPerUidLogger;->logStats(Landroid/os/BatteryUsageStats;Ljava/util/List;)I+]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/am/BatteryStatsService$WakeupReasonThread;->run()V
 HSPLcom/android/server/am/BatteryStatsService$WakeupReasonThread;->waitWakeup()Ljava/lang/String;+]Ljava/nio/ByteBuffer;Ljava/nio/DirectByteBuffer;]Ljava/nio/CharBuffer;Ljava/nio/HeapCharBuffer;
@@ -580,10 +591,11 @@
 HSPLcom/android/server/am/BatteryStatsService;->getSubsystemLowPowerStats()Ljava/lang/String;+]Landroid/power/PowerStatsInternal;Lcom/android/server/powerstats/PowerStatsService$LocalService;]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;
 HSPLcom/android/server/am/BatteryStatsService;->lambda$noteServiceStartLaunch$107(ILjava/lang/String;Ljava/lang/String;JJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
 HSPLcom/android/server/am/BatteryStatsService;->lambda$noteServiceStartRunning$105(ILjava/lang/String;Ljava/lang/String;JJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
-HSPLcom/android/server/am/BatteryStatsService;->lambda$noteServiceStopLaunch$108(ILjava/lang/String;Ljava/lang/String;JJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
+HPLcom/android/server/am/BatteryStatsService;->lambda$noteServiceStopLaunch$108(ILjava/lang/String;Ljava/lang/String;JJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
 HSPLcom/android/server/am/BatteryStatsService;->lambda$noteStartWakelock$24(IILjava/lang/String;Ljava/lang/String;IZJJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
 HSPLcom/android/server/am/BatteryStatsService;->lambda$noteStopWakelock$25(IILjava/lang/String;Ljava/lang/String;IJJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
 HSPLcom/android/server/am/BatteryStatsService;->lambda$noteUidProcessState$14(IIJJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Lcom/android/server/power/stats/wakeups/CpuWakeupStats;Lcom/android/server/power/stats/wakeups/CpuWakeupStats;
+HSPLcom/android/server/am/BatteryStatsService;->lambda$setBatteryState$97(IIIIIIIIJJJJ)V+]Lcom/android/server/power/stats/BatteryExternalStatsWorker;Lcom/android/server/power/stats/BatteryExternalStatsWorker;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
 HPLcom/android/server/am/BatteryStatsService;->monitor()V
 HSPLcom/android/server/am/BatteryStatsService;->noteAlarmFinish(Ljava/lang/String;Landroid/os/WorkSource;I)V+]Landroid/content/Context;Landroid/app/ContextImpl;
 HSPLcom/android/server/am/BatteryStatsService;->noteAlarmStart(Ljava/lang/String;Landroid/os/WorkSource;I)V+]Landroid/content/Context;Landroid/app/ContextImpl;
@@ -594,7 +606,7 @@
 HSPLcom/android/server/am/BatteryStatsService;->noteServiceStartLaunch(ILjava/lang/String;Ljava/lang/String;)V
 HSPLcom/android/server/am/BatteryStatsService;->noteServiceStartRunning(ILjava/lang/String;Ljava/lang/String;)V
 HSPLcom/android/server/am/BatteryStatsService;->noteServiceStopLaunch(ILjava/lang/String;Ljava/lang/String;)V
-HPLcom/android/server/am/BatteryStatsService;->noteServiceStopRunning(ILjava/lang/String;Ljava/lang/String;)V
+HSPLcom/android/server/am/BatteryStatsService;->noteServiceStopRunning(ILjava/lang/String;Ljava/lang/String;)V
 HSPLcom/android/server/am/BatteryStatsService;->noteStartSensor(II)V
 HSPLcom/android/server/am/BatteryStatsService;->noteStartWakelock(IILjava/lang/String;Ljava/lang/String;IZ)V
 HSPLcom/android/server/am/BatteryStatsService;->noteStartWakelockFromSource(Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IZ)V
@@ -613,12 +625,13 @@
 HSPLcom/android/server/am/BroadcastController$1;->newResult(Lcom/android/server/pm/Computer;Lcom/android/server/am/BroadcastFilter;IIJ)Lcom/android/server/am/BroadcastFilter;
 HSPLcom/android/server/am/BroadcastController$1;->newResult(Lcom/android/server/pm/Computer;Ljava/lang/Object;IIJ)Ljava/lang/Object;+]Lcom/android/server/am/BroadcastController$1;Lcom/android/server/am/BroadcastController$1;
 HSPLcom/android/server/am/BroadcastController;->addBroadcastStatLocked(Ljava/lang/String;Ljava/lang/String;IIJ)V
+HPLcom/android/server/am/BroadcastController;->broadcastIntentInPackage(Ljava/lang/String;Ljava/lang/String;IIILandroid/content/Intent;Ljava/lang/String;Lcom/android/server/am/ProcessRecord;Landroid/content/IIntentReceiver;ILjava/lang/String;Landroid/os/Bundle;Ljava/lang/String;Landroid/os/Bundle;ZZILandroid/app/BackgroundStartPrivileges;[I)I
 HSPLcom/android/server/am/BroadcastController;->broadcastIntentLocked(Lcom/android/server/am/ProcessRecord;Ljava/lang/String;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Lcom/android/server/am/ProcessRecord;Landroid/content/IIntentReceiver;ILjava/lang/String;Landroid/os/Bundle;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/os/Bundle;ZZIIIIILandroid/app/BackgroundStartPrivileges;[ILjava/util/function/BiFunction;)I
 HSPLcom/android/server/am/BroadcastController;->broadcastIntentLockedTraced(Lcom/android/server/am/ProcessRecord;Ljava/lang/String;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Lcom/android/server/am/ProcessRecord;Landroid/content/IIntentReceiver;ILjava/lang/String;Landroid/os/Bundle;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/app/BroadcastOptions;ZZIIIIILandroid/app/BackgroundStartPrivileges;[ILjava/util/function/BiFunction;Lcom/android/server/am/BroadcastSentEventRecord;)I+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/IIntentReceiver;megamorphic_types]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/net/Uri;Landroid/net/Uri$OpaqueUri;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/IntentResolver;Lcom/android/server/am/BroadcastController$1;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueImpl;,Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/uri/UriGrantsManagerInternal;Lcom/android/server/uri/UriGrantsManagerService$LocalService;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/am/BroadcastController;->broadcastIntentWithFeature(Landroid/app/IApplicationThread;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Landroid/content/IIntentReceiver;ILjava/lang/String;Landroid/os/Bundle;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ILandroid/os/Bundle;ZZI)I+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastController;Lcom/android/server/am/BroadcastController;
 HSPLcom/android/server/am/BroadcastController;->checkBroadcastFromSystem(Landroid/content/Intent;Lcom/android/server/am/ProcessRecord;Ljava/lang/String;IZLjava/util/List;)V+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/am/BroadcastController;->collectReceiverComponents(Landroid/content/Intent;Ljava/lang/String;II[I[I)Ljava/util/List;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ComponentAliasResolver$Resolution;Lcom/android/server/am/ComponentAliasResolver$Resolution;]Lcom/android/server/am/ComponentAliasResolver;Lcom/android/server/am/ComponentAliasResolver;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList;
-HSPLcom/android/server/am/BroadcastController;->enforceBroadcastOptionPermissionsInternal(Landroid/app/BroadcastOptions;I)V+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;
+HSPLcom/android/server/am/BroadcastController;->enforceBroadcastOptionPermissionsInternal(Landroid/app/BroadcastOptions;I)V+]Landroid/app/BroadcastOptions;Landroid/app/BroadcastOptions;
 HSPLcom/android/server/am/BroadcastController;->enforceBroadcastOptionPermissionsInternal(Landroid/os/Bundle;I)V
 HSPLcom/android/server/am/BroadcastController;->finishReceiver(Landroid/os/IBinder;ILjava/lang/String;Landroid/os/Bundle;ZI)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueImpl;,Lcom/android/server/am/BroadcastQueueModernImpl;
 HSPLcom/android/server/am/BroadcastController;->getBackgroundLaunchBroadcasts()Landroid/util/ArraySet;
@@ -628,13 +641,13 @@
 HSPLcom/android/server/am/BroadcastController;->notifyBroadcastFinishedLocked(Lcom/android/server/am/BroadcastRecord;)V
 HSPLcom/android/server/am/BroadcastController;->registerReceiverWithFeature(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/content/IIntentReceiver;Landroid/content/IntentFilter;Ljava/lang/String;II)Landroid/content/Intent;
 HSPLcom/android/server/am/BroadcastController;->registerReceiverWithFeatureTraced(Landroid/app/IApplicationThread;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/content/IIntentReceiver;Landroid/content/IntentFilter;Ljava/lang/String;II)Landroid/content/Intent;+]Landroid/app/IApplicationThread;Landroid/app/ActivityThread$ApplicationThread;,Landroid/app/IApplicationThread$Stub$Proxy;,Lcom/android/server/am/ApplicationThreadDeferred;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/IntentResolver;Lcom/android/server/am/BroadcastController$1;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/BroadcastQueue;Lcom/android/server/am/BroadcastQueueImpl;,Lcom/android/server/am/BroadcastQueueModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/sdksandbox/SdkSandboxManagerLocal;Lcom/android/server/sdksandbox/SdkSandboxManagerService$LocalImpl;]Ljava/util/HashMap;Ljava/util/HashMap;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;
-HPLcom/android/server/am/BroadcastController;->removeReceiverLocked(Lcom/android/server/am/ReceiverList;)V+]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy;]Lcom/android/server/IntentResolver;Lcom/android/server/am/BroadcastController$1;]Ljava/util/HashMap;Ljava/util/HashMap;
+HSPLcom/android/server/am/BroadcastController;->removeReceiverLocked(Lcom/android/server/am/ReceiverList;)V+]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy;]Lcom/android/server/IntentResolver;Lcom/android/server/am/BroadcastController$1;]Ljava/util/HashMap;Ljava/util/HashMap;
 HSPLcom/android/server/am/BroadcastController;->rotateBroadcastStatsIfNeededLocked()V
 HSPLcom/android/server/am/BroadcastController;->traceBroadcastIntentBegin(Landroid/content/Intent;Landroid/content/IIntentReceiver;ZZIII)I+]Landroid/content/Intent;Landroid/content/Intent;
 HSPLcom/android/server/am/BroadcastController;->traceBroadcastIntentEnd(I)V
 HSPLcom/android/server/am/BroadcastController;->traceRegistrationBegin(Ljava/lang/String;Landroid/content/IIntentReceiver;Landroid/content/IntentFilter;I)V+]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy;
-HPLcom/android/server/am/BroadcastController;->traceUnregistrationBegin(Landroid/content/IIntentReceiver;)V+]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy;
-HPLcom/android/server/am/BroadcastController;->unregisterReceiverTraced(Landroid/content/IIntentReceiver;)V+]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy;]Lcom/android/server/am/BroadcastController;Lcom/android/server/am/BroadcastController;]Ljava/util/HashMap;Ljava/util/HashMap;
+HSPLcom/android/server/am/BroadcastController;->traceUnregistrationBegin(Landroid/content/IIntentReceiver;)V+]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy;
+HSPLcom/android/server/am/BroadcastController;->unregisterReceiverTraced(Landroid/content/IIntentReceiver;)V+]Landroid/content/IIntentReceiver;Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;,Landroid/content/IIntentReceiver$Stub$Proxy;]Lcom/android/server/am/BroadcastController;Lcom/android/server/am/BroadcastController;]Ljava/util/HashMap;Ljava/util/HashMap;
 HSPLcom/android/server/am/BroadcastController;->verifyBroadcastLocked(Landroid/content/Intent;)Landroid/content/Intent;+]Landroid/content/Intent;Landroid/content/Intent;
 HSPLcom/android/server/am/BroadcastFilter;-><init>(Landroid/content/IntentFilter;Lcom/android/server/am/ReceiverList;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IIZZZLandroid/content/pm/ApplicationInfo;Lcom/android/server/compat/PlatformCompat;)V
 HSPLcom/android/server/am/BroadcastFilter;->calculateAdjustedPriority(IILandroid/content/pm/ApplicationInfo;Lcom/android/server/compat/PlatformCompat;)I+]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat;
@@ -799,13 +812,16 @@
 HPLcom/android/server/am/CachedAppOptimizer;->compactApp(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/CachedAppOptimizer$CompactProfile;Lcom/android/server/am/CachedAppOptimizer$CompactSource;Z)Z+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HPLcom/android/server/am/CachedAppOptimizer;->freezeAppAsyncInternalLSP(Lcom/android/server/am/ProcessRecord;JZ)V+]Landroid/app/IApplicationThread;Lcom/android/server/am/ApplicationThreadDeferred;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
 HPLcom/android/server/am/CachedAppOptimizer;->getPerProcessAggregatedCompactStat(Ljava/lang/String;)Lcom/android/server/am/CachedAppOptimizer$AggregatedProcessCompactionStats;+]Ljava/util/LinkedHashMap;Ljava/util/LinkedHashMap;
+HPLcom/android/server/am/CachedAppOptimizer;->getPerSourceAggregatedCompactStat(Lcom/android/server/am/CachedAppOptimizer$CompactSource;)Lcom/android/server/am/CachedAppOptimizer$AggregatedSourceCompactionStats;+]Ljava/util/EnumMap;Ljava/util/EnumMap;
 HPLcom/android/server/am/CachedAppOptimizer;->lambda$binderErrorInternal$3(Ljava/lang/Integer;Ljava/lang/Integer;)V+]Lcom/android/server/am/CachedAppOptimizer;Lcom/android/server/am/CachedAppOptimizer;
+HSPLcom/android/server/am/CachedAppOptimizer;->onCleanupApplicationRecordLocked(Lcom/android/server/am/ProcessRecord;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
 HSPLcom/android/server/am/CachedAppOptimizer;->onOomAdjustChanged(IILcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/CachedAppOptimizer;Lcom/android/server/am/CachedAppOptimizer;
 HPLcom/android/server/am/CachedAppOptimizer;->onProcessFrozen(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/CachedAppOptimizer;Lcom/android/server/am/CachedAppOptimizer;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
 HPLcom/android/server/am/CachedAppOptimizer;->postUidFrozenMessage(IZ)V
 HPLcom/android/server/am/CachedAppOptimizer;->traceAppFreeze(Ljava/lang/String;II)V
 HPLcom/android/server/am/CachedAppOptimizer;->unfreezeAppInternalLSP(Lcom/android/server/am/ProcessRecord;IZ)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/Freezer;Lcom/android/server/am/Freezer;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
 HPLcom/android/server/am/CachedAppOptimizer;->unfreezeAppLSP(Lcom/android/server/am/ProcessRecord;IZ)V
+HPLcom/android/server/am/CachedAppOptimizer;->unfreezeTemporarily(Lcom/android/server/am/ProcessRecord;I)V+]Lcom/android/server/am/CachedAppOptimizer;Lcom/android/server/am/CachedAppOptimizer;
 HPLcom/android/server/am/CachedAppOptimizer;->unfreezeTemporarily(Lcom/android/server/am/ProcessRecord;IJ)V+]Lcom/android/server/am/CachedAppOptimizer;Lcom/android/server/am/CachedAppOptimizer;
 HPLcom/android/server/am/CachedAppOptimizer;->updateEarliestFreezableTime(Lcom/android/server/am/ProcessRecord;J)J
 HSPLcom/android/server/am/CachedAppOptimizer;->useCompaction()Z
@@ -826,7 +842,7 @@
 HSPLcom/android/server/am/ContentProviderConnection;-><init>(Lcom/android/server/am/ContentProviderRecord;Lcom/android/server/am/ProcessRecord;Ljava/lang/String;I)V
 HSPLcom/android/server/am/ContentProviderConnection;->adjustCounts(II)V
 HPLcom/android/server/am/ContentProviderConnection;->decrementCount(Z)I
-HPLcom/android/server/am/ContentProviderConnection;->incrementCount(Z)I
+HSPLcom/android/server/am/ContentProviderConnection;->incrementCount(Z)I
 HSPLcom/android/server/am/ContentProviderConnection;->initializeCount(Z)V
 HSPLcom/android/server/am/ContentProviderConnection;->startAssociationIfNeeded()V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
 HPLcom/android/server/am/ContentProviderConnection;->stopAssociation()V
@@ -859,10 +875,10 @@
 HSPLcom/android/server/am/ContentProviderRecord;->canRunHere(Lcom/android/server/am/ProcessRecord;)Z
 HSPLcom/android/server/am/ContentProviderRecord;->hasExternalProcessHandles()Z
 HSPLcom/android/server/am/ContentProviderRecord;->newHolder(Lcom/android/server/am/ContentProviderConnection;Z)Landroid/app/ContentProviderHolder;
-HSPLcom/android/server/am/ContentProviderRecord;->onProviderPublishStatusLocked(Z)V+]Landroid/app/IApplicationThread;Lcom/android/server/am/ApplicationThreadDeferred;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HPLcom/android/server/am/EventLogTags;->writeAmPss(IILjava/lang/String;JJJJIIJ)V
 HSPLcom/android/server/am/FgsTempAllowList;->add(IJLjava/lang/Object;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/am/FgsTempAllowList;->get(I)Landroid/util/Pair;+]Landroid/util/SparseArray;Landroid/util/SparseArray;
-HPLcom/android/server/am/FgsTempAllowList;->isAllowed(I)Z+]Lcom/android/server/am/FgsTempAllowList;Lcom/android/server/am/FgsTempAllowList;
+HSPLcom/android/server/am/FgsTempAllowList;->isAllowed(I)Z+]Lcom/android/server/am/FgsTempAllowList;Lcom/android/server/am/FgsTempAllowList;
 HPLcom/android/server/am/HealthStatsBatteryStatsWriter;->writeUid(Landroid/os/health/HealthStatsWriter;Landroid/os/BatteryStats;Landroid/os/BatteryStats$Uid;)V+]Landroid/os/BatteryStats$ControllerActivityCounter;Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;]Landroid/os/BatteryStats$LongCounter;Lcom/android/server/power/stats/BatteryStatsImpl$1;,Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;,Lcom/android/server/power/stats/BatteryStatsImpl$TimeMultiStateCounter;]Landroid/os/BatteryStats$Uid$Sensor;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Sensor;]Landroid/os/BatteryStats$Uid$Wakelock;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Wakelock;]Landroid/os/BatteryStats$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Landroid/os/BatteryStats;Lcom/android/server/power/stats/BatteryStatsImpl;]Landroid/os/health/HealthStatsWriter;Landroid/os/health/HealthStatsWriter;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/HealthStatsBatteryStatsWriter;Lcom/android/server/am/HealthStatsBatteryStatsWriter;]Ljava/util/Iterator;Landroid/util/MapCollections$MapIterator;]Ljava/util/Map$Entry;Landroid/util/MapCollections$MapIterator;]Ljava/util/Set;Landroid/util/MapCollections$EntrySet;
 HSPLcom/android/server/am/HostingRecord;-><init>(Ljava/lang/String;Landroid/content/ComponentName;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V
 HSPLcom/android/server/am/HostingRecord;-><init>(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;IZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
@@ -880,7 +896,7 @@
 HPLcom/android/server/am/OomAdjuster;->collectReachableProcessesLocked(Landroid/util/ArraySet;Ljava/util/ArrayList;Lcom/android/server/am/ActiveUids;)Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/am/OomAdjuster;->computeOomAdjLSP(Lcom/android/server/am/ProcessRecord;ILcom/android/server/am/ProcessRecord;ZJZZIZ)Z+]Lcom/android/server/am/AppProfiler;Lcom/android/server/am/AppProfiler;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
 HSPLcom/android/server/am/OomAdjuster;->computeProviderHostOomAdjLSP(Lcom/android/server/am/ContentProviderConnection;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;JLcom/android/server/am/ProcessRecord;ZZZIIZZ)Z+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
-HSPLcom/android/server/am/OomAdjuster;->computeServiceHostOomAdjLSP(Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;JLcom/android/server/am/ProcessRecord;ZZZIIZZ)Z+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/ActivityServiceConnectionsHolder;Lcom/android/server/wm/ActivityServiceConnectionsHolder;
+HSPLcom/android/server/am/OomAdjuster;->computeServiceHostOomAdjLSP(Lcom/android/server/am/ConnectionRecord;Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;JLcom/android/server/am/ProcessRecord;ZZZIIZZ)Z+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
 HSPLcom/android/server/am/OomAdjuster;->enqueueOomAdjTargetLocked(Lcom/android/server/am/ProcessRecord;)V
 HSPLcom/android/server/am/OomAdjuster;->enqueuePendingTopAppIfNecessaryLSP()I+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;
 HSPLcom/android/server/am/OomAdjuster;->evaluateConnectionPrelude(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;)Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
@@ -896,12 +912,12 @@
 HSPLcom/android/server/am/OomAdjuster;->isBackupProcess(Lcom/android/server/am/ProcessRecord;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/am/OomAdjuster;->isDeviceFullyAwake()Z
 HSPLcom/android/server/am/OomAdjuster;->lambda$new$0(Landroid/os/Message;)Z+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
-HPLcom/android/server/am/OomAdjuster;->maybeSetProcessFollowUpUpdateLocked(Lcom/android/server/am/ProcessRecord;JJ)V
+HSPLcom/android/server/am/OomAdjuster;->maybeSetProcessFollowUpUpdateLocked(Lcom/android/server/am/ProcessRecord;JJ)V
 HSPLcom/android/server/am/OomAdjuster;->maybeUpdateLastTopTime(Lcom/android/server/am/ProcessStateRecord;J)V
 HSPLcom/android/server/am/OomAdjuster;->maybeUpdateUsageStatsLSP(Lcom/android/server/am/ProcessRecord;J)V+]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
 HSPLcom/android/server/am/OomAdjuster;->oomAdjReasonToString(I)Ljava/lang/String;
 HSPLcom/android/server/am/OomAdjuster;->postUpdateOomAdjInnerLSP(ILcom/android/server/am/ActiveUids;JJJZ)V+]Lcom/android/server/am/OomAdjuster$Injector;Lcom/android/server/am/OomAdjuster$Injector;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;
-HPLcom/android/server/am/OomAdjuster;->scheduleFollowUpOomAdjusterUpdateLocked(JJ)V
+HSPLcom/android/server/am/OomAdjuster;->scheduleFollowUpOomAdjusterUpdateLocked(JJ)V
 HSPLcom/android/server/am/OomAdjuster;->setAttachingProcessStatesLSP(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/OomAdjuster$Injector;Lcom/android/server/am/OomAdjuster$Injector;]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
 HSPLcom/android/server/am/OomAdjuster;->setIntermediateAdjLSP(Lcom/android/server/am/ProcessRecord;III)I
 HSPLcom/android/server/am/OomAdjuster;->setIntermediateProcStateLSP(Lcom/android/server/am/ProcessRecord;II)V
@@ -962,16 +978,17 @@
 HSPLcom/android/server/am/PackageList;->forEachPackage(Ljava/util/function/BiConsumer;)V+]Ljava/util/function/BiConsumer;Lcom/android/server/am/ProcessProfileRecord$$ExternalSyntheticLambda1;
 HSPLcom/android/server/am/PackageList;->getPackageList()[Ljava/lang/String;
 HSPLcom/android/server/am/PackageList;->searchEachPackage(Ljava/util/function/Function;)Ljava/lang/Object;+]Ljava/util/function/Function;Lcom/android/server/am/ContentProviderHelper$$ExternalSyntheticLambda2;
-HPLcom/android/server/am/PendingIntentController;->cancelIntentSender(Landroid/content/IIntentSender;)V+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController;
-HPLcom/android/server/am/PendingIntentController;->cancelIntentSender(Lcom/android/server/am/PendingIntentRecord;ZI)V+]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController;]Ljava/util/HashMap;Ljava/util/HashMap;
-HSPLcom/android/server/am/PendingIntentController;->decrementUidStatLocked(Lcom/android/server/am/PendingIntentRecord;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;
+HSPLcom/android/server/am/PendingIntentController;->cancelIntentSender(Landroid/content/IIntentSender;)V+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController;
+HSPLcom/android/server/am/PendingIntentController;->cancelIntentSender(Lcom/android/server/am/PendingIntentRecord;ZI)V+]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController;]Ljava/util/HashMap;Ljava/util/HashMap;
+HSPLcom/android/server/am/PendingIntentController;->decrementUidStatLocked(Lcom/android/server/am/PendingIntentRecord;)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;
 HSPLcom/android/server/am/PendingIntentController;->getIntentSender(ILjava/lang/String;Ljava/lang/String;IILandroid/os/IBinder;Ljava/lang/String;I[Landroid/content/Intent;[Ljava/lang/String;ILandroid/os/Bundle;)Lcom/android/server/am/PendingIntentRecord;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController;]Ljava/lang/ref/WeakReference;Ljava/lang/ref/WeakReference;]Ljava/util/HashMap;Ljava/util/HashMap;
-HSPLcom/android/server/am/PendingIntentController;->incrementUidStatLocked(Lcom/android/server/am/PendingIntentRecord;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/internal/util/RingBuffer;Lcom/android/internal/util/RingBuffer;
-HPLcom/android/server/am/PendingIntentController;->makeIntentSenderCanceled(Lcom/android/server/am/PendingIntentRecord;I)V+]Lcom/android/server/AlarmManagerInternal;Lcom/android/server/alarm/AlarmManagerService$LocalService;
+HSPLcom/android/server/am/PendingIntentController;->incrementUidStatLocked(Lcom/android/server/am/PendingIntentRecord;)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;
+HSPLcom/android/server/am/PendingIntentController;->makeIntentSenderCanceled(Lcom/android/server/am/PendingIntentRecord;I)V+]Lcom/android/server/AlarmManagerInternal;Lcom/android/server/alarm/AlarmManagerService$LocalService;
 HSPLcom/android/server/am/PendingIntentRecord$Key;-><init>(ILjava/lang/String;Ljava/lang/String;Landroid/os/IBinder;Ljava/lang/String;I[Landroid/content/Intent;[Ljava/lang/String;ILcom/android/server/wm/SafeActivityOptions;I)V+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/os/IBinder;Lcom/android/server/wm/ActivityRecord$Token;
 HSPLcom/android/server/am/PendingIntentRecord$Key;->equals(Ljava/lang/Object;)Z+]Landroid/content/Intent;Landroid/content/Intent;
 HSPLcom/android/server/am/PendingIntentRecord$Key;->hashCode()I
 HSPLcom/android/server/am/PendingIntentRecord;-><init>(Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentRecord$Key;I)V
+HSPLcom/android/server/am/PendingIntentRecord;->completeFinalize()V+]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController;]Ljava/util/HashMap;Ljava/util/HashMap;
 HPLcom/android/server/am/PendingIntentRecord;->getBackgroundStartPrivilegesForActivitySender(Landroid/util/ArraySet;Landroid/os/IBinder;Landroid/os/Bundle;I)Landroid/app/BackgroundStartPrivileges;+]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;
 HPLcom/android/server/am/PendingIntentRecord;->sendInner(Landroid/app/IApplicationThread;ILandroid/content/Intent;Ljava/lang/String;Landroid/os/IBinder;Landroid/content/IIntentReceiver;Ljava/lang/String;Landroid/os/IBinder;Ljava/lang/String;IIILandroid/os/Bundle;)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/ActivityOptions;Landroid/app/ActivityOptions;]Landroid/app/BackgroundStartPrivileges;Landroid/app/BackgroundStartPrivileges;]Landroid/content/IIntentReceiver;Landroid/app/PendingIntent$FinishedDispatcher;,Landroid/content/IIntentReceiver$Stub$Proxy;]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/am/PendingIntentController;Lcom/android/server/am/PendingIntentController;]Lcom/android/server/am/UserController;Lcom/android/server/am/UserController;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Lcom/android/server/wm/SafeActivityOptions;Lcom/android/server/wm/SafeActivityOptions;
 HSPLcom/android/server/am/PendingStartActivityUids;->delete(IJ)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;
@@ -992,6 +1009,7 @@
 HSPLcom/android/server/am/ProcessErrorStateRecord;-><init>(Lcom/android/server/am/ProcessRecord;)V
 HSPLcom/android/server/am/ProcessErrorStateRecord;->isCrashing()Z
 HSPLcom/android/server/am/ProcessList$$ExternalSyntheticLambda1;-><init>(Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessRecord;Ljava/lang/String;[IIIILjava/lang/String;Ljava/lang/String;Ljava/lang/String;J)V
+HSPLcom/android/server/am/ProcessList$$ExternalSyntheticLambda1;->run()V
 HSPLcom/android/server/am/ProcessList$$ExternalSyntheticLambda5;-><init>(Lcom/android/server/am/ProcessList;Lcom/android/server/am/ProcessRecord;Ljava/lang/String;[IIIILjava/lang/String;Ljava/lang/String;Ljava/lang/String;J)V
 HSPLcom/android/server/am/ProcessList$$ExternalSyntheticLambda5;->run()V
 HSPLcom/android/server/am/ProcessList$MyProcessMap;->put(Ljava/lang/String;ILcom/android/server/am/ProcessRecord;)Lcom/android/server/am/ProcessRecord;+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;
@@ -1010,6 +1028,7 @@
 HSPLcom/android/server/am/ProcessList;->getMemLevel(I)J
 HSPLcom/android/server/am/ProcessList;->getMemoryInfo(Landroid/app/ActivityManager$MemoryInfo;)V
 HSPLcom/android/server/am/ProcessList;->getNumForegroundServices()Landroid/util/Pair;+]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/am/ProcessList;->getPackageAppDataInfoMap(Landroid/content/pm/PackageManagerInternal;[Ljava/lang/String;I)Ljava/util/Map;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;
 HSPLcom/android/server/am/ProcessList;->getProcessRecordLocked(Ljava/lang/String;I)Lcom/android/server/am/ProcessRecord;+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/am/ProcessList;->getRunningAppProcessesLOSP(ZIZII)Ljava/util/List;+]Lcom/android/server/am/ProcessErrorStateRecord;Lcom/android/server/am/ProcessErrorStateRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/am/ProcessList;->getUidProcStateLOSP(I)I
@@ -1025,6 +1044,7 @@
 HSPLcom/android/server/am/ProcessList;->removeLruProcessLocked(Lcom/android/server/am/ProcessRecord;)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/am/ProcessList;->removeProcessNameLocked(Ljava/lang/String;ILcom/android/server/am/ProcessRecord;)Lcom/android/server/am/ProcessRecord;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/FgsTempAllowList;Lcom/android/server/am/FgsTempAllowList;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/am/ProcessList;->searchEachLruProcessesLOSP(ZLjava/util/function/Function;)Ljava/lang/Object;+]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Function;Lcom/android/server/am/ActiveServices$$ExternalSyntheticLambda1;,Lcom/android/server/am/ActiveServices$$ExternalSyntheticLambda5;,Lcom/android/server/am/ActiveServices$$ExternalSyntheticLambda6;,Lcom/android/server/am/ActiveServices$$ExternalSyntheticLambda7;
+HPLcom/android/server/am/ProcessList;->sendPackageBroadcastLocked(I[Ljava/lang/String;I)V+]Landroid/app/IApplicationThread;Lcom/android/server/am/ApplicationThreadDeferred;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/am/ProcessList;->startProcess(Lcom/android/server/am/HostingRecord;Ljava/lang/String;Lcom/android/server/am/ProcessRecord;I[IIIILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;J)Landroid/os/Process$ProcessStartResult;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/os/AppZygote;Landroid/os/AppZygote;]Lcom/android/server/AppStateTracker;Lcom/android/server/AppStateTrackerImpl;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat;
 HSPLcom/android/server/am/ProcessList;->startProcessLocked(Lcom/android/server/am/HostingRecord;Ljava/lang/String;Lcom/android/server/am/ProcessRecord;I[IIIILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;JJ)Z+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat;
 HSPLcom/android/server/am/ProcessList;->startProcessLocked(Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/HostingRecord;IZZLjava/lang/String;)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/os/storage/StorageManagerInternal;Lcom/android/server/StorageManagerService$StorageManagerInternalImpl;]Lcom/android/server/am/ActivityManagerService$HiddenApiSettings;Lcom/android/server/am/ActivityManagerService$HiddenApiSettings;]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList;
@@ -1054,6 +1074,7 @@
 HSPLcom/android/server/am/ProcessReceiverRecord;->numberOfReceivers()I
 HSPLcom/android/server/am/ProcessRecord;-><init>(Lcom/android/server/am/ActivityManagerService;Landroid/content/pm/ApplicationInfo;Ljava/lang/String;ILjava/lang/String;ILjava/lang/String;)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
 HSPLcom/android/server/am/ProcessRecord;->addPackage(Ljava/lang/String;JLcom/android/server/am/ProcessStatsService;)Z
+HSPLcom/android/server/am/ProcessRecord;->forEachConnectionHost(Ljava/util/function/Consumer;)V+]Ljava/util/function/Consumer;Lcom/android/server/am/ActivityManagerService$$ExternalSyntheticLambda13;,Lcom/android/server/am/ActivityManagerService$$ExternalSyntheticLambda14;
 HSPLcom/android/server/am/ProcessRecord;->getActiveInstrumentation()Lcom/android/server/am/ActiveInstrumentation;
 HSPLcom/android/server/am/ProcessRecord;->getHostingRecord()Lcom/android/server/am/HostingRecord;
 HSPLcom/android/server/am/ProcessRecord;->getLastActivityTime()J
@@ -1071,6 +1092,7 @@
 HSPLcom/android/server/am/ProcessRecord;->getUidRecord()Lcom/android/server/am/UidRecord;
 HSPLcom/android/server/am/ProcessRecord;->getWaitingToKill()Ljava/lang/String;
 HSPLcom/android/server/am/ProcessRecord;->getWindowProcessController()Lcom/android/server/wm/WindowProcessController;
+HSPLcom/android/server/am/ProcessRecord;->hasActiveInstrumentation()Z
 HSPLcom/android/server/am/ProcessRecord;->hasActivities()Z+]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
 HSPLcom/android/server/am/ProcessRecord;->hasActivitiesOrRecentTasks()Z+]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
 HSPLcom/android/server/am/ProcessRecord;->isCached()Z
@@ -1085,8 +1107,8 @@
 HPLcom/android/server/am/ProcessRecord;->killLocked(Ljava/lang/String;Ljava/lang/String;IIZZ)V+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;]Lcom/android/server/am/ProcessErrorStateRecord;Lcom/android/server/am/ProcessErrorStateRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
 HSPLcom/android/server/am/ProcessRecord;->makeActive(Lcom/android/server/am/ApplicationThreadDeferred;Lcom/android/server/am/ProcessStatsService;)V+]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
 HSPLcom/android/server/am/ProcessRecord;->onCleanupApplicationRecordLSP(Lcom/android/server/am/ProcessStatsService;ZZ)Z+]Lcom/android/server/am/OomAdjuster;Lcom/android/server/am/OomAdjusterModernImpl;]Lcom/android/server/am/ProcessErrorStateRecord;Lcom/android/server/am/ProcessErrorStateRecord;]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/am/ProcessStateController;Lcom/android/server/am/ProcessStateController;
-HPLcom/android/server/am/ProcessRecord;->onProcessUnfrozen()V
 HSPLcom/android/server/am/ProcessRecord;->removeBackgroundStartPrivileges(Landroid/os/Binder;)V+]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
+HSPLcom/android/server/am/ProcessRecord;->resetPackageList(Lcom/android/server/am/ProcessStatsService;)V
 HSPLcom/android/server/am/ProcessRecord;->setBackgroundStartPrivileges(Landroid/os/Binder;Landroid/app/BackgroundStartPrivileges;)V
 HSPLcom/android/server/am/ProcessRecord;->setLastActivityTime(J)V
 HSPLcom/android/server/am/ProcessRecord;->setLruSeq(I)V
@@ -1094,7 +1116,7 @@
 HSPLcom/android/server/am/ProcessRecord;->toShortString(Ljava/lang/StringBuilder;)V
 HSPLcom/android/server/am/ProcessRecord;->toString()Ljava/lang/String;+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
 HSPLcom/android/server/am/ProcessServiceRecord;-><init>(Lcom/android/server/am/ProcessRecord;)V
-HSPLcom/android/server/am/ProcessServiceRecord;->addBoundClientUid(ILjava/lang/String;J)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
+HPLcom/android/server/am/ProcessServiceRecord;->addBoundClientUid(ILjava/lang/String;J)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
 HSPLcom/android/server/am/ProcessServiceRecord;->addBoundClientUidsOfNewService(Lcom/android/server/am/ServiceRecord;)V+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/am/ProcessServiceRecord;->addConnection(Lcom/android/server/am/ConnectionRecord;)V
 HSPLcom/android/server/am/ProcessServiceRecord;->addSdkSandboxConnectionIfNecessary(Lcom/android/server/am/ConnectionRecord;)V
@@ -1145,6 +1167,7 @@
 HSPLcom/android/server/am/ProcessStateRecord;->getCachedIsHomeProcess()Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
 HSPLcom/android/server/am/ProcessStateRecord;->getCachedIsPreviousProcess()Z+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
 HSPLcom/android/server/am/ProcessStateRecord;->getCachedIsReceivingBroadcast([I)Z+]Lcom/android/server/am/ActivityManagerService;Lcom/android/server/am/ActivityManagerService;
+HSPLcom/android/server/am/ProcessStateRecord;->getCurCapability()I
 HSPLcom/android/server/am/ProcessStateRecord;->getCurProcState()I
 HSPLcom/android/server/am/ProcessStateRecord;->getSetAdj()I
 HSPLcom/android/server/am/ProcessStateRecord;->getSetProcState()I
@@ -1208,7 +1231,6 @@
 HSPLcom/android/server/am/UidProcessMap;->get(ILjava/lang/String;)Ljava/lang/Object;+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/am/UidRecord;-><init>(ILcom/android/server/am/ActivityManagerService;)V
 HSPLcom/android/server/am/UidRecord;->areAllProcessesFrozen(Lcom/android/server/am/ProcessRecord;)Z
-HSPLcom/android/server/am/UidRecord;->forEachProcess(Ljava/util/function/Consumer;)V+]Ljava/util/function/Consumer;Lcom/android/server/am/ActiveUids$$ExternalSyntheticLambda0;,Lcom/android/server/am/ProcessList$$ExternalSyntheticLambda3;
 HSPLcom/android/server/am/UidRecord;->getMinProcAdj()I+]Lcom/android/server/am/ProcessRecord;Lcom/android/server/am/ProcessRecord;
 HSPLcom/android/server/am/UserController$Injector;->getUserManager()Lcom/android/server/pm/UserManagerService;
 HSPLcom/android/server/am/UserController;->exists(I)Z+]Lcom/android/server/am/UserController$Injector;Lcom/android/server/am/UserController$Injector;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;
@@ -1258,13 +1280,14 @@
 HSPLcom/android/server/appop/AppOpsService;->checkOperationRawForDevice(IILjava/lang/String;Ljava/lang/String;I)I
 HSPLcom/android/server/appop/AppOpsService;->checkPackage(ILjava/lang/String;)I
 HSPLcom/android/server/appop/AppOpsService;->collectAsyncNotedOp(ILjava/lang/String;ILjava/lang/String;ILjava/lang/String;ZI)V+]Landroid/os/RemoteCallbackList;Landroid/os/RemoteCallbackList$Builder$1;,Lcom/android/server/appop/AppOpsService$8;]Ljava/util/ArrayList;Ljava/util/ArrayList;
-HSPLcom/android/server/appop/AppOpsService;->collectOps(Lcom/android/server/appop/AppOpsService$Ops;[ILjava/lang/String;)Ljava/util/ArrayList;+]Landroid/content/Context;Landroid/app/ContextImpl;
-HPLcom/android/server/appop/AppOpsService;->doForAllAttributedOpsInUidLocked(ILjava/util/function/Consumer;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/function/Consumer;Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda17;,Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda18;,Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda19;
+HSPLcom/android/server/appop/AppOpsService;->collectOps(Lcom/android/server/appop/AppOpsService$Ops;[ILjava/lang/String;)Ljava/util/ArrayList;+]Landroid/content/Context;Landroid/app/ContextImpl;]Ljava/util/Map;Landroid/util/ArrayMap;
+HPLcom/android/server/appop/AppOpsService;->doForAllAttributedOpsInUidLocked(ILjava/util/function/Consumer;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/function/Consumer;Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda17;,Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda18;,Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda19;,Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda20;
 HSPLcom/android/server/appop/AppOpsService;->enforceManageAppOpsModes(III)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;
 HSPLcom/android/server/appop/AppOpsService;->filterAppAccessUnlocked(Ljava/lang/String;I)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;
 HSPLcom/android/server/appop/AppOpsService;->finishOperation(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;)V
 HSPLcom/android/server/appop/AppOpsService;->finishOperationImpl(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;I)V
 HSPLcom/android/server/appop/AppOpsService;->finishOperationUnchecked(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;I)V
+HSPLcom/android/server/appop/AppOpsService;->getAppOpMode(IILjava/lang/String;Ljava/lang/String;IZZ)I+]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceTracingDecorator;
 HSPLcom/android/server/appop/AppOpsService;->getBypassforPackage(Lcom/android/server/pm/pkg/PackageState;)Landroid/app/AppOpsManager$RestrictionBypass;+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;
 HSPLcom/android/server/appop/AppOpsService;->getOpLocked(IILjava/lang/String;Ljava/lang/String;ZLandroid/app/AppOpsManager$RestrictionBypass;Z)Lcom/android/server/appop/AppOpsService$Op;
 HSPLcom/android/server/appop/AppOpsService;->getOpLocked(Lcom/android/server/appop/AppOpsService$Ops;IIZ)Lcom/android/server/appop/AppOpsService$Op;
@@ -1281,7 +1304,7 @@
 HSPLcom/android/server/appop/AppOpsService;->isOpRestrictedDueToSuspend(ILjava/lang/String;I)Z+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;
 HSPLcom/android/server/appop/AppOpsService;->isOpRestrictedLocked(IILjava/lang/String;Ljava/lang/String;ILandroid/app/AppOpsManager$RestrictionBypass;Z)Z
 HSPLcom/android/server/appop/AppOpsService;->isSpecialPackage(ILjava/lang/String;)Z
-HSPLcom/android/server/appop/AppOpsService;->isValidVirtualDeviceId(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/companion/virtual/VirtualDeviceManagerInternal;Lcom/android/server/companion/virtual/VirtualDeviceManagerService$LocalService;
+HSPLcom/android/server/appop/AppOpsService;->isValidVirtualDeviceId(I)Z
 HSPLcom/android/server/appop/AppOpsService;->noteOperation(IILjava/lang/String;Ljava/lang/String;ZLjava/lang/String;Z)Landroid/app/SyncNotedAppOp;
 HSPLcom/android/server/appop/AppOpsService;->noteOperationImpl(IILjava/lang/String;Ljava/lang/String;IZLjava/lang/String;ZI)Landroid/app/SyncNotedAppOp;
 HSPLcom/android/server/appop/AppOpsService;->noteOperationUnchecked(IILjava/lang/String;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;IIZLjava/lang/String;ZI)Landroid/app/SyncNotedAppOp;+]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceTracingDecorator;
@@ -1293,12 +1316,11 @@
 HSPLcom/android/server/appop/AppOpsService;->readAttributionOp(Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/server/appop/AppOpsService$Op;Ljava/lang/String;)V+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;
 HSPLcom/android/server/appop/AppOpsService;->readOp(Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/server/appop/AppOpsService$UidState;Ljava/lang/String;)V+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;
 HSPLcom/android/server/appop/AppOpsService;->reportRuntimeAppOpAccessMessageAsyncLocked(ILjava/lang/String;ILjava/lang/String;Ljava/lang/String;)V
-HSPLcom/android/server/appop/AppOpsService;->resolveUid(Ljava/lang/String;)I
 HSPLcom/android/server/appop/AppOpsService;->scheduleOpActiveChangedIfNeededLocked(IILjava/lang/String;Ljava/lang/String;IZII)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/appop/AppOpsService;->scheduleOpNotedIfNeededLocked(IILjava/lang/String;Ljava/lang/String;III)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/appop/AppOpsService;->scheduleOpStartedIfNeededLocked(IILjava/lang/String;Ljava/lang/String;IIIIII)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/appop/AppOpsService;->scheduleWriteLocked()V
-HPLcom/android/server/appop/AppOpsService;->setUidMode(IIILcom/android/internal/app/IAppOpsCallback;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceTracingDecorator;
+HSPLcom/android/server/appop/AppOpsService;->setUidMode(IIILcom/android/internal/app/IAppOpsCallback;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceTracingDecorator;
 HSPLcom/android/server/appop/AppOpsService;->startOperation(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;ZZLjava/lang/String;ZII)Landroid/app/SyncNotedAppOp;
 HSPLcom/android/server/appop/AppOpsService;->startOperationImpl(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;IZZLjava/lang/String;ZII)Landroid/app/SyncNotedAppOp;+]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;
 HSPLcom/android/server/appop/AppOpsService;->startOperationUnchecked(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;IIZZLjava/lang/String;ZII)Landroid/app/SyncNotedAppOp;+]Lcom/android/server/appop/AppOpsCheckingServiceInterface;Lcom/android/server/appop/AppOpsCheckingServiceTracingDecorator;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;
@@ -1306,16 +1328,15 @@
 HSPLcom/android/server/appop/AppOpsService;->switchPackageIfBootTimeOrRarelyUsedLocked(Ljava/lang/String;)V+]Ljava/util/concurrent/ThreadLocalRandom;Ljava/util/concurrent/ThreadLocalRandom;
 HPLcom/android/server/appop/AppOpsService;->updatePermissionRevokedCompat(III)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/content/pm/PermissionInfo;Landroid/content/pm/PermissionInfo;]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/appop/AppOpsService;->updateUidProcState(III)V+]Lcom/android/server/appop/AppOpsUidStateTracker;Lcom/android/server/appop/AppOpsUidStateTrackerImpl;
-HSPLcom/android/server/appop/AppOpsService;->verifyAndGetBypass(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcom/android/server/appop/AppOpsService$PackageVerificationResult;
-HSPLcom/android/server/appop/AppOpsService;->verifyAndGetBypass(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Lcom/android/server/appop/AppOpsService$PackageVerificationResult;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/compat/IPlatformCompat;Lcom/android/server/compat/PlatformCompat;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;
 HSPLcom/android/server/appop/AppOpsService;->verifyIncomingOp(I)V+]Landroid/content/Context;Landroid/app/ContextImpl;
 HSPLcom/android/server/appop/AppOpsService;->verifyIncomingUid(I)V+]Landroid/content/Context;Landroid/app/ContextImpl;
 HPLcom/android/server/appop/AppOpsService;->writeRecentAccesses()V+]Landroid/util/AtomicFile;Landroid/util/AtomicFile;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/Set;Landroid/util/MapCollections$KeySet;
 HPLcom/android/server/appop/AppOpsUidStateTrackerImpl$$ExternalSyntheticLambda0;->accept(Ljava/lang/Object;Ljava/lang/Object;)V
-HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V+]Lcom/android/server/appop/AppOpsUidStateTracker$UidStateChangedCallback;Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda12;,Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda13;
+HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V+]Lcom/android/server/appop/AppOpsUidStateTracker$UidStateChangedCallback;Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda12;,Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda13;,Lcom/android/server/appop/AppOpsService$$ExternalSyntheticLambda14;
 HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$1$$ExternalSyntheticLambda0;->run()V
+HPLcom/android/server/appop/AppOpsUidStateTrackerImpl$1$$ExternalSyntheticLambda1;->run()V
 HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$1;->execute(Ljava/lang/Runnable;)V
-HPLcom/android/server/appop/AppOpsUidStateTrackerImpl$1;->executeDelayed(Ljava/lang/Runnable;J)V
+HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$1;->executeDelayed(Ljava/lang/Runnable;J)V
 HPLcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog$$ExternalSyntheticLambda0;->accept(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V+]Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;
 HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V+]Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;
 HSPLcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog$$ExternalSyntheticLambda2;->accept(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V+]Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;Lcom/android/server/appop/AppOpsUidStateTrackerImpl$EventLog;
@@ -1339,10 +1360,19 @@
 HSPLcom/android/server/appop/AttributedOp;->createAttributedOpEntryLocked()Landroid/app/AppOpsManager$AttributedOpEntry;+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;
 HSPLcom/android/server/appop/AttributedOp;->deepClone(Landroid/util/LongSparseArray;)Landroid/util/LongSparseArray;+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;
 HSPLcom/android/server/appop/AttributedOp;->finishOrPause(Landroid/os/IBinder;ZZ)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/Pools$SimplePool;Lcom/android/server/appop/AttributedOp$InProgressStartOpEventPool;]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;
+HSPLcom/android/server/appop/AttributedOp;->isRunning()Z
 HSPLcom/android/server/appop/AttributedOp;->onUidStateChanged(I)V
 HSPLcom/android/server/appop/AttributedOp;->rejected(II)V
 HSPLcom/android/server/appop/AttributedOp;->rejected(JII)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;
 HSPLcom/android/server/appop/AttributedOp;->startedOrPaused(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;IIIIZZ)V+]Lcom/android/server/appop/AppOpsService;Lcom/android/server/appop/AppOpsService;]Lcom/android/server/appop/AttributedOp$InProgressStartOpEventPool;Lcom/android/server/appop/AttributedOp$InProgressStartOpEventPool;
+HSPLcom/android/server/appop/DiscreteOpsRegistry;->isDiscreteOp(II)Z
+HPLcom/android/server/appop/DiscreteOpsXmlRegistry$DiscreteDeviceOp;->addDiscreteAccess(Ljava/lang/String;IIJJII)V+]Ljava/util/List;Ljava/util/ArrayList;
+HPLcom/android/server/appop/DiscreteOpsXmlRegistry$DiscreteOp;->getOrCreateDiscreteDeviceOp(Ljava/lang/String;)Lcom/android/server/appop/DiscreteOpsXmlRegistry$DiscreteDeviceOp;
+HPLcom/android/server/appop/DiscreteOpsXmlRegistry$DiscreteOps;->getOrCreateDiscreteUidOps(I)Lcom/android/server/appop/DiscreteOpsXmlRegistry$DiscreteUidOps;
+HPLcom/android/server/appop/DiscreteOpsXmlRegistry$DiscretePackageOps;->getOrCreateDiscreteOp(I)Lcom/android/server/appop/DiscreteOpsXmlRegistry$DiscreteOp;
+HPLcom/android/server/appop/DiscreteOpsXmlRegistry$DiscreteUidOps;->getOrCreateDiscretePackageOps(Ljava/lang/String;)Lcom/android/server/appop/DiscreteOpsXmlRegistry$DiscretePackageOps;
+HSPLcom/android/server/appop/DiscreteOpsXmlRegistry;->recordDiscreteAccess(ILjava/lang/String;Ljava/lang/String;ILjava/lang/String;IIJJIII)V
+HPLcom/android/server/appop/HistoricalRegistry$Persistence;->handlePersistHistoricalOpsRecursiveDLocked(Ljava/io/File;Ljava/io/File;Ljava/util/List;Ljava/util/Set;I)V+]Ljava/io/File;Ljava/io/File;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList;,Ljava/util/LinkedList;]Ljava/util/Set;Landroid/util/ArraySet;,Ljava/util/Collections$EmptySet;
 HPLcom/android/server/appop/HistoricalRegistry$Persistence;->readHistoricalAttributionOpsDLocked(Landroid/app/AppOpsManager$HistoricalOps;ILjava/lang/String;Lcom/android/modules/utils/TypedXmlPullParser;Ljava/lang/String;[Ljava/lang/String;IID)Landroid/app/AppOpsManager$HistoricalOps;+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;
 HPLcom/android/server/appop/HistoricalRegistry$Persistence;->readHistoricalOpDLocked(Landroid/app/AppOpsManager$HistoricalOps;ILjava/lang/String;Ljava/lang/String;Lcom/android/modules/utils/TypedXmlPullParser;[Ljava/lang/String;IID)Landroid/app/AppOpsManager$HistoricalOps;+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;
 HPLcom/android/server/appop/HistoricalRegistry$Persistence;->readHistoricalPackageOpsDLocked(Landroid/app/AppOpsManager$HistoricalOps;ILcom/android/modules/utils/TypedXmlPullParser;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;IID)Landroid/app/AppOpsManager$HistoricalOps;+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;
@@ -1369,11 +1399,13 @@
 HSPLcom/android/server/appwidget/AppWidgetServiceImpl;->isBoundWidgetPackage(Ljava/lang/String;I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HPLcom/android/server/appwidget/AppWidgetServiceImpl;->isProfileWithLockedParent(I)Z+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserManager;Landroid/os/UserManager;
 HPLcom/android/server/appwidget/AppWidgetServiceImpl;->lookupProviderLocked(Lcom/android/server/appwidget/AppWidgetServiceImpl$ProviderId;)Lcom/android/server/appwidget/AppWidgetServiceImpl$Provider;+]Ljava/util/ArrayList;Ljava/util/ArrayList;
-HPLcom/android/server/appwidget/AppWidgetServiceImpl;->parseAppWidgetProviderInfo(Landroid/content/Context;Lcom/android/server/appwidget/AppWidgetServiceImpl$ProviderId;Landroid/content/pm/ActivityInfo;Ljava/lang/String;)Landroid/appwidget/AppWidgetProviderInfo;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/content/res/XmlResourceParser;Landroid/content/res/XmlBlock$Parser;]Ljava/lang/CharSequence;Ljava/lang/String;
 HPLcom/android/server/appwidget/AppWidgetServiceImpl;->serializeProvider(Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/server/appwidget/AppWidgetServiceImpl$Provider;Z)V+]Landroid/util/IntArray;Landroid/util/IntArray;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;,Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;
+HPLcom/android/server/appwidget/AppWidgetServiceImpl;->writeProfileStateToStreamLocked(Ljava/io/OutputStream;I)Z+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;
 HPLcom/android/server/appwidget/AppWidgetXmlUtil;->writeAppWidgetProviderInfoLocked(Lcom/android/modules/utils/TypedXmlSerializer;Landroid/appwidget/AppWidgetProviderInfo;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;
 HSPLcom/android/server/audio/AudioService$VolumeStreamState;->observeDevicesForStream_syncVSS(Z)Ljava/util/Set;+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/audio/AudioService;Lcom/android/server/audio/AudioService;]Lcom/android/server/audio/SystemServerAdapter;Lcom/android/server/audio/SystemServerAdapter;]Ljava/util/Set;Ljava/util/TreeSet;
+HSPLcom/android/server/audio/AudioService;->getDeviceForStream(I)I+]Lcom/android/server/audio/AudioService;Lcom/android/server/audio/AudioService;
 HSPLcom/android/server/audio/AudioService;->getDeviceSetForStream(I)Ljava/util/Set;+]Lcom/android/server/audio/AudioService$VolumeStreamState;Lcom/android/server/audio/AudioService$VolumeStreamState;]Lcom/android/server/audio/AudioService;Lcom/android/server/audio/AudioService;
+HSPLcom/android/server/audio/AudioService;->getStreamVolume(II)I+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/audio/AudioService$VolumeStreamState;Lcom/android/server/audio/AudioService$VolumeStreamState;]Lcom/android/server/audio/AudioService;Lcom/android/server/audio/AudioService;
 HSPLcom/android/server/audio/AudioService;->getVssForStreamOrDefault(I)Lcom/android/server/audio/AudioService$VolumeStreamState;+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/audio/AudioService;->selectOneAudioDevice(Ljava/util/Set;)I+]Ljava/util/Iterator;Ljava/util/TreeMap$KeyIterator;]Ljava/util/Set;Ljava/util/TreeSet;
 HSPLcom/android/server/audio/AudioSystemAdapter;->getDevicesForAttributesImpl(Landroid/media/AudioAttributes;Z)Ljava/util/ArrayList;+]Ljava/util/concurrent/ConcurrentHashMap;Ljava/util/concurrent/ConcurrentHashMap;
@@ -1384,6 +1416,7 @@
 HSPLcom/android/server/backup/BackupManagerService;->isUserReadyForBackup(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/backup/BackupManagerService;Lcom/android/server/backup/BackupManagerService;
 HPLcom/android/server/backup/TransportManager;->getRegisteredTransportEntryLocked(Ljava/lang/String;)Ljava/util/Map$Entry;+]Ljava/util/Iterator;Landroid/util/MapCollections$MapIterator;]Ljava/util/Map$Entry;Landroid/util/MapCollections$MapIterator;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/Set;Landroid/util/MapCollections$EntrySet;
 HPLcom/android/server/backup/TransportManager;->updateTransportAttributes(Landroid/content/ComponentName;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/CharSequence;)V+]Ljava/util/Map;Landroid/util/ArrayMap;
+HPLcom/android/server/backup/UserBackupManagerService;->dataChangedTargets(Ljava/lang/String;)Ljava/util/HashSet;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HPLcom/android/server/backup/UserBackupManagerService;->isAppEligibleForBackup(Ljava/lang/String;)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/backup/TransportManager;Lcom/android/server/backup/TransportManager;]Lcom/android/server/backup/utils/BackupEligibilityRules;Lcom/android/server/backup/utils/BackupEligibilityRules;
 HPLcom/android/server/backup/UserBackupManagerService;->updateTransportAttributes(ILandroid/content/ComponentName;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/CharSequence;)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/backup/TransportManager;Lcom/android/server/backup/TransportManager;
 HPLcom/android/server/backup/transport/TransportConnection;-><init>(ILandroid/content/Context;Lcom/android/server/backup/transport/TransportStats;Landroid/content/Intent;Landroid/content/ComponentName;Ljava/lang/String;Ljava/lang/String;Landroid/os/Handler;)V
@@ -1397,7 +1430,9 @@
 HPLcom/android/server/backup/transport/TransportConnectionManager;->disposeOfTransportClient(Lcom/android/server/backup/transport/TransportConnection;Ljava/lang/String;)V+]Lcom/android/server/backup/transport/TransportConnection;Lcom/android/server/backup/transport/TransportConnection;]Ljava/util/Map;Ljava/util/WeakHashMap;
 HPLcom/android/server/backup/transport/TransportConnectionManager;->getTransportClient(Landroid/content/ComponentName;Ljava/lang/String;Landroid/content/Intent;)Lcom/android/server/backup/transport/TransportConnection;+]Ljava/util/Map;Ljava/util/WeakHashMap;
 HPLcom/android/server/backup/transport/TransportUtils;->formatMessage(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
+HPLcom/android/server/backup/utils/BackupEligibilityRules;->appIsEligibleForBackup(Landroid/content/pm/ApplicationInfo;)Z+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Lcom/android/server/backup/utils/BackupEligibilityRules;Lcom/android/server/backup/utils/BackupEligibilityRules;]Ljava/util/Set;Ljava/util/HashSet;
 HPLcom/android/server/backup/utils/SparseArrayUtils;->union(Landroid/util/SparseArray;)Ljava/util/HashSet;+]Landroid/util/SparseArray;Landroid/util/SparseArray;
+HPLcom/android/server/biometrics/PreAuthInfo;->create(Landroid/app/trust/ITrustManager;Landroid/app/admin/DevicePolicyManager;Lcom/android/server/biometrics/BiometricService$SettingObserver;Ljava/util/List;ILandroid/hardware/biometrics/PromptInfo;Ljava/lang/String;ZLandroid/content/Context;Lcom/android/server/biometrics/BiometricCameraManager;Landroid/os/UserManager;)Lcom/android/server/biometrics/PreAuthInfo;+]Landroid/app/trust/ITrustManager;Lcom/android/server/trust/TrustManagerService$3;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/hardware/biometrics/PromptInfo;Landroid/hardware/biometrics/PromptInfo;]Landroid/os/UserManager;Landroid/os/UserManager;]Lcom/android/server/biometrics/BiometricService$SettingObserver;Lcom/android/server/biometrics/BiometricService$SettingObserver;]Ljava/util/Iterator;Ljava/util/concurrent/CopyOnWriteArrayList$COWIterator;]Ljava/util/List;Ljava/util/concurrent/CopyOnWriteArrayList;
 HSPLcom/android/server/biometrics/sensors/BiometricServiceRegistry;->getProviderForSensor(I)Lcom/android/server/biometrics/sensors/BiometricServiceProvider;+]Lcom/android/server/biometrics/sensors/BiometricServiceProvider;Lcom/android/server/biometrics/sensors/face/aidl/FaceProvider;,Lcom/android/server/biometrics/sensors/fingerprint/aidl/FingerprintProvider;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;
 HPLcom/android/server/blob/BlobStoreManagerService$BlobStorageStatsAugmenter;->augmentStatsForPackageForUser(Landroid/content/pm/PackageStats;Ljava/lang/String;Landroid/os/UserHandle;Z)V
 HPLcom/android/server/blob/BlobStoreManagerService$BlobStorageStatsAugmenter;->augmentStatsForUid(Landroid/content/pm/PackageStats;IZ)V
@@ -1421,9 +1456,9 @@
 HSPLcom/android/server/compat/PlatformCompat;->isChangeEnabledByPackageName(JLjava/lang/String;I)Z+]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat;
 HSPLcom/android/server/compat/PlatformCompat;->isChangeEnabledByUid(JI)Z+]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat;
 HSPLcom/android/server/compat/PlatformCompat;->isChangeEnabledByUidInternal(JI)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat;
-HSPLcom/android/server/compat/PlatformCompat;->isChangeEnabledByUidInternalNoLogging(JI)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/compat/PlatformCompat;Lcom/android/server/compat/PlatformCompat;
 HSPLcom/android/server/compat/PlatformCompat;->isChangeEnabledInternal(JLandroid/content/pm/ApplicationInfo;)Z+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Lcom/android/internal/compat/ChangeReporter;Lcom/android/internal/compat/ChangeReporter;
 HSPLcom/android/server/compat/PlatformCompat;->isChangeEnabledInternalNoLogging(JLandroid/content/pm/ApplicationInfo;)Z
+HSPLcom/android/server/compat/config/Change;->read(Lorg/xmlpull/v1/XmlPullParser;)Lcom/android/server/compat/config/Change;
 HPLcom/android/server/connectivity/NetdEventListenerService$TransportForNetIdNetworkCallback;->getNetworkCapabilities(I)Landroid/net/NetworkCapabilities;+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HPLcom/android/server/connectivity/NetdEventListenerService;->collectPendingMetricsSnapshot(JZ)V+]Lcom/android/internal/util/RingBuffer;Lcom/android/internal/util/RingBuffer;]Ljava/util/List;Ljava/util/ArrayList;
 HPLcom/android/server/connectivity/NetdEventListenerService;->getMetricsForNetwork(JI)Landroid/net/metrics/NetworkMetrics;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/connectivity/NetdEventListenerService$TransportForNetIdNetworkCallback;Lcom/android/server/connectivity/NetdEventListenerService$TransportForNetIdNetworkCallback;
@@ -1442,6 +1477,7 @@
 HSPLcom/android/server/content/ContentService$ObserverNode;->countUriSegments(Landroid/net/Uri;)I+]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;,Landroid/net/Uri$StringUri;]Ljava/util/List;Landroid/net/Uri$PathSegments;
 HSPLcom/android/server/content/ContentService$ObserverNode;->getUriSegment(Landroid/net/Uri;I)Ljava/lang/String;+]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;,Landroid/net/Uri$StringUri;]Ljava/util/List;Landroid/net/Uri$PathSegments;
 HSPLcom/android/server/content/ContentService$ObserverNode;->removeObserverLocked(Landroid/database/IContentObserver;)Z+]Landroid/database/IContentObserver;Landroid/database/ContentObserver$Transport;,Landroid/database/IContentObserver$Stub$Proxy;]Lcom/android/internal/os/BinderDeathDispatcher;Lcom/android/internal/os/BinderDeathDispatcher;]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HPLcom/android/server/content/ContentService;->getMasterSyncAutomaticallyAsUser(I)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager;]Lcom/android/server/content/SyncStorageEngine;Lcom/android/server/content/SyncStorageEngine;
 HSPLcom/android/server/content/ContentService;->getProviderPackageName(Landroid/net/Uri;I)Ljava/lang/String;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;,Landroid/net/Uri$StringUri;
 HPLcom/android/server/content/ContentService;->getSyncAdapterPackageAsUser(Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String;+]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager;
 HSPLcom/android/server/content/ContentService;->getSyncAdapterPackagesForAuthorityAsUser(Ljava/lang/String;I)[Ljava/lang/String;+]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager;
@@ -1454,9 +1490,13 @@
 HSPLcom/android/server/content/ContentService;->notifyChange([Landroid/net/Uri;Landroid/database/IContentObserver;ZIIILjava/lang/String;)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;,Landroid/net/Uri$StringUri;]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager;
 HSPLcom/android/server/content/ContentService;->registerContentObserver(Landroid/net/Uri;ZLandroid/database/IContentObserver;II)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;,Landroid/net/Uri$StringUri;
 HSPLcom/android/server/content/ContentService;->unregisterContentObserver(Landroid/database/IContentObserver;)V
+HPLcom/android/server/content/SyncJobService;->onStartJob(Landroid/app/job/JobParameters;)Z+]Landroid/app/job/JobParameters;Landroid/app/job/JobParameters;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/content/SyncLogger;Lcom/android/server/content/SyncLogger;
+HPLcom/android/server/content/SyncManager$ActiveSyncContext;->bindToSyncAdapter(Landroid/content/ComponentName;I)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/content/SyncLogger;Lcom/android/server/content/SyncLogger;]Lcom/android/server/content/SyncOperation;Lcom/android/server/content/SyncOperation;
+HPLcom/android/server/content/SyncManager$SyncHandler;->computeSyncOpState(Lcom/android/server/content/SyncOperation;)I+]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager;]Lcom/android/server/content/SyncOperation;Lcom/android/server/content/SyncOperation;]Lcom/android/server/content/SyncStorageEngine;Lcom/android/server/content/SyncStorageEngine;
 HPLcom/android/server/content/SyncManager$SyncHandler;->dispatchSyncOperation(Lcom/android/server/content/SyncOperation;)Z+]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/content/SyncAdaptersCache;Landroid/content/SyncAdaptersCache;]Lcom/android/server/content/SyncManager$SyncHandler;Lcom/android/server/content/SyncManager$SyncHandler;]Lcom/android/server/content/SyncOperation;Lcom/android/server/content/SyncOperation;]Lcom/android/server/content/SyncStorageEngine;Lcom/android/server/content/SyncStorageEngine;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HPLcom/android/server/content/SyncManager$SyncHandler;->handleSyncMessage(Landroid/os/Message;)V+]Landroid/content/ISyncAdapter;Landroid/content/ISyncAdapter$Stub$Proxy;]Lcom/android/server/content/SyncLogger;Lcom/android/server/content/SyncLogger;]Lcom/android/server/content/SyncManager$SyncTimeTracker;Lcom/android/server/content/SyncManager$SyncTimeTracker;
 HPLcom/android/server/content/SyncManager$SyncHandler;->runSyncFinishedOrCanceledH(Landroid/content/SyncResult;Lcom/android/server/content/SyncManager$ActiveSyncContext;)V+]Landroid/accounts/Account;Landroid/accounts/Account;]Landroid/app/NotificationManager;Landroid/app/NotificationManager;]Landroid/content/ISyncAdapter;Landroid/content/ISyncAdapter$Stub$Proxy;]Landroid/os/IBinder;Landroid/os/BinderProxy;]Lcom/android/server/content/SyncLogger;Lcom/android/server/content/SyncLogger;]Lcom/android/server/content/SyncManager$SyncHandler;Lcom/android/server/content/SyncManager$SyncHandler;]Lcom/android/server/content/SyncManagerConstants;Lcom/android/server/content/SyncManagerConstants;]Lcom/android/server/content/SyncOperation;Lcom/android/server/content/SyncOperation;
+HPLcom/android/server/content/SyncManager$SyncHandler;->startSyncH(Lcom/android/server/content/SyncOperation;)V+]Lcom/android/server/content/SyncOperation;Lcom/android/server/content/SyncOperation;]Lcom/android/server/content/SyncStorageEngine;Lcom/android/server/content/SyncStorageEngine;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
 HPLcom/android/server/content/SyncManager;->computeSyncable(Landroid/accounts/Account;ILjava/lang/String;ZZ)I+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/content/SyncAdaptersCache;Landroid/content/SyncAdaptersCache;
 HPLcom/android/server/content/SyncManager;->getAllPendingSyncs()Ljava/util/List;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/app/job/JobScheduler;Landroid/app/JobSchedulerImpl;]Ljava/util/List;Ljava/util/ArrayList;
 HPLcom/android/server/content/SyncManager;->getIsSyncable(Landroid/accounts/Account;ILjava/lang/String;)I+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserManager;Landroid/os/UserManager;]Lcom/android/server/content/SyncManager;Lcom/android/server/content/SyncManager;]Lcom/android/server/content/SyncStorageEngine;Lcom/android/server/content/SyncStorageEngine;
@@ -1473,6 +1513,7 @@
 HPLcom/android/server/content/SyncOperation;->wakeLockName()Ljava/lang/String;
 HSPLcom/android/server/content/SyncStorageEngine$EndPoint;-><init>(Landroid/accounts/Account;Ljava/lang/String;I)V
 HPLcom/android/server/content/SyncStorageEngine;->getAuthorityLocked(Lcom/android/server/content/SyncStorageEngine$EndPoint;Ljava/lang/String;)Lcom/android/server/content/SyncStorageEngine$AuthorityInfo;+]Ljava/util/HashMap;Ljava/util/HashMap;
+HPLcom/android/server/content/SyncStorageEngine;->getIsSyncable(Landroid/accounts/Account;ILjava/lang/String;)I
 HSPLcom/android/server/content/SyncStorageEngine;->getOrCreateAuthorityLocked(Lcom/android/server/content/SyncStorageEngine$EndPoint;IZ)Lcom/android/server/content/SyncStorageEngine$AuthorityInfo;+]Ljava/util/HashMap;Ljava/util/HashMap;
 HPLcom/android/server/content/SyncStorageEngine;->insertStartSyncEvent(Lcom/android/server/content/SyncOperation;J)J+]Lcom/android/server/content/SyncOperation;Lcom/android/server/content/SyncOperation;]Lcom/android/server/content/SyncStorageEngine;Lcom/android/server/content/SyncStorageEngine;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HPLcom/android/server/content/SyncStorageEngine;->reportChange(ILjava/lang/String;I)V+]Landroid/content/ISyncStatusObserver;Landroid/content/ISyncStatusObserver$Stub$Proxy;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/os/RemoteCallbackList;Landroid/os/RemoteCallbackList;
@@ -1488,6 +1529,7 @@
 HSPLcom/android/server/cpu/CpuInfoReader$CpuUsageStats;->getTotalTimeMillis()J
 HSPLcom/android/server/cpu/CpuInfoReader;->calculateAvgCpuFreq(Landroid/util/LongSparseLongArray;)J+]Landroid/util/LongSparseLongArray;Landroid/util/LongSparseLongArray;
 HSPLcom/android/server/cpu/CpuInfoReader;->readCpuCores(Ljava/io/File;)Landroid/util/IntArray;+]Ljava/io/File;Ljava/io/File;]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/cpu/CpuInfoReader;->readCpuFreqKHz(Ljava/io/File;)J+]Ljava/io/File;Ljava/io/File;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/cpu/CpuInfoReader;->readCpuInfos()Landroid/util/SparseArray;+]Landroid/util/IntArray;Landroid/util/IntArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;
 HSPLcom/android/server/cpu/CpuInfoReader;->readCumulativeCpuUsageStats()Landroid/util/SparseArray;+]Ljava/io/File;Ljava/io/File;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/cpu/CpuInfoReader;->readDynamicPolicyInfo()Landroid/util/SparseArray;+]Landroid/util/IntArray;Landroid/util/IntArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;
@@ -1496,24 +1538,25 @@
 HSPLcom/android/server/cpu/CpuMonitorService;->monitorCpuStats()V+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HPLcom/android/server/devicepolicy/ActiveAdmin;->getUid()I
 HSPLcom/android/server/devicepolicy/ActiveAdmin;->getUserHandle()Landroid/os/UserHandle;
-HSPLcom/android/server/devicepolicy/ActiveAdmin;->writeToXml(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/devicepolicy/ActiveAdmin;Lcom/android/server/devicepolicy/ActiveAdmin;]Ljava/lang/CharSequence;Ljava/lang/String;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Set;Landroid/util/ArraySet;
 HSPLcom/android/server/devicepolicy/CallerIdentity;-><init>(ILjava/lang/String;Landroid/content/ComponentName;)V
 HSPLcom/android/server/devicepolicy/CallerIdentity;->getUserId()I
 HSPLcom/android/server/devicepolicy/DevicePolicyEngine$DevicePoliciesReaderWriter;->writeLocalPoliciesInner(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/app/admin/PolicyKey;Landroid/app/admin/NoArgsPolicyKey;,Landroid/app/admin/PackagePolicyKey;,Landroid/app/admin/UserRestrictionPolicyKey;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Ljava/util/Iterator;Ljava/util/HashMap$EntryIterator;]Ljava/util/Map$Entry;Ljava/util/HashMap$Node;]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/Set;Ljava/util/HashMap$EntrySet;
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$$ExternalSyntheticLambda37;->getOrThrow()Ljava/lang/Object;
+HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$$ExternalSyntheticLambda79;->getOrThrow()Ljava/lang/Object;
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;->binderClearCallingIdentity()J
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;->binderGetCallingUid()I
+HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;->binderRestoreCallingIdentity(J)V
 HPLcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;->getPackageManagerLocal()Lcom/android/server/pm/PackageManagerLocal;
+HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$LocalService;->isActiveDeviceOwner(I)Z
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService$LocalService;->isActiveProfileOwner(I)Z+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->ensureLocked()V
 HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getActiveAdminUncheckedLocked(Landroid/content/ComponentName;I)Lcom/android/server/devicepolicy/ActiveAdmin;+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getActiveAdmins(I)Ljava/util/List;+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getActiveAdminsForLockscreenPoliciesLocked(I)Ljava/util/List;+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getActiveAdminsForUserAndItsManagedProfilesLocked(ILjava/util/function/Predicate;)Ljava/util/List;+]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;
-HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getBindDeviceAdminTargetUsers(Landroid/content/ComponentName;)Ljava/util/List;+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getCallerIdentity(Landroid/content/ComponentName;Ljava/lang/String;)Lcom/android/server/devicepolicy/CallerIdentity;+]Lcom/android/server/devicepolicy/ActiveAdmin;Lcom/android/server/devicepolicy/ActiveAdmin;]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getDeviceOwnerComponent(Z)Landroid/content/ComponentName;+]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners;
-HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getDeviceOwnerComponentOnUser(I)Landroid/content/ComponentName;+]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners;
+HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getDeviceOwnerComponentOnUser(I)Landroid/content/ComponentName;+]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners;
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getKeyguardDisabledFeatures(Landroid/content/ComponentName;IZ)I+]Lcom/android/server/devicepolicy/ActiveAdmin;Lcom/android/server/devicepolicy/ActiveAdmin;]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getLockObject()Ljava/lang/Object;+]Lcom/android/internal/util/StatLogger;Lcom/android/internal/util/StatLogger;
 HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getPermissionGrantState(Landroid/content/ComponentName;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;
@@ -1523,6 +1566,8 @@
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getUserData(I)Lcom/android/server/devicepolicy/DevicePolicyData;+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->getUserDataUnchecked(I)Lcom/android/server/devicepolicy/DevicePolicyData;
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->hasCrossUsersPermission(Lcom/android/server/devicepolicy/CallerIdentity;I)Z
+HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->hasFullCrossUsersPermission(Lcom/android/server/devicepolicy/CallerIdentity;I)Z
+HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->hasPermission(Ljava/lang/String;Ljava/lang/String;)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Ljava/util/HashMap;Ljava/util/HashMap;]Ljava/util/List;Ljava/util/ImmutableCollections$ListN;
 HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isCallingFromPackage(Ljava/lang/String;I)Z+]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Lcom/android/server/pm/PackageManagerLocal$UnfilteredSnapshot;Lcom/android/server/pm/local/PackageManagerLocalImpl$UnfilteredSnapshotImpl;]Lcom/android/server/pm/PackageManagerLocal;Lcom/android/server/pm/local/PackageManagerLocalImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Ljava/util/Map;Ljava/util/Collections$UnmodifiableMap;
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isDefaultDeviceOwner(Lcom/android/server/devicepolicy/CallerIdentity;)Z+]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners;
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isDeviceOwnerLocked(Lcom/android/server/devicepolicy/CallerIdentity;)Z+]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners;
@@ -1530,26 +1575,28 @@
 HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isPackageSuspended(Landroid/content/ComponentName;Ljava/lang/String;Ljava/lang/String;)Z+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isProfileOwner(Lcom/android/server/devicepolicy/CallerIdentity;)Z
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isSeparateProfileChallengeEnabled(I)Z
+HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isUidProfileOwnerLocked(I)Z+]Lcom/android/server/devicepolicy/ActiveAdmin;Lcom/android/server/devicepolicy/ActiveAdmin;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Lcom/android/server/devicepolicy/Owners;Lcom/android/server/devicepolicy/Owners;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;
 HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->isUninstallBlocked(Ljava/lang/String;)Z+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->lambda$getActiveAdminsForUserAndItsManagedProfilesLocked$21(ILjava/util/ArrayList;Ljava/util/function/Predicate;)V+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserManager;Landroid/os/UserManager;]Lcom/android/server/devicepolicy/ActiveAdmin;Lcom/android/server/devicepolicy/ActiveAdmin;]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/function/Predicate;Lcom/android/server/devicepolicy/DevicePolicyManagerService$$ExternalSyntheticLambda114;,Lcom/android/server/devicepolicy/DevicePolicyManagerService$$ExternalSyntheticLambda116;
+HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->lambda$getProfileParentId$86(I)Ljava/lang/Integer;+]Landroid/os/UserManager;Landroid/os/UserManager;
 HSPLcom/android/server/devicepolicy/DevicePolicyManagerService;->packageHasActiveAdmins(Ljava/lang/String;I)Z+]Lcom/android/server/devicepolicy/DevicePolicyManagerService;Lcom/android/server/devicepolicy/DevicePolicyManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HPLcom/android/server/devicepolicy/DevicePolicyManagerService;->setApplicationExemptions(Ljava/lang/String;Ljava/lang/String;[I)V+]Landroid/app/admin/DevicePolicyEventLogger;Landroid/app/admin/DevicePolicyEventLogger;]Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;Lcom/android/server/devicepolicy/DevicePolicyManagerService$Injector;
-HSPLcom/android/server/devicepolicy/EnforcingAdmin;->saveToXml(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;
 HSPLcom/android/server/devicepolicy/Owners;->getDeviceOwnerUserId()I
 HSPLcom/android/server/devicepolicy/Owners;->getProfileOwnerComponent(I)Landroid/content/ComponentName;
 HSPLcom/android/server/devicepolicy/Owners;->hasDeviceOwner()Z
 HSPLcom/android/server/devicepolicy/Owners;->isProfileOwnerOfOrganizationOwnedDevice(I)Z
-HSPLcom/android/server/display/AutomaticBrightnessController;->configure(ILandroid/hardware/display/BrightnessConfiguration;FZFZIIZZ)V+]Lcom/android/server/display/AutomaticBrightnessController;Lcom/android/server/display/AutomaticBrightnessController;]Lcom/android/server/display/BrightnessThrottler;Lcom/android/server/display/BrightnessThrottler;]Lcom/android/server/display/brightness/clamper/BrightnessClamperController;Lcom/android/server/display/brightness/clamper/BrightnessClamperController;
+HPLcom/android/server/display/AutomaticBrightnessController;->calculateAmbientLux(JJ)F
+HSPLcom/android/server/display/AutomaticBrightnessController;->configure(ILandroid/hardware/display/BrightnessConfiguration;FZFZIIZZ)V+]Lcom/android/server/display/AutomaticBrightnessController;Lcom/android/server/display/AutomaticBrightnessController;]Lcom/android/server/display/brightness/clamper/BrightnessClamperController;Lcom/android/server/display/brightness/clamper/BrightnessClamperController;
 HSPLcom/android/server/display/BrightnessRangeController;->getCurrentBrightnessMax()F+]Lcom/android/server/display/HighBrightnessModeController;Lcom/android/server/display/HighBrightnessModeController;]Lcom/android/server/display/NormalBrightnessModeController;Lcom/android/server/display/NormalBrightnessModeController;
 HSPLcom/android/server/display/DisplayAdapter$$ExternalSyntheticLambda1;->run()V
 HSPLcom/android/server/display/DisplayBrightnessState$Builder;-><init>()V
 HSPLcom/android/server/display/DisplayBrightnessState$Builder;->from(Lcom/android/server/display/DisplayBrightnessState;)Lcom/android/server/display/DisplayBrightnessState$Builder;
 HSPLcom/android/server/display/DisplayBrightnessState;-><init>(Lcom/android/server/display/DisplayBrightnessState$Builder;)V+]Lcom/android/server/display/DisplayBrightnessState$Builder;Lcom/android/server/display/DisplayBrightnessState$Builder;
 HSPLcom/android/server/display/DisplayDevice;->populateViewportLocked(Landroid/hardware/display/DisplayViewport;)V+]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;
-HSPLcom/android/server/display/DisplayDeviceConfig;->getNitsFromBacklight(F)F+]Landroid/util/Spline;Landroid/util/Spline$LinearSpline;,Landroid/util/Spline$MonotoneCubicSpline;
 HSPLcom/android/server/display/DisplayDeviceInfo;-><init>()V
 HSPLcom/android/server/display/DisplayDeviceInfo;->diff(Lcom/android/server/display/DisplayDeviceInfo;)I
 HSPLcom/android/server/display/DisplayDeviceInfo;->toString()Ljava/lang/String;
+HSPLcom/android/server/display/DisplayDeviceRepository;->containsLocked(Lcom/android/server/display/DisplayDevice;)Z+]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/display/DisplayDeviceRepository;->handleDisplayDeviceChanged(Lcom/android/server/display/DisplayDevice;)V+]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/display/DisplayGroup;->getIdLocked(I)I+]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/display/DisplayGroup;->getSizeLocked()I+]Ljava/util/List;Ljava/util/ArrayList;
@@ -1558,8 +1605,7 @@
 HSPLcom/android/server/display/DisplayManagerService$BinderService;->getBrightnessInfo(I)Landroid/hardware/display/BrightnessInfo;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;
 HSPLcom/android/server/display/DisplayManagerService$BinderService;->getDisplayIds(Z)[I+]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;
 HSPLcom/android/server/display/DisplayManagerService$BinderService;->getDisplayInfo(I)Landroid/view/DisplayInfo;
-HSPLcom/android/server/display/DisplayManagerService$CallbackRecord;->notifyDisplayEventAsync(II)Z
-HSPLcom/android/server/display/DisplayManagerService$CallbackRecord;->shouldSendDisplayEvent(I)Z
+HSPLcom/android/server/display/DisplayManagerService$CallbackRecord;->notifyDisplayEventAsync(II)Z+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/display/DisplayManagerService$DisplayManagerHandler;->handleMessage(Landroid/os/Message;)V+]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;]Lcom/android/server/input/InputManagerInternal;Lcom/android/server/input/InputManagerService$LocalService;]Lcom/android/server/wm/WindowManagerInternal;Lcom/android/server/wm/WindowManagerService$LocalService;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;
 HSPLcom/android/server/display/DisplayManagerService$LocalService;->getDisplayIdToMirror(I)I+]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;
 HSPLcom/android/server/display/DisplayManagerService$LocalService;->getDisplayInfo(I)Landroid/view/DisplayInfo;
@@ -1568,19 +1614,12 @@
 HSPLcom/android/server/display/DisplayManagerService$LocalService;->requestPowerState(ILandroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;Z)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;]Lcom/android/server/display/DisplayGroup;Lcom/android/server/display/DisplayGroup;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;
 HSPLcom/android/server/display/DisplayManagerService$LocalService;->setDisplayProperties(IZFIFFZZZ)V
 HSPLcom/android/server/display/DisplayManagerService$LocalService;->setScreenBrightnessOverrideFromWindowManager(Landroid/util/SparseArray;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;
-HSPLcom/android/server/display/DisplayManagerService$UidImportanceListener;->onUidImportanceUnflagged(II)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/display/DisplayManagerService;->applyDisplayChangedLocked(Lcom/android/server/display/LogicalDisplay;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/display/HighBrightnessModeMetadataMapper;Lcom/android/server/display/HighBrightnessModeMetadataMapper;
-HSPLcom/android/server/display/DisplayManagerService;->configureDisplayLocked(Landroid/view/SurfaceControl$Transaction;Lcom/android/server/display/DisplayDevice;)V+]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;
 HSPLcom/android/server/display/DisplayManagerService;->deliverDisplayEvent(ILandroid/util/ArraySet;I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/ArrayList;Ljava/util/ArrayList;
-HSPLcom/android/server/display/DisplayManagerService;->deliverEventUnflagged(Lcom/android/server/display/DisplayManagerService$CallbackRecord;II)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/display/DisplayManagerService;->getDisplayInfoForFrameRateOverride([Landroid/view/DisplayEventReceiver$FrameRateOverride;Landroid/view/DisplayInfo;I)Landroid/view/DisplayInfo;
 HSPLcom/android/server/display/DisplayManagerService;->getDisplayInfoInternal(II)Landroid/view/DisplayInfo;+]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;
-HSPLcom/android/server/display/DisplayManagerService;->getViewportLocked(ILjava/lang/String;)Landroid/hardware/display/DisplayViewport;+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/display/DisplayManagerService;->isMinimalPostProcessingAllowed()Z
-HSPLcom/android/server/display/DisplayManagerService;->isUidCached(I)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;
 HSPLcom/android/server/display/DisplayManagerService;->performTraversalInternal(Landroid/view/SurfaceControl$Transaction;Landroid/util/SparseArray;)V+]Landroid/hardware/display/DisplayManagerInternal$DisplayTransactionListener;Lcom/android/server/display/ColorFade$NaturalSurfaceLayout;]Ljava/util/Iterator;Ljava/util/concurrent/CopyOnWriteArrayList$COWIterator;]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList;
-HSPLcom/android/server/display/DisplayManagerService;->performTraversalLocked(Landroid/view/SurfaceControl$Transaction;Landroid/util/SparseArray;)V+]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;
-HSPLcom/android/server/display/DisplayManagerService;->populateViewportLocked(IILcom/android/server/display/DisplayDevice;Lcom/android/server/display/DisplayDeviceInfo;)V
 HSPLcom/android/server/display/DisplayManagerService;->requestDisplayStateInternal(IIFF)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;]Ljava/lang/Runnable;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice$1;
 HSPLcom/android/server/display/DisplayManagerService;->scheduleTraversalLocked(Z)V
 HSPLcom/android/server/display/DisplayManagerService;->sendDisplayEventIfEnabledLocked(Lcom/android/server/display/LogicalDisplay;I)V
@@ -1602,13 +1641,15 @@
 HSPLcom/android/server/display/DisplayPowerState$PhotonicModulator;->run()V
 HSPLcom/android/server/display/DisplayPowerState$PhotonicModulator;->setState(IFF)Z
 HSPLcom/android/server/display/DisplayPowerState;->postScreenUpdateThreadSafe()V
+HSPLcom/android/server/display/HighBrightnessModeController;->calculateRemainingTime(J)J+]Lcom/android/server/display/HbmEvent;Lcom/android/server/display/HbmEvent;]Lcom/android/server/display/HighBrightnessModeController;Lcom/android/server/display/HighBrightnessModeController;]Lcom/android/server/display/HighBrightnessModeMetadata;Lcom/android/server/display/HighBrightnessModeMetadata;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque;]Ljava/util/Iterator;Ljava/util/ArrayDeque$DeqIterator;
+HSPLcom/android/server/display/HighBrightnessModeController;->getCurrentBrightnessMax()F+]Lcom/android/server/display/HighBrightnessModeController;Lcom/android/server/display/HighBrightnessModeController;
+HSPLcom/android/server/display/HighBrightnessModeController;->onBrightnessChanged(FFI)V+]Lcom/android/server/display/DisplayManagerService$Clock;Lcom/android/server/display/HighBrightnessModeController$Injector$$ExternalSyntheticLambda0;]Lcom/android/server/display/HighBrightnessModeController;Lcom/android/server/display/HighBrightnessModeController;]Lcom/android/server/display/HighBrightnessModeMetadata;Lcom/android/server/display/HighBrightnessModeMetadata;
+HSPLcom/android/server/display/HighBrightnessModeController;->recalculateTimeAllowance()V+]Lcom/android/server/display/DisplayManagerService$Clock;Lcom/android/server/display/HighBrightnessModeController$Injector$$ExternalSyntheticLambda0;]Lcom/android/server/display/HbmEvent;Lcom/android/server/display/HbmEvent;]Lcom/android/server/display/HighBrightnessModeMetadata;Lcom/android/server/display/HighBrightnessModeMetadata;]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque;
 HSPLcom/android/server/display/LocalDisplayAdapter$DisplayModeRecord;->hasMatchingMode(Landroid/view/SurfaceControl$DisplayMode;)Z
 HSPLcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice$1;->setDisplayBrightness(FF)V+]Lcom/android/server/display/DisplayDeviceConfig;Lcom/android/server/display/DisplayDeviceConfig;]Lcom/android/server/display/LocalDisplayAdapter$BacklightAdapter;Lcom/android/server/display/LocalDisplayAdapter$BacklightAdapter;]Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice$1;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice$1;]Lcom/android/server/display/feature/DisplayManagerFlags;Lcom/android/server/display/feature/DisplayManagerFlags;
 HSPLcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;->getDisplayDeviceConfig()Lcom/android/server/display/DisplayDeviceConfig;
 HSPLcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;->getDisplayDeviceInfoLocked()Lcom/android/server/display/DisplayDeviceInfo;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Lcom/android/server/display/DisplayDeviceConfig;Lcom/android/server/display/DisplayDeviceConfig;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;->getLogicalDensity()I+]Lcom/android/server/display/DensityMapping;Lcom/android/server/display/DensityMapping;]Lcom/android/server/display/DisplayDeviceConfig;Lcom/android/server/display/DisplayDeviceConfig;]Lcom/android/server/display/feature/DisplayManagerFlags;Lcom/android/server/display/feature/DisplayManagerFlags;
-HSPLcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;->requestDisplayStateLocked(IFFLcom/android/server/display/DisplayOffloadSessionImpl;)Ljava/lang/Runnable;
-HSPLcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;->setDesiredDisplayModeSpecsLocked(Lcom/android/server/display/mode/DisplayModeDirector$DesiredDisplayModeSpecs;)V
 HSPLcom/android/server/display/LogicalDisplay;->configureDisplayLocked(Landroid/view/SurfaceControl$Transaction;Lcom/android/server/display/DisplayDevice;Z)V+]Landroid/graphics/Point;Landroid/graphics/Point;]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;
 HSPLcom/android/server/display/LogicalDisplay;->getDisplayIdLocked()I
 HSPLcom/android/server/display/LogicalDisplay;->getDisplayInfoLocked()Landroid/view/DisplayInfo;+]Lcom/android/server/display/DisplayInfoProxy;Lcom/android/server/display/DisplayInfoProxy;
@@ -1616,16 +1657,14 @@
 HSPLcom/android/server/display/LogicalDisplay;->updateFrameRateOverrides(Lcom/android/server/display/DisplayDeviceInfo;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/display/LogicalDisplay;->updateLocked(Lcom/android/server/display/DisplayDeviceRepository;Lcom/android/server/display/mode/SyntheticModeManager;)V+]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;]Lcom/android/server/display/DisplayDeviceRepository;Lcom/android/server/display/DisplayDeviceRepository;]Lcom/android/server/display/DisplayInfoProxy;Lcom/android/server/display/DisplayInfoProxy;]Lcom/android/server/display/mode/SyntheticModeManager;Lcom/android/server/display/mode/SyntheticModeManager;
 HSPLcom/android/server/display/LogicalDisplayMapper;->assignDisplayGroupLocked(Lcom/android/server/display/LogicalDisplay;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/display/DisplayDevice;Lcom/android/server/display/LocalDisplayAdapter$LocalDisplayDevice;,Lcom/android/server/display/VirtualDisplayAdapter$VirtualDisplayDevice;]Lcom/android/server/display/DisplayGroup;Lcom/android/server/display/DisplayGroup;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;
-HSPLcom/android/server/display/LogicalDisplayMapper;->forEachLocked(Ljava/util/function/Consumer;Z)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/function/Consumer;megamorphic_types
 HSPLcom/android/server/display/LogicalDisplayMapper;->getDisplayGroupIdFromDisplayIdLocked(I)I+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/display/DisplayGroup;Lcom/android/server/display/DisplayGroup;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;
 HSPLcom/android/server/display/LogicalDisplayMapper;->getDisplayGroupLocked(I)Lcom/android/server/display/DisplayGroup;+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/display/LogicalDisplayMapper;->getDisplayIdsLocked(IZ)[I+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/display/LogicalDisplayMapper;->getDisplayLocked(I)Lcom/android/server/display/LogicalDisplay;+]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;
 HSPLcom/android/server/display/LogicalDisplayMapper;->getDisplayLocked(IZ)Lcom/android/server/display/LogicalDisplay;+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/display/LogicalDisplayMapper;->getDisplayLocked(Lcom/android/server/display/DisplayDevice;Z)Lcom/android/server/display/LogicalDisplay;+]Landroid/util/SparseArray;Landroid/util/SparseArray;
-HSPLcom/android/server/display/LogicalDisplayMapper;->sendUpdatesForDisplaysLocked(I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/display/LogicalDisplayMapper$Listener;Lcom/android/server/display/DisplayManagerService$LogicalDisplayListener;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;]Lcom/android/server/display/feature/DisplayManagerFlags;Lcom/android/server/display/feature/DisplayManagerFlags;
-HSPLcom/android/server/display/LogicalDisplayMapper;->sendUpdatesForGroupsLocked(I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/display/LogicalDisplayMapper$Listener;Lcom/android/server/display/DisplayManagerService$LogicalDisplayListener;
-HSPLcom/android/server/display/LogicalDisplayMapper;->updateLogicalDisplaysLocked(IZ)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/display/DisplayGroup;Lcom/android/server/display/DisplayGroup;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;]Lcom/android/server/display/feature/DisplayManagerFlags;Lcom/android/server/display/feature/DisplayManagerFlags;
+HSPLcom/android/server/display/LogicalDisplayMapper;->sendUpdatesForDisplaysLocked(I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/display/LogicalDisplayMapper$Listener;Lcom/android/server/display/DisplayManagerService$LogicalDisplayListener;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;
+HSPLcom/android/server/display/LogicalDisplayMapper;->updateLogicalDisplaysLocked(IZ)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/display/DisplayGroup;Lcom/android/server/display/DisplayGroup;]Lcom/android/server/display/LogicalDisplayMapper;Lcom/android/server/display/LogicalDisplayMapper;
 HPLcom/android/server/display/RampAnimator$DualRampAnimator$1;->run()V+]Lcom/android/server/display/RampAnimator$DualRampAnimator;Lcom/android/server/display/RampAnimator$DualRampAnimator;]Lcom/android/server/display/RampAnimator$Listener;Lcom/android/server/display/DisplayPowerController$3;]Lcom/android/server/display/RampAnimator;Lcom/android/server/display/RampAnimator;
 HPLcom/android/server/display/RampAnimator;->performNextAnimationStep(J)V
 HSPLcom/android/server/display/RampAnimator;->setPropertyValue(F)V+]Landroid/util/FloatProperty;Lcom/android/server/display/DisplayPowerState$2;,Lcom/android/server/display/DisplayPowerState$3;
@@ -1647,7 +1686,6 @@
 HSPLcom/android/server/display/feature/DisplayManagerFlags$FlagState;->-$$Nest$misEnabled(Lcom/android/server/display/feature/DisplayManagerFlags$FlagState;)Z
 HSPLcom/android/server/display/feature/DisplayManagerFlags$FlagState;->isEnabled()Z
 HSPLcom/android/server/display/mode/DisplayModeDirector$AppRequestObserver;->setAppRequest(IIFFF)V+]Lcom/android/server/display/mode/VotesStorage;Lcom/android/server/display/mode/VotesStorage;
-HSPLcom/android/server/display/mode/DisplayModeDirector$DesiredDisplayModeSpecs;->equals(Ljava/lang/Object;)Z
 HSPLcom/android/server/display/mode/DisplayModeDirector;->getModeSwitchingType()I
 HSPLcom/android/server/display/mode/VotesStorage;->updateVote(IILcom/android/server/display/mode/Vote;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/display/mode/VotesStatsReporter;Lcom/android/server/display/mode/VotesStatsReporter;]Lcom/android/server/display/mode/VotesStorage$Listener;Lcom/android/server/display/mode/DisplayModeDirector$$ExternalSyntheticLambda0;]Ljava/lang/Object;megamorphic_types
 HSPLcom/android/server/display/state/DisplayStateController;->updateDisplayState(Landroid/hardware/display/DisplayManagerInternal$DisplayPowerRequest;ZZ)Landroid/util/Pair;
@@ -1662,6 +1700,7 @@
 HSPLcom/android/server/grammaticalinflection/GrammaticalInflectionUtils;->checkSystemGrammaticalGenderPermission(Landroid/permission/PermissionManager;Landroid/content/AttributionSource;)Z
 HSPLcom/android/server/health/HealthServiceWrapperAidl;->getProperty(ILandroid/os/BatteryProperty;)I
 HSPLcom/android/server/health/HealthServiceWrapperAidl;->getPropertyInternal(ILandroid/os/BatteryProperty;)I+]Landroid/hardware/health/IHealth;Landroid/hardware/health/IHealth$Stub$Proxy;]Landroid/os/BatteryProperty;Landroid/os/BatteryProperty;
+HSPLcom/android/server/infra/AbstractMasterSystemService;->assertCalledByPackageOwner(Ljava/lang/String;)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;
 HSPLcom/android/server/infra/AbstractMasterSystemService;->getServiceListForUserLocked(I)Ljava/util/List;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/infra/AbstractMasterSystemService;megamorphic_types]Lcom/android/server/infra/ServiceNameResolver;Lcom/android/server/infra/FrameworkResourcesServiceNameResolver;,Lcom/android/server/infra/SecureSettingsServiceNameResolver;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/input/KeyboardLayoutManager$KeyboardLayoutDescriptor;->format(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
 HSPLcom/android/server/input/KeyboardLayoutManager;->visitKeyboardLayoutsInPackage(Landroid/content/pm/PackageManager;Landroid/content/pm/ActivityInfo;Ljava/lang/String;ILcom/android/server/input/KeyboardLayoutManager$KeyboardLayoutVisitor;)V+]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Landroid/content/res/XmlResourceParser;Landroid/content/res/XmlBlock$Parser;]Lcom/android/server/input/KeyboardLayoutManager$KeyboardLayoutVisitor;Lcom/android/server/input/KeyboardLayoutManager$$ExternalSyntheticLambda1;,Lcom/android/server/input/KeyboardLayoutManager$$ExternalSyntheticLambda5;,Lcom/android/server/input/KeyboardLayoutManager$2;]Ljava/lang/CharSequence;Ljava/lang/String;
@@ -1670,6 +1709,7 @@
 HSPLcom/android/server/inputmethod/InputMethodSettings;->getEnabledInputMethodsAndSubtypeList()Ljava/util/List;
 HSPLcom/android/server/inputmethod/InputMethodSubtypeSwitchingController;->getInputMethodAndSubtypeListForHardwareKeyboard(Landroid/content/Context;Lcom/android/server/inputmethod/InputMethodSettings;)Ljava/util/List;+]Landroid/content/Context;Landroid/app/ContextImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/inputmethod/InputMethodSubtypeSwitchingController;->getSortedInputMethodAndSubtypeList(ZZZLandroid/content/Context;Lcom/android/server/inputmethod/InputMethodSettings;)Ljava/util/List;+]Landroid/content/Context;Landroid/app/ContextImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/inputmethod/RawInputMethodMap;->toInputMethodMap(Lcom/android/server/inputmethod/AdditionalSubtypeMap;IZ)Lcom/android/server/inputmethod/InputMethodMap;+]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/inputmethod/SecureSettingsWrapper;->get(I)Lcom/android/server/inputmethod/SecureSettingsWrapper$ReaderWriter;
 HSPLcom/android/server/inputmethod/UserDataRepository;->getOrCreate(I)Lcom/android/server/inputmethod/UserData;
 HSPLcom/android/server/job/JobConcurrencyManager$$ExternalSyntheticLambda0;->accept(Ljava/lang/Object;)V
@@ -1779,7 +1819,7 @@
 HSPLcom/android/server/job/JobSchedulerService;->isReadyToBeExecutedLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;
 HSPLcom/android/server/job/JobSchedulerService;->isReadyToBeExecutedLocked(Lcom/android/server/job/controllers/JobStatus;Z)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/PendingJobQueue;Lcom/android/server/job/PendingJobQueue;
 HSPLcom/android/server/job/JobSchedulerService;->lambda$new$2(ILjava/lang/String;Ljava/lang/String;)Lcom/android/server/utils/quota/Category;
-HSPLcom/android/server/job/JobSchedulerService;->lambda$onBootPhase$4(Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/controllers/StateController;megamorphic_types]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/job/JobSchedulerService;->lambda$onBootPhase$4(Lcom/android/server/job/controllers/JobStatus;)V
 HSPLcom/android/server/job/JobSchedulerService;->maybeProcessBuggyJob(Lcom/android/server/job/controllers/JobStatus;I)V+]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController;]Lcom/android/server/utils/quota/CountQuotaTracker;Lcom/android/server/utils/quota/CountQuotaTracker;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$1;
 HSPLcom/android/server/job/JobSchedulerService;->maybeRunPendingJobsLocked()V+]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;
 HSPLcom/android/server/job/JobSchedulerService;->onControllerStateChanged(Landroid/util/ArraySet;)V+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;
@@ -1793,6 +1833,7 @@
 HSPLcom/android/server/job/JobSchedulerService;->startTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/controllers/StateController;megamorphic_types]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/job/JobSchedulerService;->stopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;Z)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/controllers/StateController;megamorphic_types]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/job/JobSchedulerService;->updateUidState(III)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/job/JobConcurrencyManager;Lcom/android/server/job/JobConcurrencyManager;]Lcom/android/server/job/controllers/StateController;megamorphic_types]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/job/JobServiceContext$JobCallback;-><init>(Lcom/android/server/job/JobServiceContext;)V
 HSPLcom/android/server/job/JobServiceContext$JobCallback;->acknowledgeStartMessage(IZ)V
 HSPLcom/android/server/job/JobServiceContext;->applyStoppedReasonLocked(Ljava/lang/String;)V+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;
 HSPLcom/android/server/job/JobServiceContext;->canGetNetworkInformation(Lcom/android/server/job/controllers/JobStatus;)Z+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;
@@ -1802,6 +1843,7 @@
 HPLcom/android/server/job/JobServiceContext;->doDequeueWork(Lcom/android/server/job/JobServiceContext$JobCallback;I)Landroid/app/job/JobWorkItem;+]Landroid/app/job/JobParameters;Landroid/app/job/JobParameters;
 HSPLcom/android/server/job/JobServiceContext;->doJobFinished(Lcom/android/server/job/JobServiceContext$JobCallback;IZ)V+]Landroid/app/job/JobParameters;Landroid/app/job/JobParameters;
 HSPLcom/android/server/job/JobServiceContext;->executeRunnableJob(Lcom/android/server/job/controllers/JobStatus;I)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;
+HSPLcom/android/server/job/JobServiceContext;->getRunningJobLocked()Lcom/android/server/job/controllers/JobStatus;
 HSPLcom/android/server/job/JobServiceContext;->handleFinishedLocked(ZLjava/lang/String;)V
 HSPLcom/android/server/job/JobServiceContext;->handleServiceBoundLocked()V+]Landroid/app/job/IJobService;Landroid/app/job/IJobService$Stub$Proxy;,Landroid/app/job/JobServiceEngine$JobInterface;
 HSPLcom/android/server/job/JobServiceContext;->handleStartedLocked(Z)V+]Landroid/app/job/JobParameters;Landroid/app/job/JobParameters;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;
@@ -1816,6 +1858,7 @@
 HPLcom/android/server/job/JobStore$2;->addAttributesToJobTag(Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;
 HPLcom/android/server/job/JobStore$2;->deepCopyBundle(Landroid/os/PersistableBundle;I)Landroid/os/PersistableBundle;+]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet;
 HPLcom/android/server/job/JobStore$2;->run()V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Ljava/io/File;Ljava/io/File;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;,Ljava/time/Clock$SystemClock;
+HPLcom/android/server/job/JobStore$2;->writeBundleToXml(Landroid/os/PersistableBundle;Lorg/xmlpull/v1/XmlSerializer;)V+]Lorg/xmlpull/v1/XmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;
 HPLcom/android/server/job/JobStore$2;->writeConstraintsToXml(Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/net/NetworkRequest;Landroid/net/NetworkRequest;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;
 HPLcom/android/server/job/JobStore$2;->writeDebugInfoToXml(Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;
 HPLcom/android/server/job/JobStore$2;->writeExecutionCriteriaToXml(Lorg/xmlpull/v1/XmlSerializer;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;,Ljava/time/Clock$SystemClock;]Lorg/xmlpull/v1/XmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;
@@ -1833,11 +1876,11 @@
 HSPLcom/android/server/job/JobStore;->countJobsForUid(I)I
 HSPLcom/android/server/job/JobStore;->getJobByUidAndJobId(ILjava/lang/String;I)Lcom/android/server/job/controllers/JobStatus;
 HPLcom/android/server/job/JobStore;->intArrayToString([I)Ljava/lang/String;
-HPLcom/android/server/job/JobStore;->maybeWriteStatusToDiskAsync()V
+HSPLcom/android/server/job/JobStore;->maybeWriteStatusToDiskAsync()V
 HSPLcom/android/server/job/JobStore;->remove(Lcom/android/server/job/controllers/JobStatus;Z)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;
 HPLcom/android/server/job/PendingJobQueue$$ExternalSyntheticLambda0;->compare(Ljava/lang/Object;Ljava/lang/Object;)I
 HSPLcom/android/server/job/PendingJobQueue$AppJobQueue$AdjustedJobStatus;->clear()V
-HPLcom/android/server/job/PendingJobQueue$AppJobQueue;->$r8$lambda$g0OYYwC3jkCSkqvBk21tiP7tdvI(Lcom/android/server/job/PendingJobQueue$AppJobQueue$AdjustedJobStatus;Lcom/android/server/job/PendingJobQueue$AppJobQueue$AdjustedJobStatus;)I+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;
+HSPLcom/android/server/job/PendingJobQueue$AppJobQueue;->$r8$lambda$g0OYYwC3jkCSkqvBk21tiP7tdvI(Lcom/android/server/job/PendingJobQueue$AppJobQueue$AdjustedJobStatus;Lcom/android/server/job/PendingJobQueue$AppJobQueue$AdjustedJobStatus;)I+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;
 HPLcom/android/server/job/PendingJobQueue$AppJobQueue;->add(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/job/PendingJobQueue$AppJobQueue;->addAll(Ljava/util/List;)V+]Landroid/util/Pools$Pool;Landroid/util/Pools$SimplePool;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/job/PendingJobQueue$AppJobQueue;->indexOf(Lcom/android/server/job/controllers/JobStatus;)I+]Ljava/util/List;Ljava/util/ArrayList;
@@ -1865,10 +1908,12 @@
 HSPLcom/android/server/job/controllers/BatteryController;->hasTopExemptionLocked(Lcom/android/server/job/controllers/JobStatus;)Z+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;
 HSPLcom/android/server/job/controllers/BatteryController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;
 HSPLcom/android/server/job/controllers/BatteryController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V
+HSPLcom/android/server/job/controllers/BatteryController;->prepareForExecutionLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;
 HSPLcom/android/server/job/controllers/ComponentController;->getServiceProcessLocked(Lcom/android/server/job/controllers/JobStatus;)Ljava/lang/String;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/util/SparseArrayMap;Landroid/util/SparseArrayMap;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;
 HSPLcom/android/server/job/controllers/ComponentController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V
 HSPLcom/android/server/job/controllers/ComponentController;->updateComponentEnabledStateLocked(Lcom/android/server/job/controllers/JobStatus;)Z
 HSPLcom/android/server/job/controllers/ConnectivityController$CcHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;
+HPLcom/android/server/job/controllers/ConnectivityController$UidDefaultNetworkCallback;->onBlockedStatusChanged(Landroid/net/Network;I)V
 HSPLcom/android/server/job/controllers/ConnectivityController;->evaluateStateLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;
 HSPLcom/android/server/job/controllers/ConnectivityController;->getNetworkLocked(Lcom/android/server/job/controllers/JobStatus;)Landroid/net/Network;+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/job/controllers/ConnectivityController;->getNetworkMetadata(Landroid/net/Network;)Lcom/android/server/job/controllers/ConnectivityController$CachedNetworkMetadata;
@@ -1892,7 +1937,7 @@
 HPLcom/android/server/job/controllers/ContentObserverController$JobInstance;-><init>(Lcom/android/server/job/controllers/ContentObserverController;Lcom/android/server/job/controllers/JobStatus;)V+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/job/controllers/ContentObserverController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;
 HSPLcom/android/server/job/controllers/ContentObserverController;->maybeStopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V
-HSPLcom/android/server/job/controllers/DeviceIdleJobsController$1;->onReceive(Landroid/content/Context;Landroid/content/Intent;)V+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;
+HSPLcom/android/server/job/controllers/DeviceIdleJobsController$1;->onReceive(Landroid/content/Context;Landroid/content/Intent;)V+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;
 HSPLcom/android/server/job/controllers/DeviceIdleJobsController;->isWhitelistedLocked(Lcom/android/server/job/controllers/JobStatus;)Z
 HSPLcom/android/server/job/controllers/DeviceIdleJobsController;->maybeStartTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;
 HSPLcom/android/server/job/controllers/DeviceIdleJobsController;->setUidActiveLocked(IZ)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;]Lcom/android/server/job/StateChangedListener;Lcom/android/server/job/JobSchedulerService;
@@ -1929,9 +1974,9 @@
 HSPLcom/android/server/job/controllers/JobStatus;->createFromJobInfo(Landroid/app/job/JobInfo;ILjava/lang/String;ILjava/lang/String;Ljava/lang/String;)Lcom/android/server/job/controllers/JobStatus;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Ljava/time/Clock;Lcom/android/server/job/JobSchedulerService$2;
 HPLcom/android/server/job/controllers/JobStatus;->dequeueWorkLocked()Landroid/app/job/JobWorkItem;+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HPLcom/android/server/job/controllers/JobStatus;->enqueueWorkLocked(Landroid/app/job/JobWorkItem;)V+]Landroid/content/Intent;Landroid/content/Intent;]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/job/controllers/JobStatus;->generateLoggingId(Ljava/lang/String;I)J
 HSPLcom/android/server/job/controllers/JobStatus;->generateNamespaceHash(Ljava/lang/String;)Ljava/lang/String;+]Ljava/security/MessageDigest;Ljava/security/MessageDigest$Delegate;
 HSPLcom/android/server/job/controllers/JobStatus;->getAppTraceTag()Ljava/lang/String;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;
-HSPLcom/android/server/job/controllers/JobStatus;->getEarliestRunTime()J
 HSPLcom/android/server/job/controllers/JobStatus;->getEffectivePriority()I+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;
 HSPLcom/android/server/job/controllers/JobStatus;->getEffectiveStandbyBucket()I+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/server/job/JobSchedulerInternal;Lcom/android/server/job/JobSchedulerService$LocalService;
 HSPLcom/android/server/job/controllers/JobStatus;->getFilteredDebugTags()[Ljava/lang/String;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;
@@ -1947,7 +1992,7 @@
 HSPLcom/android/server/job/controllers/JobStatus;->getTimeoutBlameUserId()I
 HSPLcom/android/server/job/controllers/JobStatus;->getUid()I
 HSPLcom/android/server/job/controllers/JobStatus;->getUserId()I
-HSPLcom/android/server/job/controllers/JobStatus;->getWakelockTag()Ljava/lang/String;
+HSPLcom/android/server/job/controllers/JobStatus;->getWakelockTag()Ljava/lang/String;+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;
 HSPLcom/android/server/job/controllers/JobStatus;->getWorkCount()I+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/job/controllers/JobStatus;->hasBatteryNotLowConstraint()Z
 HSPLcom/android/server/job/controllers/JobStatus;->hasChargingConstraint()Z
@@ -1969,6 +2014,7 @@
 HSPLcom/android/server/job/controllers/JobStatus;->setBackgroundNotRestrictedConstraintSatisfied(JZZ)Z
 HSPLcom/android/server/job/controllers/JobStatus;->setConstraintSatisfied(IJZ)Z+]Ljava/util/List;Ljava/util/ArrayList$SubList;,Ljava/util/ArrayList;
 HSPLcom/android/server/job/controllers/JobStatus;->setDeviceNotDozingConstraintSatisfied(JZZ)Z
+HSPLcom/android/server/job/controllers/JobStatus;->setExpeditedJobQuotaApproved(JZ)Z
 HSPLcom/android/server/job/controllers/JobStatus;->shouldTreatAsExpeditedJob()Z
 HSPLcom/android/server/job/controllers/JobStatus;->shouldTreatAsUserInitiatedJob()Z+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;
 HSPLcom/android/server/job/controllers/JobStatus;->stopTrackingJobLocked(Lcom/android/server/job/controllers/JobStatus;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList;
@@ -2038,15 +2084,19 @@
 HSPLcom/android/server/job/controllers/TimeController;->setDelayExpiredAlarmLocked(JLandroid/os/WorkSource;)V
 HSPLcom/android/server/job/restrictions/ThermalStatusRestriction;->isJobRestricted(Lcom/android/server/job/controllers/JobStatus;I)Z+]Landroid/app/job/JobInfo;Landroid/app/job/JobInfo;]Lcom/android/server/job/JobSchedulerService;Lcom/android/server/job/JobSchedulerService;
 HSPLcom/android/server/lights/LightsService$LightImpl;->setLightLocked(IIIII)V
+HPLcom/android/server/locales/LocaleManagerService;->getApplicationLocales(Ljava/lang/String;I)Landroid/os/LocaleList;+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;
+HSPLcom/android/server/location/LocationManagerService;->getLocationProviderManager(Ljava/lang/String;)Lcom/android/server/location/provider/LocationProviderManager;+]Lcom/android/server/location/provider/LocationProviderManager;Lcom/android/server/location/provider/LocationProviderManager;,Lcom/android/server/location/provider/PassiveLocationProviderManager;]Ljava/util/Iterator;Ljava/util/concurrent/CopyOnWriteArrayList$COWIterator;]Ljava/util/concurrent/CopyOnWriteArrayList;Ljava/util/concurrent/CopyOnWriteArrayList;
 HSPLcom/android/server/location/LocationManagerService;->isLocationEnabledForUser(I)Z+]Lcom/android/server/location/injector/Injector;Lcom/android/server/location/LocationManagerService$SystemInjector;]Lcom/android/server/location/injector/SettingsHelper;Lcom/android/server/location/injector/SystemSettingsHelper;
-HPLcom/android/server/location/contexthub/ContextHubClientBroker;->doSendMessageToNanoApp(Landroid/hardware/location/NanoAppMessage;Landroid/hardware/location/IContextHubTransactionCallback;)I+]Landroid/hardware/location/ContextHubInfo;Landroid/hardware/location/ContextHubInfo;]Lcom/android/server/location/contexthub/ContextHubEventLogger;Lcom/android/server/location/contexthub/ContextHubEventLogger;]Lcom/android/server/location/contexthub/IContextHubWrapper;Lcom/android/server/location/contexthub/IContextHubWrapper$ContextHubWrapperAidl;]Ljava/util/Map;Ljava/util/concurrent/ConcurrentHashMap;
-HSPLcom/android/server/location/contexthub/ContextHubClientBroker;->sendMessageToClient(Landroid/hardware/location/NanoAppMessage;Ljava/util/List;Ljava/util/List;)B+]Lcom/android/server/location/contexthub/ContextHubClientBroker;Lcom/android/server/location/contexthub/ContextHubClientBroker;]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/location/contexthub/ContextHubClientBroker;->doSendMessageToNanoApp(Landroid/hardware/location/NanoAppMessage;Landroid/hardware/location/IContextHubTransactionCallback;)I+]Landroid/hardware/location/ContextHubInfo;Landroid/hardware/location/ContextHubInfo;]Lcom/android/server/location/contexthub/ContextHubEventLogger;Lcom/android/server/location/contexthub/ContextHubEventLogger;]Lcom/android/server/location/contexthub/IContextHubWrapper;Lcom/android/server/location/contexthub/IContextHubWrapper$ContextHubWrapperAidl;]Ljava/util/Map;Ljava/util/concurrent/ConcurrentHashMap;
+HSPLcom/android/server/location/contexthub/ContextHubClientBroker;->sendMessageToClient(Landroid/hardware/location/NanoAppMessage;Ljava/util/List;Ljava/util/List;)B
+HSPLcom/android/server/location/contexthub/ContextHubServiceUtil;->createNanoAppStateList([Landroid/hardware/contexthub/NanoappInfo;)Ljava/util/List;
+HSPLcom/android/server/location/contexthub/NanoAppStateManager;->getNanoAppHandle(IJ)I+]Landroid/hardware/location/NanoAppInstanceInfo;Landroid/hardware/location/NanoAppInstanceInfo;]Ljava/util/Collection;Ljava/util/HashMap$Values;]Ljava/util/HashMap;Ljava/util/HashMap;]Ljava/util/Iterator;Ljava/util/HashMap$ValueIterator;
 HSPLcom/android/server/location/eventlog/LocalEventLog;->addLog(JLjava/lang/Object;)V+]Lcom/android/server/location/eventlog/LocalEventLog;Lcom/android/server/location/eventlog/LocationEventLog;
 HSPLcom/android/server/location/eventlog/LocalEventLog;->addLogEventInternal(ZILjava/lang/Object;)V+]Lcom/android/server/location/eventlog/LocalEventLog;Lcom/android/server/location/eventlog/LocationEventLog$LocationsEventLog;,Lcom/android/server/location/eventlog/LocationEventLog;
+HSPLcom/android/server/location/eventlog/LocalEventLog;->createEntry(ZI)I
 HSPLcom/android/server/location/eventlog/LocationEventLog;->getAggregateStats(Ljava/lang/String;Landroid/location/util/identity/CallerIdentity;)Lcom/android/server/location/eventlog/LocationEventLog$AggregateStats;
 HPLcom/android/server/location/injector/SystemAppOpsHelper;->noteOpNoThrow(ILandroid/location/util/identity/CallerIdentity;)Z+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;
 HSPLcom/android/server/location/injector/SystemSettingsHelper$IntegerSecureSetting;->getValueForUser(II)I+]Landroid/content/Context;Landroid/app/ContextImpl;
-HSPLcom/android/server/location/injector/SystemSettingsHelper;->isLocationEnabled(I)Z+]Lcom/android/server/location/injector/SystemSettingsHelper$IntegerSecureSetting;Lcom/android/server/location/injector/SystemSettingsHelper$IntegerSecureSetting;
 HSPLcom/android/server/location/listeners/ListenerMultiplexer$ReentrancyGuard;->acquire()Lcom/android/server/location/listeners/ListenerMultiplexer$ReentrancyGuard;
 HSPLcom/android/server/location/listeners/ListenerMultiplexer$ReentrancyGuard;->close()V+]Ljava/util/Map$Entry;Ljava/util/AbstractMap$SimpleImmutableEntry;
 HSPLcom/android/server/location/listeners/ListenerMultiplexer$UpdateServiceBuffer;->acquire()Lcom/android/server/location/listeners/ListenerMultiplexer$UpdateServiceBuffer;
@@ -2058,7 +2108,9 @@
 HPLcom/android/server/location/provider/LocationProviderManager$LocationRegistration$2;->onPostExecute(Z)V
 HPLcom/android/server/location/provider/LocationProviderManager$LocationRegistration$2;->operate(Lcom/android/server/location/provider/LocationProviderManager$LocationTransport;)V+]Lcom/android/server/location/eventlog/LocationEventLog;Lcom/android/server/location/eventlog/LocationEventLog;]Lcom/android/server/location/provider/LocationProviderManager$LocationTransport;Lcom/android/server/location/provider/LocationProviderManager$LocationListenerTransport;
 HPLcom/android/server/location/provider/LocationProviderManager$LocationRegistration;->acceptLocationChange(Landroid/location/LocationResult;)Lcom/android/internal/listeners/ListenerExecutor$ListenerOperation;+]Lcom/android/server/location/injector/AppOpsHelper;Lcom/android/server/location/injector/SystemAppOpsHelper;]Lcom/android/server/location/provider/LocationProviderManager$Registration;Lcom/android/server/location/provider/LocationProviderManager$LocationListenerRegistration;]Lcom/android/server/location/provider/LocationProviderManager;Lcom/android/server/location/provider/LocationProviderManager;,Lcom/android/server/location/provider/PassiveLocationProviderManager;
+HPLcom/android/server/location/provider/LocationProviderManager;->getLastLocationUnsafe(IIZJ)Landroid/location/Location;+]Landroid/location/Location;Landroid/location/Location;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/location/injector/UserInfoHelper;Lcom/android/server/location/LocationManagerService$Lifecycle$LifecycleUserInfoHelper;]Lcom/android/server/location/provider/LocationProviderManager$LastLocation;Lcom/android/server/location/provider/LocationProviderManager$LastLocation;]Lcom/android/server/location/provider/LocationProviderManager;Lcom/android/server/location/provider/LocationProviderManager;
 HSPLcom/android/server/location/provider/LocationProviderManager;->isEnabled(I)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;
+HSPLcom/android/server/location/provider/LocationProviderManager;->onAppForegroundChanged(IZ)V
 HPLcom/android/server/location/provider/LocationProviderManager;->onReportLocation(Landroid/location/LocationResult;)V+]Landroid/location/Location;Landroid/location/Location;]Lcom/android/server/location/eventlog/LocationEventLog;Lcom/android/server/location/eventlog/LocationEventLog;]Lcom/android/server/location/provider/LocationProviderManager;Lcom/android/server/location/provider/LocationProviderManager;]Lcom/android/server/location/provider/PassiveLocationProviderManager;Lcom/android/server/location/provider/PassiveLocationProviderManager;
 HSPLcom/android/server/locksettings/LockSettingsStorage$Cache$CacheKey;->equals(Ljava/lang/Object;)Z
 HSPLcom/android/server/locksettings/LockSettingsStorage$Cache$CacheKey;->hashCode()I
@@ -2081,10 +2133,10 @@
 HSPLcom/android/server/net/NetworkPolicyLogger$LogBuffer;->tempPowerSaveWlChanged(IZILjava/lang/String;)V
 HSPLcom/android/server/net/NetworkPolicyLogger$LogBuffer;->uidFirewallRuleChanged(III)V
 HSPLcom/android/server/net/NetworkPolicyLogger$LogBuffer;->uidStateChanged(IIJI)V
+HSPLcom/android/server/net/NetworkPolicyLogger;->tempPowerSaveWlChanged(IZILjava/lang/String;)V
 HSPLcom/android/server/net/NetworkPolicyLogger;->uidFirewallRuleChanged(III)V
 HSPLcom/android/server/net/NetworkPolicyLogger;->uidStateChanged(IIJI)V
-HSPLcom/android/server/net/NetworkPolicyManagerService$$ExternalSyntheticLambda5;->accept(Ljava/lang/Object;)V
-HSPLcom/android/server/net/NetworkPolicyManagerService$15;->handleMessage(Landroid/os/Message;)Z+]Landroid/app/usage/NetworkStatsManager;Landroid/app/usage/NetworkStatsManager;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/os/RemoteCallbackList;Landroid/os/RemoteCallbackList;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService;
+HSPLcom/android/server/net/NetworkPolicyManagerService$15;->handleMessage(Landroid/os/Message;)Z+]Landroid/app/usage/NetworkStatsManager;Landroid/app/usage/NetworkStatsManager;]Landroid/os/RemoteCallbackList;Landroid/os/RemoteCallbackList;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService;
 HSPLcom/android/server/net/NetworkPolicyManagerService$16;->handleMessage(Landroid/os/Message;)Z+]Lcom/android/server/net/NetworkPolicyManagerService;Lcom/android/server/net/NetworkPolicyManagerService;
 HSPLcom/android/server/net/NetworkPolicyManagerService$4;->isUidStateChangeRelevant(Lcom/android/server/net/NetworkPolicyManagerService$UidStateCallbackInfo;IJI)Z
 HSPLcom/android/server/net/NetworkPolicyManagerService$4;->onUidStateChanged(IIJI)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;
@@ -2099,10 +2151,10 @@
 HSPLcom/android/server/net/NetworkPolicyManagerService;->isUidForegroundOnRestrictPowerUL(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/net/NetworkPolicyManagerService;->isUidIdle(II)Z+]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;
 HSPLcom/android/server/net/NetworkPolicyManagerService;->isUidValidForAllowlistRulesUL(I)Z
+HSPLcom/android/server/net/NetworkPolicyManagerService;->isUidValidForDenylistRulesUL(I)Z
 HSPLcom/android/server/net/NetworkPolicyManagerService;->isUidValidForRulesUL(I)Z
 HSPLcom/android/server/net/NetworkPolicyManagerService;->postBlockedReasonsChangedMsg(III)V
 HSPLcom/android/server/net/NetworkPolicyManagerService;->setUidFirewallRuleUL(III)V+]Landroid/os/INetworkManagementService;Lcom/android/server/net/NetworkManagementService;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/net/NetworkPolicyLogger;Lcom/android/server/net/NetworkPolicyLogger;
-HPLcom/android/server/net/NetworkPolicyManagerService;->updateNetworkEnabledNL()V+]Landroid/net/NetworkPolicy;Landroid/net/NetworkPolicy;]Lcom/android/internal/util/StatLogger;Lcom/android/internal/util/StatLogger;
 HPLcom/android/server/net/NetworkPolicyManagerService;->updateNetworkRulesNL()V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/net/ConnectivityManager;Landroid/net/ConnectivityManager;]Landroid/net/Network;Landroid/net/Network;]Landroid/net/NetworkPolicy;Landroid/net/NetworkPolicy;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/net/NetworkPolicyManagerService;->updateNetworkStats(IZ)V+]Landroid/app/usage/NetworkStatsManager;Landroid/app/usage/NetworkStatsManager;
 HSPLcom/android/server/net/NetworkPolicyManagerService;->updateNotificationsNL()V+]Landroid/net/NetworkPolicy;Landroid/net/NetworkPolicy;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/time/Clock;Landroid/os/BestClock;
@@ -2123,17 +2175,19 @@
 HSPLcom/android/server/net/watchlist/WatchlistLoggingHandler;->handleMessage(Landroid/os/Message;)V
 HSPLcom/android/server/notification/BadgeExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/RankingConfig;Lcom/android/server/notification/PreferencesHelper;
 HSPLcom/android/server/notification/BubbleExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Landroid/app/ActivityManager;Landroid/app/ActivityManager;]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/BubbleExtractor;Lcom/android/server/notification/BubbleExtractor;]Lcom/android/server/notification/RankingConfig;Lcom/android/server/notification/PreferencesHelper;
+HSPLcom/android/server/notification/GlobalSortKeyComparator;->compare(Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;)I
 HSPLcom/android/server/notification/ManagedServices$ManagedServiceInfo;->enabledAndUserMatches(I)Z+]Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;]Lcom/android/server/notification/ManagedServices$UserProfiles;Lcom/android/server/notification/ManagedServices$UserProfiles;
 HSPLcom/android/server/notification/ManagedServices$ManagedServiceInfo;->getService()Landroid/os/IInterface;
 HSPLcom/android/server/notification/ManagedServices$ManagedServiceInfo;->hashCode()I
 HSPLcom/android/server/notification/ManagedServices$ManagedServiceInfo;->isEnabledForCurrentProfiles()Z
 HPLcom/android/server/notification/ManagedServices$ManagedServiceInfo;->isSameUser(I)Z+]Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;
+HSPLcom/android/server/notification/ManagedServices$UserProfiles;->isCurrentProfile(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/notification/ManagedServices;->getServiceFromTokenLocked(Landroid/os/IInterface;)Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;+]Landroid/os/IInterface;Landroid/service/notification/ConditionProviderService$Provider;,Landroid/service/notification/IConditionProvider$Stub$Proxy;,Landroid/service/notification/INotificationListener$Stub$Proxy;,Landroid/service/notification/NotificationListenerService$NotificationListenerWrapper;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/notification/ManagedServices;->getServices()Ljava/util/List;
 HSPLcom/android/server/notification/ManagedServices;->isPackageOrComponentAllowed(Ljava/lang/String;I)Z
 HSPLcom/android/server/notification/ManagedServices;->isServiceTokenValidLocked(Landroid/os/IInterface;)Z
 HSPLcom/android/server/notification/ManagedServices;->writeXml(Lcom/android/modules/utils/TypedXmlSerializer;ZI)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;,Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/ConditionProviders;,Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;,Lcom/android/server/notification/NotificationManagerService$NotificationListeners;
-HPLcom/android/server/notification/NotificationAttentionHelper$PolitenessStrategy;->getChannelKey(Lcom/android/server/notification/NotificationRecord;)Ljava/lang/String;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;
+HSPLcom/android/server/notification/NotificationAttentionHelper$PolitenessStrategy;->getChannelKey(Lcom/android/server/notification/NotificationRecord;)Ljava/lang/String;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;
 HSPLcom/android/server/notification/NotificationAttentionHelper;->buzzBeepBlinkLocked(Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationAttentionHelper$Signals;)I+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/media/AudioManager;Landroid/media/AudioManager;]Landroid/metrics/LogMaker;Landroid/metrics/LogMaker;]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationAttentionHelper$PolitenessStrategy;Lcom/android/server/notification/NotificationAttentionHelper$StrategyAvalanche;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/notification/NotificationChannelExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/media/AudioAttributes$Builder;Landroid/media/AudioAttributes$Builder;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/RankingConfig;Lcom/android/server/notification/PreferencesHelper;
 HSPLcom/android/server/notification/NotificationIntrusivenessExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;
@@ -2143,35 +2197,47 @@
 HSPLcom/android/server/notification/NotificationManagerService$EnqueueNotificationRunnable;->enqueueNotification()Z+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;]Lcom/android/server/notification/TimeToLiveHelper;Lcom/android/server/notification/TimeToLiveHelper;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HPLcom/android/server/notification/NotificationManagerService$NotificationAssistants;->onNotificationEnqueuedLocked(Lcom/android/server/notification/NotificationRecord;)V+]Landroid/service/notification/INotificationListener;Landroid/service/notification/INotificationListener$Stub$Proxy;]Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/notification/NotificationManagerService$NotificationListeners;->getNotificationListenerFilter(Landroid/util/Pair;)Landroid/service/notification/NotificationListenerFilter;
+HSPLcom/android/server/notification/NotificationManagerService$NotificationListeners;->isListenerPackage(Ljava/lang/String;)Z+]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/notification/NotificationManagerService$NotificationListeners;->isUidTrusted(I)Z
+HSPLcom/android/server/notification/NotificationManagerService$NotificationListeners;->notifyNotificationChannelGroupChanged(Ljava/lang/String;Landroid/os/UserHandle;Landroid/app/NotificationChannelGroup;I)V+]Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/notification/NotificationManagerService$NotificationListeners;->prepareNotifyPostedLocked(Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;Z)Ljava/util/List;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService$NotificationListeners;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/notification/NotificationManagerService$PostNotificationRunnable;->postNotification()Z+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/internal/logging/InstanceIdSequence;Lcom/android/internal/logging/InstanceIdSequence;]Lcom/android/server/notification/GroupHelper;Lcom/android/server/notification/GroupHelper;]Lcom/android/server/notification/ManagedServices$UserProfiles;Lcom/android/server/notification/ManagedServices$UserProfiles;]Lcom/android/server/notification/NotificationManagerService$PostNotificationTracker;Lcom/android/server/notification/NotificationManagerService$PostNotificationTracker;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationRecordLogger;Lcom/android/server/notification/NotificationRecordLoggerImpl;]Lcom/android/server/notification/NotificationUsageStats;Lcom/android/server/notification/NotificationUsageStats;]Lcom/android/server/notification/RankingHelper;Lcom/android/server/notification/RankingHelper;]Lcom/android/server/notification/ShortcutHelper;Lcom/android/server/notification/ShortcutHelper;]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/notification/NotificationManagerService$PostNotificationTracker;-><init>(Landroid/os/PowerManager$WakeLock;)V
+HSPLcom/android/server/notification/NotificationManagerService$PostNotificationTracker;->finish()J+]Lcom/android/server/notification/NotificationManagerService$PostNotificationTracker;Lcom/android/server/notification/NotificationManagerService$PostNotificationTracker;]Ljava/lang/Runnable;Lcom/android/server/notification/NotificationManagerService$$ExternalSyntheticLambda7;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/notification/NotificationManagerService$StrongAuthTracker;->isInLockDownMode(I)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;
 HSPLcom/android/server/notification/NotificationManagerService$TrimCache;->ForListener(Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;)Landroid/service/notification/StatusBarNotification;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationManagerService$NotificationListeners;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;
 HSPLcom/android/server/notification/NotificationManagerService$WorkerHandler;->scheduleCancelNotification(Lcom/android/server/notification/NotificationManagerService$CancelNotificationRunnable;I)V
 HPLcom/android/server/notification/NotificationManagerService;->applyAdjustmentLocked(Lcom/android/server/notification/NotificationRecord;Landroid/service/notification/Adjustment;Z)V+]Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet;
 HSPLcom/android/server/notification/NotificationManagerService;->areNotificationsEnabledForPackageInt(I)Z
 HSPLcom/android/server/notification/NotificationManagerService;->cancelNotification(IILjava/lang/String;Ljava/lang/String;IIIZIIIILcom/android/server/notification/ManagedServices$ManagedServiceInfo;)V+]Lcom/android/server/notification/NotificationManagerService$WorkerHandler;Lcom/android/server/notification/NotificationManagerService$WorkerHandler;
-HSPLcom/android/server/notification/NotificationManagerService;->cancelNotificationInternal(Ljava/lang/String;Ljava/lang/String;IILjava/lang/String;III)V+]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;
+HSPLcom/android/server/notification/NotificationManagerService;->cancelNotificationInternal(Ljava/lang/String;Ljava/lang/String;IILjava/lang/String;III)V+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;
+HPLcom/android/server/notification/NotificationManagerService;->cancelNotificationLocked(Lcom/android/server/notification/NotificationRecord;ZIIIZLjava/lang/String;J)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/Notification;Landroid/app/Notification;]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/metrics/LogMaker;Landroid/metrics/LogMaker;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationManagerService$Archive;Lcom/android/server/notification/NotificationManagerService$Archive;]Lcom/android/server/notification/NotificationManagerService$NotificationListeners;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationRecordLogger;Lcom/android/server/notification/NotificationRecordLoggerImpl;]Lcom/android/server/notification/NotificationUsageStats;Lcom/android/server/notification/NotificationUsageStats;]Lcom/android/server/notification/TimeToLiveHelper;Lcom/android/server/notification/TimeToLiveHelper;
 HSPLcom/android/server/notification/NotificationManagerService;->checkCallerIsSameApp(Ljava/lang/String;)V
 HSPLcom/android/server/notification/NotificationManagerService;->checkCallerIsSameApp(Ljava/lang/String;II)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;
 HSPLcom/android/server/notification/NotificationManagerService;->checkCallerIsSystemOrSameApp(Ljava/lang/String;)V+]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;
 HSPLcom/android/server/notification/NotificationManagerService;->checkDisqualifyingFeatures(IIILjava/lang/String;Lcom/android/server/notification/NotificationRecord;ZZ)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/Notification$Action;Landroid/app/Notification$Action;]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationManagerService$NotificationListeners;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationUsageStats;Lcom/android/server/notification/NotificationUsageStats;
+HSPLcom/android/server/notification/NotificationManagerService;->checkRemoteViews(Ljava/lang/String;Ljava/lang/String;ILandroid/app/Notification;)V
 HSPLcom/android/server/notification/NotificationManagerService;->enqueueNotificationInternal(Ljava/lang/String;Ljava/lang/String;IILjava/lang/String;ILandroid/app/Notification;IZLcom/android/server/notification/NotificationManagerService$PostNotificationTracker;ZZ)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/DeviceIdleInternal;Lcom/android/server/DeviceIdleController$LocalService;]Lcom/android/server/job/JobSchedulerInternal;Lcom/android/server/job/JobSchedulerService$LocalService;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationUsageStats;Lcom/android/server/notification/NotificationUsageStats;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;]Lcom/android/server/notification/ShortcutHelper;Lcom/android/server/notification/ShortcutHelper;]Ljava/util/Set;Ljava/util/ImmutableCollections$SetN;
 HSPLcom/android/server/notification/NotificationManagerService;->findNotificationByListLocked(Ljava/util/ArrayList;Ljava/lang/String;Ljava/lang/String;II)Lcom/android/server/notification/NotificationRecord;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/notification/NotificationManagerService;->findNotificationLocked(Ljava/lang/String;Ljava/lang/String;II)Lcom/android/server/notification/NotificationRecord;
 HSPLcom/android/server/notification/NotificationManagerService;->fixNotification(Landroid/app/Notification;Ljava/lang/String;Ljava/lang/String;IIILandroid/app/ActivityManagerInternal$ServiceNotificationPolicy;Z)V+]Landroid/app/Notification$Builder;Landroid/app/Notification$Builder;]Landroid/app/Notification$CallStyle;Landroid/app/Notification$CallStyle;]Landroid/app/Notification;Landroid/app/Notification;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Ljava/util/List;Ljava/util/ArrayList;
+HPLcom/android/server/notification/NotificationManagerService;->getNotificationCount(Ljava/lang/String;IILjava/lang/String;)I+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/notification/NotificationManagerService;->getPackageImportanceWithIdentity(Ljava/lang/String;)I+]Landroid/app/ActivityManager;Landroid/app/ActivityManager;
+HSPLcom/android/server/notification/NotificationManagerService;->handleGroupedNotificationLocked(Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;II)V+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;
+HSPLcom/android/server/notification/NotificationManagerService;->handleRankingSort()V+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationManagerService$WorkerHandler;Lcom/android/server/notification/NotificationManagerService$WorkerHandler;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Lcom/android/server/notification/NotificationRecordLogger;Lcom/android/server/notification/NotificationRecordLoggerImpl;]Lcom/android/server/notification/RankingHelper;Lcom/android/server/notification/RankingHelper;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/notification/NotificationManagerService;->isCallerSystemOrPhone()Z+]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;
+HSPLcom/android/server/notification/NotificationManagerService;->isCallerSystemOrSystemUi()Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;
 HSPLcom/android/server/notification/NotificationManagerService;->isInLockDownMode(I)Z+]Lcom/android/server/notification/NotificationManagerService$StrongAuthTracker;Lcom/android/server/notification/NotificationManagerService$StrongAuthTracker;
 HSPLcom/android/server/notification/NotificationManagerService;->isInteractionVisibleToListener(Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;I)Z+]Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;
 HSPLcom/android/server/notification/NotificationManagerService;->isRecordBlockedLocked(Lcom/android/server/notification/NotificationRecord;)Z+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;
 HSPLcom/android/server/notification/NotificationManagerService;->isServiceTokenValid(Landroid/os/IInterface;)Z+]Lcom/android/server/notification/ManagedServices;Lcom/android/server/notification/NotificationManagerService$NotificationAssistants;
 HSPLcom/android/server/notification/NotificationManagerService;->isUidSystemOrPhone(I)Z
 HSPLcom/android/server/notification/NotificationManagerService;->isVisibleToListener(Landroid/service/notification/StatusBarNotification;ILcom/android/server/notification/ManagedServices$ManagedServiceInfo;)Z+]Landroid/service/notification/NotificationListenerFilter;Landroid/service/notification/NotificationListenerFilter;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;]Lcom/android/server/notification/NotificationManagerService$NotificationListeners;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;
+HSPLcom/android/server/notification/NotificationManagerService;->isVisuallyInterruptive(Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;)Z+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;
 HSPLcom/android/server/notification/NotificationManagerService;->makeRankingUpdateLocked(Lcom/android/server/notification/ManagedServices$ManagedServiceInfo;)Landroid/service/notification/NotificationRankingUpdate;+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationManagerService$NotificationListeners;Lcom/android/server/notification/NotificationManagerService$NotificationListeners;]Lcom/android/server/notification/NotificationManagerService;Lcom/android/server/notification/NotificationManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/notification/NotificationManagerService;->maybeRecordInterruptionLocked(Lcom/android/server/notification/NotificationRecord;)V+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationHistoryManager;Lcom/android/server/notification/NotificationHistoryManager;
 HSPLcom/android/server/notification/NotificationManagerService;->notificationMatchesUserId(Lcom/android/server/notification/NotificationRecord;IZ)Z
-HSPLcom/android/server/notification/NotificationManagerService;->resolveNotificationUid(Ljava/lang/String;Ljava/lang/String;II)I+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;
+HSPLcom/android/server/notification/NotificationManagerService;->resolveNotificationUid(Ljava/lang/String;Ljava/lang/String;II)I+]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;
 HSPLcom/android/server/notification/NotificationManagerService;->updateUriPermissions(Lcom/android/server/notification/NotificationRecord;Lcom/android/server/notification/NotificationRecord;Ljava/lang/String;IZ)V+]Lcom/android/server/uri/UriGrantsManagerInternal;Lcom/android/server/uri/UriGrantsManagerService$LocalService;
 HSPLcom/android/server/notification/NotificationRecord;-><init>(Landroid/content/Context;Landroid/service/notification/StatusBarNotification;Landroid/app/NotificationChannel;)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;
 HSPLcom/android/server/notification/NotificationRecord;->applyAdjustments()V+]Ljava/lang/Object;Ljava/util/ArrayList;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
@@ -2179,7 +2245,12 @@
 HSPLcom/android/server/notification/NotificationRecord;->calculateImportance()V
 HSPLcom/android/server/notification/NotificationRecord;->calculateInitialImportance()I+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;
 HSPLcom/android/server/notification/NotificationRecord;->calculateLights()Lcom/android/server/notification/NotificationRecord$Light;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/res/Resources;Landroid/content/res/Resources;
+HSPLcom/android/server/notification/NotificationRecord;->calculateRankingTimeMs(J)J+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;
+HSPLcom/android/server/notification/NotificationRecord;->calculateSound()Landroid/net/Uri;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;
+HSPLcom/android/server/notification/NotificationRecord;->calculateUserSentiment()V
 HSPLcom/android/server/notification/NotificationRecord;->calculateVibration()Landroid/os/VibrationEffect;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;
+HSPLcom/android/server/notification/NotificationRecord;->getFlags()I+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;
+HSPLcom/android/server/notification/NotificationRecord;->getImportance()I
 HSPLcom/android/server/notification/NotificationRecord;->getImportanceExplanation()Ljava/lang/CharSequence;
 HSPLcom/android/server/notification/NotificationRecord;->getKey()Ljava/lang/String;+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;
 HSPLcom/android/server/notification/NotificationRecord;->getLogMaker(J)Landroid/metrics/LogMaker;+]Landroid/metrics/LogMaker;Landroid/metrics/LogMaker;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;
@@ -2190,6 +2261,7 @@
 HSPLcom/android/server/notification/NotificationRecord;->getUserId()I+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;
 HSPLcom/android/server/notification/NotificationRecord;->isConversation()Z+]Landroid/app/Notification;Landroid/app/Notification;
 HSPLcom/android/server/notification/NotificationRecord;->updateNotificationChannel(Landroid/app/NotificationChannel;)V
+HPLcom/android/server/notification/NotificationRecord;->visitGrantableUri(Landroid/net/Uri;ZZ)V+]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;
 HSPLcom/android/server/notification/NotificationRecordLogger$NotificationReported;-><init>(Lcom/android/server/notification/NotificationRecordLogger$NotificationRecordPair;Lcom/android/server/notification/NotificationRecordLogger$NotificationReportedEvent;IILcom/android/internal/logging/InstanceId;)V+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Lcom/android/server/notification/NotificationRecordLogger$NotificationRecordPair;Lcom/android/server/notification/NotificationRecordLogger$NotificationRecordPair;
 HSPLcom/android/server/notification/NotificationRecordLoggerImpl;->writeNotificationReportedAtom(Lcom/android/server/notification/NotificationRecordLogger$NotificationReported;)V
 HSPLcom/android/server/notification/NotificationUsageStats$AggregatedStats;->countApiUse(Lcom/android/server/notification/NotificationRecord;)V+]Lcom/android/server/notification/NotificationUsageStats$ImportanceHistogram;Lcom/android/server/notification/NotificationUsageStats$ImportanceHistogram;]Ljava/util/Set;Landroid/util/MapCollections$KeySet;
@@ -2197,43 +2269,54 @@
 HSPLcom/android/server/notification/NotificationUsageStats;->getAggregatedStatsLocked(Ljava/lang/String;)[Lcom/android/server/notification/NotificationUsageStats$AggregatedStats;+]Ljava/util/ArrayDeque;Ljava/util/ArrayDeque;
 HSPLcom/android/server/notification/NotificationUsageStats;->getOrCreateAggregatedStatsLocked(Ljava/lang/String;)Lcom/android/server/notification/NotificationUsageStats$AggregatedStats;+]Ljava/util/Map;Ljava/util/HashMap;
 HSPLcom/android/server/notification/PermissionHelper;->hasPermission(I)Z+]Landroid/content/Context;Landroid/app/ContextImpl;
+HSPLcom/android/server/notification/PermissionHelper;->isPermissionFixed(Ljava/lang/String;I)Z+]Landroid/permission/IPermissionManager;Lcom/android/server/pm/permission/PermissionManagerService;
 HSPLcom/android/server/notification/PreferencesHelper$PackagePreferences;-><init>()V
-HSPLcom/android/server/notification/PreferencesHelper;->createNotificationChannel(Ljava/lang/String;ILandroid/app/NotificationChannel;ZZIZ)Z+]Landroid/metrics/LogMaker;Landroid/metrics/LogMaker;]Lcom/android/server/notification/NotificationChannelLogger;Lcom/android/server/notification/NotificationChannelLoggerImpl;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Map;Ljava/util/concurrent/ConcurrentHashMap;
+HSPLcom/android/server/notification/PreferencesHelper;->bubblesEnabled(Landroid/os/UserHandle;)Z+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;
+HSPLcom/android/server/notification/PreferencesHelper;->createNotificationChannel(Ljava/lang/String;ILandroid/app/NotificationChannel;ZZIZ)Z+]Landroid/metrics/LogMaker;Landroid/metrics/LogMaker;]Lcom/android/server/notification/NotificationChannelLogger;Lcom/android/server/notification/NotificationChannelLoggerImpl;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Map;Landroid/util/ArrayMap;,Ljava/util/concurrent/ConcurrentHashMap;
+HSPLcom/android/server/notification/PreferencesHelper;->createNotificationChannelGroup(Ljava/lang/String;ILandroid/app/NotificationChannelGroup;ZIZ)V+]Lcom/android/server/notification/NotificationChannelLogger;Lcom/android/server/notification/NotificationChannelLoggerImpl;]Ljava/util/Map;Landroid/util/ArrayMap;,Ljava/util/concurrent/ConcurrentHashMap;
 HSPLcom/android/server/notification/PreferencesHelper;->getConversationNotificationChannel(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;ZZ)Landroid/app/NotificationChannel;
-HPLcom/android/server/notification/PreferencesHelper;->getNotificationChannelGroupWithChannels(Ljava/lang/String;ILjava/lang/String;Z)Landroid/app/NotificationChannelGroup;+]Ljava/util/Map;Ljava/util/concurrent/ConcurrentHashMap;
-HPLcom/android/server/notification/PreferencesHelper;->getNotificationChannelGroups(Ljava/lang/String;IZZZZLjava/util/Set;)Landroid/content/pm/ParceledListSlice;+]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;,Ljava/util/concurrent/ConcurrentHashMap$ValuesView;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/concurrent/ConcurrentHashMap$ValueIterator;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Map;Landroid/util/ArrayMap;,Ljava/util/concurrent/ConcurrentHashMap;]Ljava/util/Set;Ljava/util/HashSet;
+HPLcom/android/server/notification/PreferencesHelper;->getNotificationChannelGroupWithChannels(Ljava/lang/String;ILjava/lang/String;Z)Landroid/app/NotificationChannelGroup;+]Ljava/util/Map;Landroid/util/ArrayMap;,Ljava/util/concurrent/ConcurrentHashMap;
 HSPLcom/android/server/notification/PreferencesHelper;->getOrCreatePackagePreferencesLocked(Ljava/lang/String;I)Lcom/android/server/notification/PreferencesHelper$PackagePreferences;+]Ljava/time/Clock;Ljava/time/Clock$SystemClock;
 HSPLcom/android/server/notification/PreferencesHelper;->getOrCreatePackagePreferencesLocked(Ljava/lang/String;IIIIIZIJ)Lcom/android/server/notification/PreferencesHelper$PackagePreferences;+]Ljava/time/Clock;Ljava/time/Clock$SystemClock;
 HSPLcom/android/server/notification/PreferencesHelper;->getPackagePreferencesLocked(Ljava/lang/String;I)Lcom/android/server/notification/PreferencesHelper$PackagePreferences;
 HSPLcom/android/server/notification/PreferencesHelper;->packagePreferencesKey(Ljava/lang/String;I)Ljava/lang/String;
-HSPLcom/android/server/notification/PreferencesHelper;->readXml(Lcom/android/modules/utils/TypedXmlPullParser;ZI)V
 HSPLcom/android/server/notification/PreferencesHelper;->restoreChannel(Lcom/android/modules/utils/TypedXmlPullParser;ZLcom/android/server/notification/PreferencesHelper$PackagePreferences;)V
-HSPLcom/android/server/notification/PreferencesHelper;->restorePackage(Lcom/android/modules/utils/TypedXmlPullParser;ZILjava/lang/String;ZZ)V
+HSPLcom/android/server/notification/PreferencesHelper;->restorePackage(Lcom/android/modules/utils/TypedXmlPullParser;ZILjava/lang/String;ZZ)V+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;]Ljava/time/Clock;Ljava/time/Clock$SystemClock;]Ljava/util/Map;Ljava/util/concurrent/ConcurrentHashMap;
 HSPLcom/android/server/notification/PreferencesHelper;->writePackageXml(Lcom/android/server/notification/PreferencesHelper$PackagePreferences;Lcom/android/modules/utils/TypedXmlSerializer;Landroid/util/ArrayMap;Z)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;,Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;,Ljava/util/concurrent/ConcurrentHashMap$ValuesView;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/concurrent/ConcurrentHashMap$ValueIterator;]Ljava/util/Map;Landroid/util/ArrayMap;,Ljava/util/concurrent/ConcurrentHashMap;
 HSPLcom/android/server/notification/PreferencesHelper;->writeXml(Lcom/android/modules/utils/TypedXmlSerializer;ZI)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;,Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;]Lcom/android/server/notification/PreferencesHelper;Lcom/android/server/notification/PreferencesHelper;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/Set;Landroid/util/MapCollections$KeySet;
+HSPLcom/android/server/notification/PriorityExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;
+HSPLcom/android/server/notification/RankingHelper;->extractSignals(Lcom/android/server/notification/NotificationRecord;)V+]Lcom/android/server/notification/NotificationSignalExtractor;megamorphic_types]Lcom/android/server/notification/RankingHandler;Lcom/android/server/notification/NotificationManagerService$RankingHandlerWorker;
 HSPLcom/android/server/notification/RankingHelper;->sort(Ljava/util/ArrayList;)V+]Landroid/app/Notification;Landroid/app/Notification;]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/notification/ShortcutHelper;->maybeListenForShortcutChangesForBubbles(Lcom/android/server/notification/NotificationRecord;Z)V+]Landroid/app/Notification;Landroid/app/Notification;]Landroid/service/notification/StatusBarNotification;Landroid/service/notification/StatusBarNotification;]Ljava/util/HashMap;Ljava/util/HashMap;
 HSPLcom/android/server/notification/SnoozeHelper;->cancel(ILjava/lang/String;Ljava/lang/String;I)Z+]Ljava/util/Iterator;Landroid/util/MapCollections$MapIterator;]Ljava/util/Set;Landroid/util/MapCollections$EntrySet;
 HSPLcom/android/server/notification/SnoozeHelper;->getSnoozed(ILjava/lang/String;)Ljava/util/Collection;+]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;
 HSPLcom/android/server/notification/TimeToLiveHelper;->removeMatchingEntry(Ljava/lang/String;)V+]Ljava/util/Iterator;Ljava/util/TreeMap$KeyIterator;]Ljava/util/TreeSet;Ljava/util/TreeSet;
 HSPLcom/android/server/notification/TimeToLiveHelper;->scheduleTimeoutLocked(Lcom/android/server/notification/NotificationRecord;J)V+]Landroid/app/Notification;Landroid/app/Notification;]Ljava/util/TreeSet;Ljava/util/TreeSet;
 HSPLcom/android/server/notification/ValidateNotificationPeople;->getExtraPeopleForKey(Landroid/os/Bundle;Ljava/lang/String;)[Ljava/lang/String;+]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/notification/ValidateNotificationPeople;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Lcom/android/server/notification/ValidateNotificationPeople;Lcom/android/server/notification/ValidateNotificationPeople;
 HSPLcom/android/server/notification/ValidateNotificationPeople;->validatePeople(Landroid/content/Context;Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Lcom/android/server/notification/NotificationUsageStats;Lcom/android/server/notification/NotificationUsageStats;]Lcom/android/server/notification/ValidateNotificationPeople$PeopleRankingReconsideration;Lcom/android/server/notification/ValidateNotificationPeople$PeopleRankingReconsideration;
 HSPLcom/android/server/notification/ValidateNotificationPeople;->validatePeople(Landroid/content/Context;Ljava/lang/String;Landroid/os/Bundle;Ljava/util/List;[FLandroid/util/ArraySet;)Lcom/android/server/notification/ValidateNotificationPeople$PeopleRankingReconsideration;+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/notification/ValidateNotificationPeople$LookupResult;Lcom/android/server/notification/ValidateNotificationPeople$LookupResult;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;
 HSPLcom/android/server/notification/VibratorHelper;-><init>(Landroid/content/Context;)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/res/Resources;Landroid/content/res/Resources;
 HSPLcom/android/server/notification/VibratorHelper;->getFloatArray(Landroid/content/res/Resources;I)[F+]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;
+HSPLcom/android/server/notification/VibratorHelper;->getLongArray(Landroid/content/res/Resources;II[J)[J+]Landroid/content/res/Resources;Landroid/content/res/Resources;
 HSPLcom/android/server/notification/VisibilityExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Lcom/android/server/notification/RankingConfig;Lcom/android/server/notification/PreferencesHelper;
+HSPLcom/android/server/notification/ZenModeExtractor;->process(Lcom/android/server/notification/NotificationRecord;)Lcom/android/server/notification/RankingReconsideration;+]Lcom/android/server/notification/ZenModeHelper;Lcom/android/server/notification/ZenModeHelper;
+HSPLcom/android/server/notification/ZenModeHelper;->shouldIntercept(Lcom/android/server/notification/NotificationRecord;)Z+]Lcom/android/server/notification/ZenModeFiltering;Lcom/android/server/notification/ZenModeFiltering;
 HSPLcom/android/server/notification/ZenModeHelper;->zenRuleToAutomaticZenRule(Landroid/service/notification/ZenModeConfig$ZenRule;)Landroid/app/AutomaticZenRule;
 HSPLcom/android/server/om/OverlayManagerServiceImpl;->updateState(Landroid/content/om/CriticalOverlayInfo;II)Z
+HSPLcom/android/server/om/OverlayManagerSettings$SettingsItem;->-$$Nest$fgetmUserId(Lcom/android/server/om/OverlayManagerSettings$SettingsItem;)I
 HSPLcom/android/server/om/OverlayManagerSettings;->forEachMatching(ILjava/lang/String;Ljava/lang/String;Ljava/util/function/Consumer;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Consumer;Lcom/android/server/om/OverlayManagerServiceImpl$$ExternalSyntheticLambda1;
 HSPLcom/android/server/om/OverlayManagerSettings;->select(Landroid/content/om/OverlayIdentifier;I)I+]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/om/OverlayReferenceMapper$1;->getTargetToOverlayables(Lcom/android/server/pm/pkg/AndroidPackage;)Landroid/util/Pair;+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;
 HSPLcom/android/server/om/OverlayReferenceMapper;->addPkg(Lcom/android/server/pm/pkg/AndroidPackage;Ljava/util/Map;)Landroid/util/ArraySet;
 HSPLcom/android/server/om/OverlayReferenceMapper;->addTarget(Lcom/android/server/pm/pkg/AndroidPackage;Ljava/util/Map;Ljava/util/Collection;)V+]Lcom/android/server/om/OverlayReferenceMapper$Provider;Lcom/android/server/om/OverlayReferenceMapper$1;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/Collection;Landroid/util/MapCollections$ValuesCollection;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;,Ljava/util/Collections$UnmodifiableCollection$1;,Ljava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$1;]Ljava/util/Map$Entry;Ljava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$UnmodifiableEntry;]Ljava/util/Map;Landroid/util/ArrayMap;,Ljava/util/Collections$EmptyMap;,Ljava/util/Collections$UnmodifiableMap;,Ljava/util/HashMap;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet;,Ljava/util/Collections$UnmodifiableSet;,Ljava/util/HashSet;
-HPLcom/android/server/om/OverlayReferenceMapper;->ensureMapBuilt()V
-HPLcom/android/server/om/OverlayReferenceMapper;->isValidActor(Ljava/lang/String;Ljava/lang/String;)Z
+HSPLcom/android/server/om/OverlayReferenceMapper;->ensureMapBuilt()V
+HSPLcom/android/server/om/OverlayReferenceMapper;->isValidActor(Ljava/lang/String;Ljava/lang/String;)Z
 HSPLcom/android/server/os/NativeTombstoneManager;->collectTombstones(Ljava/util/ArrayList;III)V
 HSPLcom/android/server/permission/access/AccessCheckingService;->access$getState$p(Lcom/android/server/permission/access/AccessCheckingService;)Lcom/android/server/permission/access/AccessState;
 HSPLcom/android/server/permission/access/AccessPersistence;->write(Lcom/android/server/permission/access/AccessState;)V
 HSPLcom/android/server/permission/access/AccessPersistence;->write(Lcom/android/server/permission/access/WritableState;Lcom/android/server/permission/access/AccessState;I)V+]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/permission/access/WritableState;Lcom/android/server/permission/access/MutableSystemState;,Lcom/android/server/permission/access/MutableUserState;
+HSPLcom/android/server/permission/access/AccessPersistence;->writeSystemState(Lcom/android/server/permission/access/AccessState;)V
 HSPLcom/android/server/permission/access/AccessPersistence;->writeUserState(Lcom/android/server/permission/access/AccessState;I)V
 HSPLcom/android/server/permission/access/AccessPolicy;->onStateMutated(Lcom/android/server/permission/access/GetStateScope;)V+]Lcom/android/server/permission/access/SchemePolicy;Lcom/android/server/permission/access/appop/AppIdAppOpPolicy;,Lcom/android/server/permission/access/appop/PackageAppOpPolicy;,Lcom/android/server/permission/access/permission/AppIdPermissionPolicy;,Lcom/android/server/permission/access/permission/DevicePermissionPolicy;
 HSPLcom/android/server/permission/access/AccessPolicy;->serializePackageVersions(Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/server/permission/access/immutable/IndexedMap;)V+]Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/modules/utils/BinaryXmlSerializer;]Ljava/lang/Number;Ljava/lang/Integer;
@@ -2243,6 +2326,7 @@
 HSPLcom/android/server/permission/access/AccessState;->getUserStates()Lcom/android/server/permission/access/immutable/IntReferenceMap;
 HSPLcom/android/server/permission/access/AccessState;->toMutable()Lcom/android/server/permission/access/MutableAccessState;
 HSPLcom/android/server/permission/access/ExternalState;->getAppIdPackageNames()Lcom/android/server/permission/access/immutable/IntReferenceMap;
+HSPLcom/android/server/permission/access/ExternalState;->getPackageStates()Ljava/util/Map;
 HSPLcom/android/server/permission/access/GetStateScope;-><init>(Lcom/android/server/permission/access/AccessState;)V
 HSPLcom/android/server/permission/access/GetStateScope;->getState()Lcom/android/server/permission/access/AccessState;
 HSPLcom/android/server/permission/access/MutableAccessState;-><init>(Lcom/android/server/permission/access/AccessState;)V
@@ -2251,11 +2335,13 @@
 HSPLcom/android/server/permission/access/MutateStateScope;->getNewState()Lcom/android/server/permission/access/MutableAccessState;
 HSPLcom/android/server/permission/access/SystemState;->getPermissions()Lcom/android/server/permission/access/immutable/IndexedMap;
 HSPLcom/android/server/permission/access/SystemState;->getWriteMode()I
+HSPLcom/android/server/permission/access/UserState;->getAppIdAppOpModes()Lcom/android/server/permission/access/immutable/IntReferenceMap;
 HSPLcom/android/server/permission/access/UserState;->getAppIdPermissionFlags()Lcom/android/server/permission/access/immutable/IntReferenceMap;
 HSPLcom/android/server/permission/access/UserState;->getWriteMode()I
 HSPLcom/android/server/permission/access/appop/AppIdAppOpPolicy;->getAppOpMode(Lcom/android/server/permission/access/GetStateScope;IILjava/lang/String;)I+]Ljava/lang/Number;Ljava/lang/Integer;
 HSPLcom/android/server/permission/access/appop/AppIdAppOpPolicy;->getAppOpModes(Lcom/android/server/permission/access/GetStateScope;II)Lcom/android/server/permission/access/immutable/IndexedMap;
 HSPLcom/android/server/permission/access/appop/AppIdAppOpPolicy;->onStateMutated(Lcom/android/server/permission/access/GetStateScope;)V+]Lcom/android/server/permission/access/appop/AppIdAppOpPolicy$OnAppOpModeChangedListener;Lcom/android/server/permission/access/appop/AppOpService$OnAppIdAppOpModeChangedListener;
+HSPLcom/android/server/permission/access/appop/AppIdAppOpPolicy;->setAppOpMode(Lcom/android/server/permission/access/MutateStateScope;IILjava/lang/String;I)Z+]Lcom/android/server/permission/access/appop/AppIdAppOpPolicy$OnAppOpModeChangedListener;Lcom/android/server/permission/access/appop/AppOpService$OnAppIdAppOpModeChangedListener;]Ljava/lang/Number;Ljava/lang/Integer;
 HSPLcom/android/server/permission/access/appop/AppOpService$OnAppIdAppOpModeChangedListener;->onStateMutated()V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Lcom/android/server/appop/AppOpsCheckingServiceInterface$AppOpsModeChangedListener;Lcom/android/server/appop/AppOpsService$2;]Ljava/lang/Number;Ljava/lang/Integer;
 HSPLcom/android/server/permission/access/appop/AppOpService$OnPackageAppOpModeChangedListener;->onStateMutated()V+]Lcom/android/server/appop/AppOpsCheckingServiceInterface$AppOpsModeChangedListener;Lcom/android/server/appop/AppOpsService$2;]Ljava/lang/Number;Ljava/lang/Integer;
 HSPLcom/android/server/permission/access/appop/AppOpService$OnPermissionFlagsChangedListener;->onStateMutated()V+]Lcom/android/server/appop/AppOpsCheckingServiceInterface$AppOpsModeChangedListener;Lcom/android/server/appop/AppOpsService$2;]Ljava/lang/Number;Ljava/lang/Integer;
@@ -2267,7 +2353,8 @@
 HSPLcom/android/server/permission/access/appop/AppOpService;->getUidMode(ILjava/lang/String;I)I+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/permission/access/appop/AppOpService;->getUidModeFromPermissionState(Lcom/android/server/permission/access/GetStateScope;IILjava/lang/String;Ljava/lang/String;)I+]Ljava/util/Set;Ljava/util/ImmutableCollections$Set12;
 HSPLcom/android/server/permission/access/appop/AppOpService;->getUidModes(I)Landroid/util/ArrayMap;
-HPLcom/android/server/permission/access/appop/AppOpService;->setUidMode(ILjava/lang/String;II)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/permission/access/AccessState;Lcom/android/server/permission/access/MutableAccessState;
+HSPLcom/android/server/permission/access/appop/AppOpService;->setUidMode(ILjava/lang/String;II)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/permission/access/AccessState;Lcom/android/server/permission/access/MutableAccessState;
+HSPLcom/android/server/permission/access/appop/BaseAppOpPersistence;->serializeAppOp(Lcom/android/modules/utils/BinaryXmlSerializer;Ljava/lang/String;I)V+]Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/modules/utils/BinaryXmlSerializer;
 HSPLcom/android/server/permission/access/appop/BaseAppOpPersistence;->serializeAppOps(Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/server/permission/access/immutable/IndexedMap;)V+]Ljava/lang/Number;Ljava/lang/Integer;
 HSPLcom/android/server/permission/access/appop/PackageAppOpPolicy;->getAppOpMode(Lcom/android/server/permission/access/GetStateScope;Ljava/lang/String;ILjava/lang/String;)I+]Ljava/lang/Number;Ljava/lang/Integer;
 HSPLcom/android/server/permission/access/appop/PackageAppOpPolicy;->getAppOpModes(Lcom/android/server/permission/access/GetStateScope;Ljava/lang/String;I)Lcom/android/server/permission/access/immutable/IndexedMap;
@@ -2287,9 +2374,10 @@
 HSPLcom/android/server/permission/access/immutable/IntReferenceMap;->keyAt(I)I+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/permission/access/immutable/IntReferenceMap;->valueAt(I)Lcom/android/server/permission/access/immutable/Immutable;+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/permission/access/immutable/MutableIndexedList;->add(Ljava/lang/Object;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList;
-HSPLcom/android/server/permission/access/immutable/MutableReference;-><init>(Lcom/android/server/permission/access/immutable/Immutable;Lcom/android/server/permission/access/immutable/Immutable;)V
+HSPLcom/android/server/permission/access/immutable/MutableIndexedMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
 HSPLcom/android/server/permission/access/immutable/MutableReference;->get()Lcom/android/server/permission/access/immutable/Immutable;
 HSPLcom/android/server/permission/access/immutable/MutableReference;->mutate()Lcom/android/server/permission/access/immutable/Immutable;+]Lcom/android/server/permission/access/immutable/Immutable;megamorphic_types
+HSPLcom/android/server/permission/access/permission/AppIdPermissionPersistence;->parsePermission(Lcom/android/modules/utils/BinaryXmlPullParser;Lcom/android/server/permission/access/immutable/MutableIndexedMap;)V
 HSPLcom/android/server/permission/access/permission/AppIdPermissionPersistence;->serializeAppId(Lcom/android/modules/utils/BinaryXmlSerializer;ILcom/android/server/permission/access/immutable/IndexedMap;)V+]Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/modules/utils/BinaryXmlSerializer;]Ljava/lang/Number;Ljava/lang/Integer;
 HSPLcom/android/server/permission/access/permission/AppIdPermissionPersistence;->serializeAppIdPermission(Lcom/android/modules/utils/BinaryXmlSerializer;Ljava/lang/String;I)V+]Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/modules/utils/BinaryXmlSerializer;
 HSPLcom/android/server/permission/access/permission/AppIdPermissionPersistence;->serializeAppIdPermissions(Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/server/permission/access/immutable/IntReferenceMap;)V+]Lcom/android/modules/utils/BinaryXmlSerializer;Lcom/android/modules/utils/BinaryXmlSerializer;
@@ -2300,7 +2388,7 @@
 HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->evaluateAllPermissionStatesForPackageAndUser(Lcom/android/server/permission/access/MutateStateScope;Lcom/android/server/pm/pkg/PackageState;ILcom/android/server/pm/pkg/PackageState;)V+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/lang/Iterable;Ljava/util/Collections$UnmodifiableSet;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1;
 HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->evaluatePermissionState(Lcom/android/server/permission/access/MutateStateScope;IILjava/lang/String;Lcom/android/server/pm/pkg/PackageState;)V+]Landroid/content/pm/PermissionInfo;Landroid/content/pm/PermissionInfo;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/util/Map;Ljava/util/Collections$UnmodifiableMap;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet;
 HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->findPermissionTree(Lcom/android/server/permission/access/GetStateScope;Ljava/lang/String;)Lcom/android/server/permission/access/permission/Permission;
-HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->getAppIdTargetSdkVersion(Lcom/android/server/permission/access/MutateStateScope;ILjava/lang/String;Lcom/android/server/permission/access/AccessState;)I+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/util/Map;Ljava/util/Collections$UnmodifiableMap;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet;
+HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->getAppIdTargetSdkVersion(Lcom/android/server/permission/access/MutateStateScope;ILjava/lang/String;Lcom/android/server/permission/access/AccessState;)I+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/util/Map;Ljava/util/Collections$UnmodifiableMap;
 HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->getPermissionFlags(Lcom/android/server/permission/access/AccessState;IILjava/lang/String;)I+]Ljava/lang/Number;Ljava/lang/Integer;
 HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->getPermissionFlags(Lcom/android/server/permission/access/GetStateScope;IILjava/lang/String;)I
 HSPLcom/android/server/permission/access/permission/AppIdPermissionPolicy;->getPermissions(Lcom/android/server/permission/access/GetStateScope;)Lcom/android/server/permission/access/immutable/IndexedMap;
@@ -2342,7 +2430,7 @@
 HSPLcom/android/server/permission/access/permission/PermissionService;->getGrantedPermissions(Ljava/lang/String;I)Ljava/util/Set;+]Lcom/android/server/pm/PackageManagerLocal;Lcom/android/server/pm/local/PackageManagerLocalImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Ljava/lang/Number;Ljava/lang/Integer;
 HSPLcom/android/server/permission/access/permission/PermissionService;->getInstalledPermissions(Ljava/lang/String;)Ljava/util/Set;
 HSPLcom/android/server/permission/access/permission/PermissionService;->getPermissionFlags(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)I+]Lcom/android/server/pm/PackageManagerLocal$FilteredSnapshot;Lcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;]Lcom/android/server/pm/PackageManagerLocal;Lcom/android/server/pm/local/PackageManagerLocalImpl;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;
-HSPLcom/android/server/permission/access/permission/PermissionService;->getPermissionFlagsWithPolicy(Lcom/android/server/permission/access/GetStateScope;IILjava/lang/String;Ljava/lang/String;)I+]Ljava/util/Set;Ljava/util/ImmutableCollections$Set12;
+HSPLcom/android/server/permission/access/permission/PermissionService;->getPermissionFlagsWithPolicy(Lcom/android/server/permission/access/GetStateScope;IILjava/lang/String;Ljava/lang/String;)I
 HSPLcom/android/server/permission/access/permission/PermissionService;->getPermissionInfo(Ljava/lang/String;ILjava/lang/String;)Landroid/content/pm/PermissionInfo;+]Lcom/android/server/pm/PackageManagerLocal;Lcom/android/server/pm/local/PackageManagerLocalImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;
 HSPLcom/android/server/permission/access/permission/PermissionService;->isPackageVisibleToUid(Lcom/android/server/pm/PackageManagerLocal$UnfilteredSnapshot;Ljava/lang/String;II)Z+]Lcom/android/server/pm/PackageManagerLocal$FilteredSnapshot;Lcom/android/server/pm/local/PackageManagerLocalImpl$FilteredSnapshotImpl;
 HSPLcom/android/server/permission/access/permission/PermissionService;->isPermissionGranted(Lcom/android/server/permission/access/GetStateScope;Lcom/android/server/pm/pkg/PackageState;ILjava/lang/String;Ljava/lang/String;)Z+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;
@@ -2361,6 +2449,7 @@
 HSPLcom/android/server/permission/jarjar/kotlin/jvm/internal/Intrinsics;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z+]Ljava/lang/Object;Landroid/content/pm/SigningDetails;,Landroid/util/ArraySet;,Ljava/lang/Integer;,Ljava/lang/String;
 HSPLcom/android/server/permission/jarjar/kotlin/jvm/internal/Intrinsics;->checkNotNull(Ljava/lang/Object;)V
 HSPLcom/android/server/permission/jarjar/kotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
+HSPLcom/android/server/pinner/PinnerService$4;->onUidActive(I)V
 HSPLcom/android/server/pm/ApexManager$ApexManagerImpl;->getActivePackageNameForApexModuleName(Ljava/lang/String;)Ljava/lang/String;
 HSPLcom/android/server/pm/AppDataHelper$$ExternalSyntheticLambda3;->accept(Ljava/lang/Object;Ljava/lang/Object;)V
 HSPLcom/android/server/pm/AppDataHelper;->lambda$prepareAppData$2(Ljava/lang/String;Ljava/lang/String;IILandroid/os/CreateAppDataArgs;Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/pkg/AndroidPackage;Landroid/os/CreateAppDataResult;Ljava/lang/Throwable;)V+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;
@@ -2369,11 +2458,10 @@
 HSPLcom/android/server/pm/AppIdSettingMap;-><init>(Lcom/android/server/pm/AppIdSettingMap;)V
 HSPLcom/android/server/pm/AppIdSettingMap;->getSetting(I)Lcom/android/server/pm/SettingBase;+]Lcom/android/server/utils/WatchedArrayList;Lcom/android/server/utils/WatchedArrayList;]Lcom/android/server/utils/WatchedSparseArray;Lcom/android/server/utils/WatchedSparseArray;
 HSPLcom/android/server/pm/AppsFilterBase;-><init>()V
-HPLcom/android/server/pm/AppsFilterBase;->isImplicitlyQueryable(II)Z+]Lcom/android/server/utils/WatchedSparseSetArray;Lcom/android/server/utils/WatchedSparseSetArray;
-HPLcom/android/server/pm/AppsFilterBase;->isQueryableViaComponent(II)Z+]Lcom/android/server/utils/WatchedSparseSetArray;Lcom/android/server/utils/WatchedSparseSetArray;
-HPLcom/android/server/pm/AppsFilterBase;->isQueryableViaPackage(II)Z+]Lcom/android/server/utils/WatchedSparseSetArray;Lcom/android/server/utils/WatchedSparseSetArray;
+HSPLcom/android/server/pm/AppsFilterBase;->isImplicitlyQueryable(II)Z+]Lcom/android/server/utils/WatchedSparseSetArray;Lcom/android/server/utils/WatchedSparseSetArray;
+HSPLcom/android/server/pm/AppsFilterBase;->isQueryableViaPackage(II)Z+]Lcom/android/server/utils/WatchedSparseSetArray;Lcom/android/server/utils/WatchedSparseSetArray;
 HSPLcom/android/server/pm/AppsFilterBase;->shouldFilterApplication(Lcom/android/server/pm/snapshot/PackageDataSnapshot;ILjava/lang/Object;Lcom/android/server/pm/pkg/PackageStateInternal;I)Z+]Lcom/android/server/pm/AppsFilterBase;Lcom/android/server/pm/AppsFilterImpl;,Lcom/android/server/pm/AppsFilterSnapshotImpl;]Lcom/android/server/pm/FeatureConfig;Lcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;
-HSPLcom/android/server/pm/AppsFilterBase;->shouldFilterApplicationInternal(Lcom/android/server/pm/Computer;ILjava/lang/Object;Lcom/android/server/pm/pkg/PackageStateInternal;I)Z+]Lcom/android/server/om/OverlayReferenceMapper;Lcom/android/server/om/OverlayReferenceMapper;]Lcom/android/server/pm/AppsFilterBase;Lcom/android/server/pm/AppsFilterImpl;,Lcom/android/server/pm/AppsFilterSnapshotImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/FeatureConfig;Lcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/SharedUserApi;Lcom/android/server/pm/SharedUserSetting;
+HSPLcom/android/server/pm/AppsFilterBase;->shouldFilterApplicationInternal(Lcom/android/server/pm/Computer;ILjava/lang/Object;Lcom/android/server/pm/pkg/PackageStateInternal;I)Z+]Lcom/android/server/om/OverlayReferenceMapper;Lcom/android/server/om/OverlayReferenceMapper;]Lcom/android/server/pm/AppsFilterBase;Lcom/android/server/pm/AppsFilterImpl;,Lcom/android/server/pm/AppsFilterSnapshotImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/FeatureConfig;Lcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/SharedUserApi;Lcom/android/server/pm/SharedUserSetting;
 HPLcom/android/server/pm/AppsFilterBase;->shouldFilterApplicationUsingCache(III)Z+]Lcom/android/server/utils/WatchedSparseBooleanMatrix;Lcom/android/server/utils/WatchedSparseBooleanMatrix;
 HSPLcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;-><init>(Lcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;)V
 HSPLcom/android/server/pm/AppsFilterImpl$FeatureConfigImpl;->isGloballyEnabled()Z
@@ -2420,7 +2508,6 @@
 HSPLcom/android/server/pm/ComputerEngine;->canViewInstantApps(II)Z+]Landroid/content/Context;Landroid/app/ContextImpl;
 HSPLcom/android/server/pm/ComputerEngine;->checkSignatures(Ljava/lang/String;Ljava/lang/String;I)I+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;
 HSPLcom/android/server/pm/ComputerEngine;->checkUidPermission(Ljava/lang/String;I)I+]Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;
-HPLcom/android/server/pm/ComputerEngine;->createForwardingResolveInfoUnchecked(Lcom/android/server/pm/WatchedIntentFilter;II)Landroid/content/pm/ResolveInfo;+]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/pm/WatchedIntentFilter;Lcom/android/server/pm/CrossProfileIntentFilter;
 HSPLcom/android/server/pm/ComputerEngine;->enforceCrossUserOrProfilePermission(IIZZLjava/lang/String;)V+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;
 HSPLcom/android/server/pm/ComputerEngine;->enforceCrossUserPermission(IIZZLjava/lang/String;)V
 HSPLcom/android/server/pm/ComputerEngine;->enforceCrossUserPermission(IIZZZLjava/lang/String;)V+]Lcom/android/server/pm/PackageManagerServiceInjector;Lcom/android/server/pm/PackageManagerServiceInjector;
@@ -2436,7 +2523,6 @@
 HSPLcom/android/server/pm/ComputerEngine;->getApplicationInfo(Ljava/lang/String;JI)Landroid/content/pm/ApplicationInfo;
 HSPLcom/android/server/pm/ComputerEngine;->getApplicationInfoInternal(Ljava/lang/String;JII)Landroid/content/pm/ApplicationInfo;+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;
 HSPLcom/android/server/pm/ComputerEngine;->getApplicationInfoInternalBody(Ljava/lang/String;JII)Landroid/content/pm/ApplicationInfo;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;
-HPLcom/android/server/pm/ComputerEngine;->getBlockUninstallForUser(Ljava/lang/String;I)Z+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;
 HSPLcom/android/server/pm/ComputerEngine;->getComponentEnabledSetting(Landroid/content/ComponentName;II)I+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;
 HSPLcom/android/server/pm/ComputerEngine;->getComponentEnabledSettingInternal(Landroid/content/ComponentName;II)I+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;
 HSPLcom/android/server/pm/ComputerEngine;->getComponentResolver()Lcom/android/server/pm/resolution/ComponentResolverApi;
@@ -2463,7 +2549,7 @@
 HSPLcom/android/server/pm/ComputerEngine;->getPackageStateInternal(Ljava/lang/String;I)Lcom/android/server/pm/pkg/PackageStateInternal;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;
 HSPLcom/android/server/pm/ComputerEngine;->getPackageStates()Landroid/util/ArrayMap;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;
 HSPLcom/android/server/pm/ComputerEngine;->getPackageUid(Ljava/lang/String;JI)I+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;
-HSPLcom/android/server/pm/ComputerEngine;->getPackageUidInternal(Ljava/lang/String;JII)I+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;
+HSPLcom/android/server/pm/ComputerEngine;->getPackageUidInternal(Ljava/lang/String;JII)I+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;
 HSPLcom/android/server/pm/ComputerEngine;->getPackagesForUid(I)[Ljava/lang/String;
 HSPLcom/android/server/pm/ComputerEngine;->getPackagesForUidInternal(II)[Ljava/lang/String;+]Lcom/android/server/pm/ComputerEngine;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;
 HSPLcom/android/server/pm/ComputerEngine;->getPackagesForUidInternalBody(IIIZ)[Ljava/lang/String;+]Lcom/android/server/pm/ComputerEngine$Settings;Lcom/android/server/pm/ComputerEngine$Settings;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;
@@ -2481,6 +2567,7 @@
 HSPLcom/android/server/pm/ComputerEngine;->getVersion()I
 HSPLcom/android/server/pm/ComputerEngine;->hasCrossUserPermission(IIIZZ)Z
 HSPLcom/android/server/pm/ComputerEngine;->hasNonNegativePriority(Ljava/util/List;)Z+]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/pm/ComputerEngine;->hasSigningCertificate(Ljava/lang/String;[BI)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;
 HSPLcom/android/server/pm/ComputerEngine;->instantAppInstallerActivity()Landroid/content/pm/ActivityInfo;
 HSPLcom/android/server/pm/ComputerEngine;->isApexPackage(Ljava/lang/String;)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;
 HSPLcom/android/server/pm/ComputerEngine;->isCallerInstallerOfRecord(Lcom/android/server/pm/pkg/AndroidPackage;I)Z+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;
@@ -2527,7 +2614,6 @@
 HSPLcom/android/server/pm/CrossProfileIntentResolverEngine;->resolveIntent(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;IJLjava/lang/String;ZZLjava/util/function/Function;)Ljava/util/List;
 HSPLcom/android/server/pm/CrossProfileIntentResolverEngine;->resolveIntentInternal(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;IIJLjava/lang/String;ZZLjava/util/function/Function;Ljava/util/Set;)Ljava/util/List;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/CrossProfileResolver;Lcom/android/server/pm/DefaultCrossProfileResolver;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Set;Ljava/util/HashSet;
 HSPLcom/android/server/pm/CrossProfileIntentResolverEngine;->shouldSkipCurrentProfile(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;I)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/CrossProfileIntentFilter;Lcom/android/server/pm/CrossProfileIntentFilter;]Ljava/util/List;Ljava/util/ArrayList;
-HSPLcom/android/server/pm/DefaultCrossProfileResolver;->createForwardingResolveInfo(Lcom/android/server/pm/Computer;Lcom/android/server/pm/CrossProfileIntentFilter;Landroid/content/Intent;Ljava/lang/String;JILjava/util/function/Function;)Lcom/android/server/pm/CrossProfileDomainInfo;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/CrossProfileIntentFilter;Lcom/android/server/pm/CrossProfileIntentFilter;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolverSnapshot;]Lcom/android/server/pm/verify/domain/DomainVerificationManagerInternal;Lcom/android/server/pm/verify/domain/DomainVerificationService;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/function/Function;Lcom/android/server/pm/ComputerEngine$$ExternalSyntheticLambda0;
 HSPLcom/android/server/pm/GentleUpdateHelper;->onUidImportance(II)V+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;
 HSPLcom/android/server/pm/IPackageManagerBase;->checkUidPermission(Ljava/lang/String;I)I+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;
 HSPLcom/android/server/pm/IPackageManagerBase;->getApplicationInfo(Ljava/lang/String;JI)Landroid/content/pm/ApplicationInfo;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/IPackageManagerBase;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;
@@ -2574,14 +2660,19 @@
 HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->generateLauncherActivitiesForArchivedApp(Ljava/lang/String;Landroid/os/UserHandle;)Ljava/util/List;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/pm/pkg/ArchiveState;Lcom/android/server/pm/pkg/ArchiveState;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList;,Ljava/util/ImmutableCollections$List12;
 HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->getApplicationInfoForArchivedApp(Ljava/lang/String;Landroid/os/UserHandle;)Ljava/util/List;+]Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;
 HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->getLauncherActivities(Ljava/lang/String;Ljava/lang/String;Landroid/os/UserHandle;)Landroid/content/pm/ParceledListSlice;+]Landroid/app/admin/DevicePolicyManager;Landroid/app/admin/DevicePolicyManager;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/LauncherActivityInfoInternal;Landroid/content/pm/LauncherActivityInfoInternal;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/content/pm/ParceledListSlice;Landroid/content/pm/ParceledListSlice;]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserManager;Landroid/os/UserManager;]Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
+HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->getShortcuts(Ljava/lang/String;Landroid/content/pm/ShortcutQueryWrapper;Landroid/os/UserHandle;)Landroid/content/pm/ParceledListSlice;+]Landroid/content/pm/ShortcutServiceInternal;Lcom/android/server/pm/ShortcutService$LocalService;]Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;
 HSPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->injectBinderCallingPid()I
 HSPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->injectBinderCallingUid()I
+HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->injectRestoreCallingIdentity(J)V
+HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->isHiddenProfile(Landroid/os/UserHandle;)Z+]Landroid/os/UserManager;Landroid/os/UserManager;]Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;
+HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->lambda$getApplicationInfoForArchivedApp$2(Ljava/lang/String;ILandroid/os/UserHandle;)Landroid/content/pm/ApplicationInfo;+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;
 HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->queryActivitiesForUser(Ljava/lang/String;Landroid/content/Intent;Landroid/os/UserHandle;)Landroid/content/pm/ParceledListSlice;+]Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;Lcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;
-HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->queryIntentLauncherActivities(Landroid/content/Intent;ILandroid/os/UserHandle;)Ljava/util/List;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList;
+HPLcom/android/server/pm/LauncherAppsService$LauncherAppsImpl;->queryIntentLauncherActivities(Landroid/content/Intent;ILandroid/os/UserHandle;)Ljava/util/List;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList;
 HSPLcom/android/server/pm/PackageAbiHelper$NativeLibraryPaths;->applyTo(Lcom/android/internal/pm/parsing/pkg/ParsedPackage;)V
 HSPLcom/android/server/pm/PackageAbiHelperImpl;->deriveNativeLibraryPaths(Lcom/android/server/pm/PackageAbiHelper$Abis;Ljava/io/File;Ljava/lang/String;Ljava/lang/String;ZZ)Lcom/android/server/pm/PackageAbiHelper$NativeLibraryPaths;
 HSPLcom/android/server/pm/PackageArchiver;->isArchived(Lcom/android/server/pm/pkg/PackageUserState;)Z+]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;
 HPLcom/android/server/pm/PackageInstallerSession;->generateInfoInternal(ZZ)Landroid/content/pm/PackageInstaller$SessionInfo;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageInstaller$SessionParams;Landroid/content/pm/PackageInstaller$SessionParams;]Lcom/android/server/pm/PackageInstallerSession;Lcom/android/server/pm/PackageInstallerSession;]Ljava/io/File;Ljava/io/File;]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/pm/PackageInstallerSession;->write(Lcom/android/modules/utils/TypedXmlSerializer;Ljava/io/File;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/pm/PackageInstallerSession$PerFileChecksum;Lcom/android/server/pm/PackageInstallerSession$PerFileChecksum;]Lcom/android/server/pm/PackageInstallerSession;Lcom/android/server/pm/PackageInstallerSession;]Ljava/io/File;Ljava/io/File;
 HSPLcom/android/server/pm/PackageKeySetData;-><init>()V
 HSPLcom/android/server/pm/PackageKeySetData;-><init>(Lcom/android/server/pm/PackageKeySetData;)V
 HSPLcom/android/server/pm/PackageManagerInternalBase;->canQueryPackage(ILjava/lang/String;)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;
@@ -2590,12 +2681,14 @@
 HSPLcom/android/server/pm/PackageManagerInternalBase;->getApplicationInfo(Ljava/lang/String;JII)Landroid/content/pm/ApplicationInfo;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;
 HSPLcom/android/server/pm/PackageManagerInternalBase;->getInstantAppPackageName(I)Ljava/lang/String;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;
 HSPLcom/android/server/pm/PackageManagerInternalBase;->getPackage(I)Lcom/android/server/pm/pkg/AndroidPackage;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;
+HSPLcom/android/server/pm/PackageManagerInternalBase;->getPackage(Ljava/lang/String;)Lcom/android/server/pm/pkg/AndroidPackage;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;
 HSPLcom/android/server/pm/PackageManagerInternalBase;->getPackageStateInternal(Ljava/lang/String;)Lcom/android/server/pm/pkg/PackageStateInternal;+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;,Lcom/android/server/pm/ComputerLocked;
 HSPLcom/android/server/pm/PackageManagerInternalBase;->getPackageUid(Ljava/lang/String;JI)I+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;
 HSPLcom/android/server/pm/PackageManagerInternalBase;->getUidTargetSdkVersion(I)I+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;
 HSPLcom/android/server/pm/PackageManagerInternalBase;->grantImplicitAccess(ILandroid/content/Intent;IIZ)V
 HSPLcom/android/server/pm/PackageManagerInternalBase;->grantImplicitAccess(ILandroid/content/Intent;IIZZ)V+]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService;
-HSPLcom/android/server/pm/PackageManagerInternalBase;->isPackageEphemeral(ILjava/lang/String;)Z+]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;
+HSPLcom/android/server/pm/PackageManagerInternalBase;->isInstantApp(Ljava/lang/String;I)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;
+HSPLcom/android/server/pm/PackageManagerInternalBase;->isPackageEphemeral(ILjava/lang/String;)Z+]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;
 HSPLcom/android/server/pm/PackageManagerInternalBase;->isPackageFrozen(Ljava/lang/String;II)Z+]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService;
 HSPLcom/android/server/pm/PackageManagerInternalBase;->isPackageSuspended(Ljava/lang/String;I)Z+]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;
 HSPLcom/android/server/pm/PackageManagerInternalBase;->isPermissionsReviewRequired(Ljava/lang/String;I)Z+]Lcom/android/server/pm/PackageManagerInternalBase;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/pm/permission/PermissionManagerServiceInternal;Lcom/android/server/pm/permission/PermissionManagerService$PermissionManagerServiceInternalImpl;
@@ -2662,11 +2755,11 @@
 HSPLcom/android/server/pm/PackageSetting;->getCategoryOverride()I
 HSPLcom/android/server/pm/PackageSetting;->getCpuAbiOverride()Ljava/lang/String;
 HSPLcom/android/server/pm/PackageSetting;->getCurrentEnabledStateLPr(Ljava/lang/String;I)I+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserStateInternal;Lcom/android/server/pm/pkg/PackageUserStateImpl;]Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet;
+HSPLcom/android/server/pm/PackageSetting;->getEnabled(I)I+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateImpl;
 HSPLcom/android/server/pm/PackageSetting;->getInstallSource()Lcom/android/server/pm/InstallSource;
 HSPLcom/android/server/pm/PackageSetting;->getKeySetData()Lcom/android/server/pm/PackageKeySetData;
 HSPLcom/android/server/pm/PackageSetting;->getLastUpdateTime()J
-HSPLcom/android/server/pm/PackageSetting;->getLoadingCompletedTime()J
-HSPLcom/android/server/pm/PackageSetting;->getLoadingProgress()F
+HSPLcom/android/server/pm/PackageSetting;->getLegacyPermissionState()Lcom/android/server/pm/permission/LegacyPermissionState;
 HSPLcom/android/server/pm/PackageSetting;->getPackageName()Ljava/lang/String;
 HSPLcom/android/server/pm/PackageSetting;->getPkg()Lcom/android/internal/pm/parsing/pkg/AndroidPackageInternal;
 HSPLcom/android/server/pm/PackageSetting;->getPkgState()Lcom/android/server/pm/pkg/PackageStateUnserialized;
@@ -2674,10 +2767,13 @@
 HSPLcom/android/server/pm/PackageSetting;->getSeInfo()Ljava/lang/String;+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateUnserialized;Lcom/android/server/pm/pkg/PackageStateUnserialized;
 HSPLcom/android/server/pm/PackageSetting;->getSecondaryCpuAbi()Ljava/lang/String;
 HSPLcom/android/server/pm/PackageSetting;->getSharedLibraryDependencies()Ljava/util/List;+]Lcom/android/server/pm/pkg/PackageStateUnserialized;Lcom/android/server/pm/pkg/PackageStateUnserialized;
+HSPLcom/android/server/pm/PackageSetting;->getSignatures()Lcom/android/server/pm/PackageSignatures;
 HSPLcom/android/server/pm/PackageSetting;->getSigningDetails()Landroid/content/pm/SigningDetails;
 HSPLcom/android/server/pm/PackageSetting;->getStateForUser(Landroid/os/UserHandle;)Lcom/android/server/pm/pkg/PackageUserState;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;
 HSPLcom/android/server/pm/PackageSetting;->getTransientState()Lcom/android/server/pm/pkg/PackageStateUnserialized;
 HSPLcom/android/server/pm/PackageSetting;->getUserStates()Landroid/util/SparseArray;
+HSPLcom/android/server/pm/PackageSetting;->getUsesSdkLibraries()[Ljava/lang/String;
+HSPLcom/android/server/pm/PackageSetting;->getUsesSdkLibrariesVersionsMajor()[J
 HSPLcom/android/server/pm/PackageSetting;->getUsesStaticLibrariesVersions()[J
 HSPLcom/android/server/pm/PackageSetting;->getVolumeUuid()Ljava/lang/String;
 HSPLcom/android/server/pm/PackageSetting;->hasSharedUser()Z
@@ -2702,6 +2798,8 @@
 HSPLcom/android/server/pm/Policy;->getMatchedSeInfo(Lcom/android/server/pm/pkg/AndroidPackage;)Ljava/lang/String;+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/Map;Ljava/util/Collections$UnmodifiableMap;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet;
 HSPLcom/android/server/pm/PreferredActivityHelper;->replacePreferredActivity(Lcom/android/server/pm/Computer;Lcom/android/server/pm/WatchedIntentFilter;I[Landroid/content/ComponentName;Landroid/content/ComponentName;I)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService;]Lcom/android/server/pm/PreferredComponent;Lcom/android/server/pm/PreferredComponent;]Lcom/android/server/pm/WatchedIntentResolver;Lcom/android/server/pm/PreferredIntentResolver;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/pm/ProtectedPackages;->hasDeviceOwnerOrProfileOwner(ILjava/lang/String;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;
+HSPLcom/android/server/pm/ProtectedPackages;->isOwnerProtectedPackage(ILjava/lang/String;)Z
+HSPLcom/android/server/pm/ProtectedPackages;->isPackageProtectedForUser(ILjava/lang/String;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/Set;Landroid/util/ArraySet;
 HSPLcom/android/server/pm/ProtectedPackages;->isPackageStateProtected(ILjava/lang/String;)Z
 HSPLcom/android/server/pm/ProtectedPackages;->isProtectedPackage(ILjava/lang/String;)Z
 HSPLcom/android/server/pm/ReconcilePackageUtils;->reconcilePackages(Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Lcom/android/server/pm/SharedLibrariesImpl;Lcom/android/server/pm/KeySetManagerService;Lcom/android/server/pm/Settings;Lcom/android/server/SystemConfig;)Ljava/util/List;
@@ -2709,6 +2807,7 @@
 HSPLcom/android/server/pm/ReconciledPackage;->getCombinedAvailablePackages()Ljava/util/Map;
 HSPLcom/android/server/pm/ResilientAtomicFile;-><init>(Ljava/io/File;Ljava/io/File;Ljava/io/File;ILjava/lang/String;Lcom/android/server/pm/ResilientAtomicFile$ReadEventLogger;)V
 HSPLcom/android/server/pm/ResilientAtomicFile;->close()V
+HSPLcom/android/server/pm/ResilientAtomicFile;->finishWrite(Ljava/io/FileOutputStream;Z)V+]Landroid/os/ParcelFileDescriptor;Landroid/os/ParcelFileDescriptor;]Ljava/io/File;Ljava/io/File;]Ljava/io/FileInputStream;Ljava/io/FileInputStream;]Ljava/io/FileOutputStream;Ljava/io/FileOutputStream;
 HSPLcom/android/server/pm/ResilientAtomicFile;->startWrite()Ljava/io/FileOutputStream;+]Ljava/io/File;Ljava/io/File;
 HSPLcom/android/server/pm/ResolveIntentHelper;->chooseBestActivity(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JJLjava/util/List;IZ)Landroid/content/pm/ResolveInfo;+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;]Lcom/android/server/pm/UserNeedsBadgingCache;Lcom/android/server/pm/UserNeedsBadgingCache;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList;]Ljava/util/function/Supplier;Lcom/android/server/pm/PackageManagerService$$ExternalSyntheticLambda38;
 HSPLcom/android/server/pm/ResolveIntentHelper;->queryIntentReceiversInternal(Lcom/android/server/pm/Computer;Landroid/content/Intent;Ljava/lang/String;JII)Ljava/util/List;
@@ -2719,6 +2818,7 @@
 HSPLcom/android/server/pm/SELinuxMMAC;->getSeInfo(Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/pkg/AndroidPackage;ZI)Ljava/lang/String;+]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/pm/SaferIntentUtils$IntentArgs;-><init>(Landroid/content/Intent;Ljava/lang/String;ZZII)V
 HSPLcom/android/server/pm/SaferIntentUtils;->blockNullAction(Lcom/android/server/pm/SaferIntentUtils$IntentArgs;Ljava/util/List;)V+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ResolveInfo;Landroid/content/pm/ResolveInfo;]Lcom/android/internal/pm/pkg/component/ParsedMainComponent;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;,Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/SaferIntentUtils$IntentArgs;Lcom/android/server/pm/SaferIntentUtils$IntentArgs;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList;
+HSPLcom/android/server/pm/SaferIntentUtils;->enforceIntentFilterMatchingWithIntentMatchingFlags(Lcom/android/server/pm/SaferIntentUtils$IntentArgs;Ljava/util/List;)V+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ResolveInfo;Landroid/content/pm/ResolveInfo;]Lcom/android/internal/pm/pkg/component/ParsedIntentInfo;Lcom/android/internal/pm/pkg/component/ParsedIntentInfoImpl;]Lcom/android/internal/pm/pkg/component/ParsedMainComponent;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;,Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerEngine;]Lcom/android/server/pm/SaferIntentUtils$IntentArgs;Lcom/android/server/pm/SaferIntentUtils$IntentArgs;]Ljava/lang/ThreadLocal;Ljava/lang/ThreadLocal$SuppliedThreadLocal;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/pm/SaferIntentUtils;->filterNonExportedComponents(Lcom/android/server/pm/SaferIntentUtils$IntentArgs;Ljava/util/List;)V+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ResolveInfo;Landroid/content/pm/ResolveInfo;]Lcom/android/server/pm/SaferIntentUtils$IntentArgs;Lcom/android/server/pm/SaferIntentUtils$IntentArgs;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/pm/SaferIntentUtils;->infoToComponent(Landroid/content/pm/ComponentInfo;Lcom/android/server/pm/resolution/ComponentResolverApi;Z)Lcom/android/internal/pm/pkg/component/ParsedMainComponent;+]Landroid/content/pm/ComponentInfo;Landroid/content/pm/ActivityInfo;,Landroid/content/pm/ServiceInfo;]Lcom/android/server/pm/resolution/ComponentResolverApi;Lcom/android/server/pm/resolution/ComponentResolverSnapshot;
 HSPLcom/android/server/pm/ScanPackageUtils;->applyPolicy(Lcom/android/internal/pm/parsing/pkg/ParsedPackage;ILcom/android/server/pm/pkg/AndroidPackage;Z)V
@@ -2737,10 +2837,12 @@
 HSPLcom/android/server/pm/Settings$1;->onChange(Lcom/android/server/utils/Watchable;)V
 HSPLcom/android/server/pm/Settings$2;->createSnapshot()Lcom/android/server/pm/Settings;+]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/utils/WatchableImpl;
 HSPLcom/android/server/pm/Settings$RuntimePermissionPersistence;->getPackagePermissions(ILcom/android/server/utils/WatchedArrayMap;)Ljava/util/Map;+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/pm/Settings$RuntimePermissionPersistence;->readStateForUserSync(ILcom/android/server/pm/Settings$VersionInfo;Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;Ljava/io/File;)V
 HSPLcom/android/server/pm/Settings;-><init>(Lcom/android/server/pm/Settings;)V
 HSPLcom/android/server/pm/Settings;->dispatchChange(Lcom/android/server/utils/Watchable;)V+]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/utils/WatchableImpl;
 HSPLcom/android/server/pm/Settings;->getApplicationEnabledSettingLPr(Ljava/lang/String;I)I+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;
 HSPLcom/android/server/pm/Settings;->getComponentEnabledSettingLPr(Landroid/content/ComponentName;I)I+]Lcom/android/server/pm/PackageSetting;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;
+HSPLcom/android/server/pm/Settings;->getCrossProfileIntentResolver(I)Lcom/android/server/pm/CrossProfileIntentResolver;+]Lcom/android/server/utils/WatchedSparseArray;Lcom/android/server/utils/WatchedSparseArray;
 HSPLcom/android/server/pm/Settings;->getDisabledSystemPkgLPr(Ljava/lang/String;)Lcom/android/server/pm/PackageSetting;+]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;
 HSPLcom/android/server/pm/Settings;->getPackageLPr(Ljava/lang/String;)Lcom/android/server/pm/PackageSetting;+]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;
 HSPLcom/android/server/pm/Settings;->getRenamedPackageLPr(Ljava/lang/String;)Ljava/lang/String;+]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;
@@ -2768,8 +2870,6 @@
 HSPLcom/android/server/pm/SharedUserSetting;->getPackageStates()Landroid/util/ArraySet;+]Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet;
 HPLcom/android/server/pm/ShortcutPackage$$ExternalSyntheticLambda24;-><init>(Lcom/android/server/pm/ShortcutPackage;Ljava/util/List;Ljava/util/function/Predicate;ILjava/lang/String;Landroid/util/ArraySet;Z)V
 HPLcom/android/server/pm/ShortcutPackage$$ExternalSyntheticLambda24;->accept(Ljava/lang/Object;)V
-HPLcom/android/server/pm/ShortcutPackage$$ExternalSyntheticLambda31;->apply(Ljava/lang/Object;)Ljava/lang/Object;
-HPLcom/android/server/pm/ShortcutPackage;-><init>(Lcom/android/server/pm/ShortcutUser;ILjava/lang/String;Lcom/android/server/pm/ShortcutPackageInfo;)V
 HPLcom/android/server/pm/ShortcutPackage;->findAll(Ljava/util/List;Ljava/util/function/Predicate;ILjava/lang/String;IZ)V+]Lcom/android/server/pm/ShortcutLauncher;Lcom/android/server/pm/ShortcutLauncher;]Lcom/android/server/pm/ShortcutPackageInfo;Lcom/android/server/pm/ShortcutPackageInfo;]Lcom/android/server/pm/ShortcutPackageItem;Lcom/android/server/pm/ShortcutPackage;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService;
 HPLcom/android/server/pm/ShortcutPackage;->forEachShortcutStopWhen(Ljava/util/function/Function;)V+]Ljava/util/function/Function;Lcom/android/server/pm/ShortcutPackage$$ExternalSyntheticLambda23;,Lcom/android/server/pm/ShortcutPackage$$ExternalSyntheticLambda28;,Lcom/android/server/pm/ShortcutPackage$$ExternalSyntheticLambda31;,Lcom/android/server/pm/ShortcutPackage$$ExternalSyntheticLambda36;,Lcom/android/server/pm/ShortcutPackage$$ExternalSyntheticLambda3;
 HPLcom/android/server/pm/ShortcutPackage;->parseShortcut(Lcom/android/modules/utils/TypedXmlPullParser;Ljava/lang/String;IZ)Landroid/content/pm/ShortcutInfo;+]Lcom/android/modules/utils/TypedXmlPullParser;Lcom/android/internal/util/ArtBinaryXmlPullParser;
@@ -2779,14 +2879,15 @@
 HPLcom/android/server/pm/ShortcutPackageInfo;->saveToXml(Lcom/android/server/pm/ShortcutService;Lcom/android/modules/utils/TypedXmlSerializer;Z)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;,Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Base64$Encoder;Ljava/util/Base64$Encoder;
 HPLcom/android/server/pm/ShortcutPackageItem;->getResilientFile(Ljava/io/File;)Lcom/android/server/pm/ResilientAtomicFile;+]Ljava/io/File;Ljava/io/File;
 HPLcom/android/server/pm/ShortcutPackageItem;->saveShortcutPackageItem()V+]Lcom/android/server/pm/ShortcutPackageItem;Lcom/android/server/pm/ShortcutLauncher;,Lcom/android/server/pm/ShortcutPackage;]Ljava/io/File;Ljava/io/File;
-HPLcom/android/server/pm/ShortcutParser;->parseShortcutsOneFile(Lcom/android/server/pm/ShortcutService;Landroid/content/pm/ActivityInfo;Ljava/lang/String;ILjava/util/List;Ljava/util/List;)Ljava/util/List;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Landroid/content/res/XmlResourceParser;Landroid/content/res/XmlBlock$Parser;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService;]Ljava/util/List;Ljava/util/ArrayList;
+HPLcom/android/server/pm/ShortcutParser;->parseShortcutsOneFile(Lcom/android/server/pm/ShortcutService;Landroid/content/pm/ActivityInfo;Ljava/lang/String;ILjava/util/List;Ljava/util/List;)Ljava/util/List;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/res/XmlResourceParser;Landroid/content/res/XmlBlock$Parser;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/pm/ShortcutService$4;->onUidStateChanged(IIJI)V+]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService;
 HPLcom/android/server/pm/ShortcutService$LocalService$$ExternalSyntheticLambda3;-><init>(JLandroid/util/ArraySet;Landroid/util/ArraySet;Landroid/content/ComponentName;ZZZZZ)V
 HPLcom/android/server/pm/ShortcutService$LocalService$$ExternalSyntheticLambda3;->test(Ljava/lang/Object;)Z
-HPLcom/android/server/pm/ShortcutService$LocalService;->$r8$lambda$4oN-teeezN_bMPNKBELK1aAUWLM(JLandroid/util/ArraySet;Landroid/util/ArraySet;Landroid/content/ComponentName;ZZZZZLandroid/content/pm/ShortcutInfo;)Z
 HPLcom/android/server/pm/ShortcutService$LocalService;->getShortcuts(ILjava/lang/String;JLjava/lang/String;Ljava/util/List;Ljava/util/List;Landroid/content/ComponentName;IIII)Ljava/util/List;+]Lcom/android/server/pm/ShortcutPackageItem;Lcom/android/server/pm/ShortcutLauncher;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService;]Lcom/android/server/pm/ShortcutUser;Lcom/android/server/pm/ShortcutUser;
 HPLcom/android/server/pm/ShortcutService$LocalService;->getShortcutsInnerLocked(ILjava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/util/List;JLandroid/content/ComponentName;IILjava/util/ArrayList;III)V+]Lcom/android/server/pm/ShortcutPackage;Lcom/android/server/pm/ShortcutPackage;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService;]Lcom/android/server/pm/ShortcutUser;Lcom/android/server/pm/ShortcutUser;
 HPLcom/android/server/pm/ShortcutService;->getUserShortcutsLocked(I)Lcom/android/server/pm/ShortcutUser;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService;
+HSPLcom/android/server/pm/ShortcutService;->handleOnUidStateChanged(II)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService;
+HPLcom/android/server/pm/ShortcutService;->injectHasAccessShortcutsPermission(II)Z+]Landroid/content/Context;Landroid/app/ContextImpl;
 HPLcom/android/server/pm/ShortcutService;->injectPackageInfoWithUninstalled(Ljava/lang/String;IZ)Landroid/content/pm/PackageInfo;+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/pm/ShortcutService;Lcom/android/server/pm/ShortcutService;
 HSPLcom/android/server/pm/ShortcutService;->injectPostToHandler(Ljava/lang/Runnable;)V
 HPLcom/android/server/pm/ShortcutService;->isUserUnlockedL(I)Z+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;
@@ -2837,7 +2938,6 @@
 HSPLcom/android/server/pm/UserManagerService;->hasManageUsersPermission(I)Z
 HSPLcom/android/server/pm/UserManagerService;->hasQueryOrCreateUsersPermission()Z
 HSPLcom/android/server/pm/UserManagerService;->hasUserRestriction(Ljava/lang/String;I)Z+]Lcom/android/server/pm/UserManagerService$LocalService;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;
-HSPLcom/android/server/pm/UserManagerService;->isProfileOf(Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;)Z
 HSPLcom/android/server/pm/UserManagerService;->isSameProfileGroupNoChecks(II)Z
 HSPLcom/android/server/pm/UserManagerService;->isUserRunning(I)Z+]Lcom/android/server/pm/UserManagerService$LocalService;Lcom/android/server/pm/UserManagerService$LocalService;
 HPLcom/android/server/pm/UserManagerService;->packageToRestrictionsFileName(Ljava/lang/String;)Ljava/lang/String;
@@ -2853,7 +2953,6 @@
 HSPLcom/android/server/pm/UserVisibilityMediator;->isCurrentUserOrRunningProfileOfCurrentUser(I)Z+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;
 HSPLcom/android/server/pm/UserVisibilityMediator;->isUserVisible(I)Z
 HSPLcom/android/server/pm/WatchedIntentFilter;->getIntentFilter()Landroid/content/IntentFilter;
-HSPLcom/android/server/pm/dex/DexManager;->loadInternal(Ljava/util/Map;)V
 HSPLcom/android/server/pm/local/PackageManagerLocalImpl$BaseSnapshotImpl;-><init>(Lcom/android/server/pm/snapshot/PackageDataSnapshot;)V
 HSPLcom/android/server/pm/local/PackageManagerLocalImpl$BaseSnapshotImpl;-><init>(Lcom/android/server/pm/snapshot/PackageDataSnapshot;Lcom/android/server/pm/local/PackageManagerLocalImpl-IA;)V
 HSPLcom/android/server/pm/local/PackageManagerLocalImpl$BaseSnapshotImpl;->checkClosed()V
@@ -2875,8 +2974,8 @@
 HSPLcom/android/server/pm/local/PackageManagerLocalImpl;->withUnfilteredSnapshot()Lcom/android/server/pm/local/PackageManagerLocalImpl$UnfilteredSnapshotImpl;+]Lcom/android/server/pm/PackageManagerService;Lcom/android/server/pm/PackageManagerService;
 HSPLcom/android/server/pm/parsing/PackageCacher;->getCacheKey(Ljava/io/File;I)Ljava/lang/String;
 HSPLcom/android/server/pm/parsing/PackageCacher;->isCacheFileUpToDate(Ljava/io/File;Ljava/io/File;)Z
-HSPLcom/android/server/pm/parsing/PackageInfoUtils;->appInfoFlags(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/server/pm/pkg/PackageStateInternal;)I
-HSPLcom/android/server/pm/parsing/PackageInfoUtils;->appInfoPrivateFlags(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/server/pm/pkg/PackageStateInternal;)I
+HSPLcom/android/server/pm/parsing/PackageInfoUtils;->appInfoFlags(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/server/pm/pkg/PackageStateInternal;)I+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;
+HSPLcom/android/server/pm/parsing/PackageInfoUtils;->appInfoPrivateFlags(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/server/pm/pkg/PackageStateInternal;)I+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;
 HSPLcom/android/server/pm/parsing/PackageInfoUtils;->appInfoPrivateFlagsExt(ILcom/android/server/pm/pkg/PackageStateInternal;)I+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;
 HSPLcom/android/server/pm/parsing/PackageInfoUtils;->assignFieldsComponentInfoParsedMainComponent(Landroid/content/pm/ComponentInfo;Lcom/android/internal/pm/pkg/component/ParsedMainComponent;)V+]Lcom/android/internal/pm/pkg/component/ParsedMainComponent;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;,Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;,Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;
 HSPLcom/android/server/pm/parsing/PackageInfoUtils;->assignFieldsComponentInfoParsedMainComponent(Landroid/content/pm/ComponentInfo;Lcom/android/internal/pm/pkg/component/ParsedMainComponent;Lcom/android/server/pm/pkg/PackageStateInternal;I)V
@@ -2887,7 +2986,7 @@
 HSPLcom/android/server/pm/parsing/PackageInfoUtils;->generatePermissionInfo(Lcom/android/internal/pm/pkg/component/ParsedPermission;J)Landroid/content/pm/PermissionInfo;+]Lcom/android/internal/pm/pkg/component/ParsedPermission;Lcom/android/internal/pm/pkg/component/ParsedPermissionImpl;
 HSPLcom/android/server/pm/parsing/PackageInfoUtils;->generateProviderInfo(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/pkg/component/ParsedProvider;JLcom/android/server/pm/pkg/PackageUserStateInternal;Landroid/content/pm/ApplicationInfo;ILcom/android/server/pm/pkg/PackageStateInternal;)Landroid/content/pm/ProviderInfo;+]Lcom/android/internal/pm/pkg/component/ParsedProvider;Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList;
 HSPLcom/android/server/pm/parsing/PackageInfoUtils;->generateServiceInfo(Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/pkg/component/ParsedService;JLcom/android/server/pm/pkg/PackageUserStateInternal;Landroid/content/pm/ApplicationInfo;ILcom/android/server/pm/pkg/PackageStateInternal;)Landroid/content/pm/ServiceInfo;+]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;
-HSPLcom/android/server/pm/parsing/PackageInfoUtils;->generateWithComponents(Lcom/android/server/pm/pkg/AndroidPackage;[IJJJLjava/util/Set;Ljava/util/Set;Lcom/android/server/pm/pkg/PackageUserStateInternal;ILcom/android/server/pm/pkg/PackageStateInternal;)Landroid/content/pm/PackageInfo;+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/internal/pm/pkg/component/ParsedAttribution;Lcom/android/internal/pm/pkg/component/ParsedAttributionImpl;]Lcom/android/internal/pm/pkg/component/ParsedPermission;Lcom/android/internal/pm/pkg/component/ParsedPermissionImpl;]Lcom/android/internal/pm/pkg/component/ParsedProvider;Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/internal/pm/pkg/component/ParsedUsesPermission;Lcom/android/internal/pm/pkg/component/ParsedUsesPermissionImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;]Ljava/util/Set;Landroid/util/ArraySet;,Lcom/android/server/permission/jarjar/kotlin/collections/EmptySet;,Ljava/util/Collections$UnmodifiableSet;
+HSPLcom/android/server/pm/parsing/PackageInfoUtils;->generateWithComponents(Lcom/android/server/pm/pkg/AndroidPackage;[IJJJLjava/util/Set;Ljava/util/Set;Lcom/android/server/pm/pkg/PackageUserStateInternal;ILcom/android/server/pm/pkg/PackageStateInternal;)Landroid/content/pm/PackageInfo;+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/internal/pm/pkg/component/ParsedAttribution;Lcom/android/internal/pm/pkg/component/ParsedAttributionImpl;]Lcom/android/internal/pm/pkg/component/ParsedPermission;Lcom/android/internal/pm/pkg/component/ParsedPermissionImpl;]Lcom/android/internal/pm/pkg/component/ParsedProvider;Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;]Lcom/android/internal/pm/pkg/component/ParsedService;Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;]Lcom/android/internal/pm/pkg/component/ParsedUsesPermission;Lcom/android/internal/pm/pkg/component/ParsedUsesPermissionImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/ArchiveState;Lcom/android/server/pm/pkg/ArchiveState;]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;]Ljava/util/Set;Landroid/util/ArraySet;,Lcom/android/server/permission/jarjar/kotlin/collections/EmptySet;,Ljava/util/Collections$UnmodifiableSet;
 HSPLcom/android/server/pm/parsing/PackageInfoUtils;->getDataDir(Lcom/android/server/pm/pkg/PackageStateInternal;I)Ljava/io/File;+]Lcom/android/server/pm/pkg/PackageState;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;
 HSPLcom/android/server/pm/parsing/PackageInfoUtils;->getDeprecatedSignatures(Landroid/content/pm/SigningDetails;J)[Landroid/content/pm/Signature;
 HSPLcom/android/server/pm/parsing/PackageInfoUtils;->initForUser(Landroid/content/pm/ApplicationInfo;Lcom/android/server/pm/pkg/AndroidPackage;ILcom/android/server/pm/pkg/PackageUserStateInternal;)V+]Lcom/android/internal/pm/parsing/pkg/PackageImpl;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;
@@ -2900,6 +2999,7 @@
 HSPLcom/android/server/pm/permission/LegacyPermission;->write(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;
 HSPLcom/android/server/pm/permission/LegacyPermissionManagerService;->checkDeviceIdentifierAccess(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;II)I+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/app/admin/DevicePolicyManager;Landroid/app/admin/DevicePolicyManager;]Lcom/android/server/pm/permission/LegacyPermissionManagerService$Injector;Lcom/android/server/pm/permission/LegacyPermissionManagerService$Injector;
 HSPLcom/android/server/pm/permission/LegacyPermissionManagerService;->verifyCallerCanCheckAccess(Ljava/lang/String;Ljava/lang/String;II)V+]Lcom/android/server/pm/permission/LegacyPermissionManagerService$Injector;Lcom/android/server/pm/permission/LegacyPermissionManagerService$Injector;
+HSPLcom/android/server/pm/permission/LegacyPermissionSettings;->replacePermissions(Ljava/util/List;)V+]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/pm/permission/LegacyPermissionState;-><init>()V
 HSPLcom/android/server/pm/permission/LegacyPermissionState;->copyFrom(Lcom/android/server/pm/permission/LegacyPermissionState;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;
 HSPLcom/android/server/pm/permission/PermissionManagerService$AttributionSourceRegistry;->isRegisteredAttributionSource(Landroid/content/AttributionSource;)Z+]Ljava/util/WeakHashMap;Ljava/util/WeakHashMap;
@@ -2923,6 +3023,7 @@
 HSPLcom/android/server/pm/permission/PermissionManagerService;->getPermissionInfo(Ljava/lang/String;Ljava/lang/String;I)Landroid/content/pm/PermissionInfo;+]Lcom/android/server/pm/permission/PermissionManagerServiceInterface;Lcom/android/server/permission/access/permission/PermissionService;
 HSPLcom/android/server/pm/permission/PermissionManagerService;->getPersistentDeviceId(I)Ljava/lang/String;+]Lcom/android/server/companion/virtual/VirtualDeviceManagerInternal;Lcom/android/server/companion/virtual/VirtualDeviceManagerService$LocalService;
 HSPLcom/android/server/pm/permission/PermissionManagerService;->isRegisteredAttributionSource(Landroid/content/AttributionSourceState;)Z
+HSPLcom/android/server/pm/permission/PermissionManagerService;->updatePermissionFlags(Ljava/lang/String;Ljava/lang/String;IIZLjava/lang/String;I)V+]Lcom/android/server/pm/permission/PermissionManagerServiceInterface;Lcom/android/server/permission/access/permission/PermissionService;
 HSPLcom/android/server/pm/pkg/PackageStateInternal;->getUserStateOrDefault(I)Lcom/android/server/pm/pkg/PackageUserState;+]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;
 HSPLcom/android/server/pm/pkg/PackageStateInternal;->getUserStateOrDefault(I)Lcom/android/server/pm/pkg/PackageUserStateInternal;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;
 HSPLcom/android/server/pm/pkg/PackageStateUnserialized;->getApexModuleName()Ljava/lang/String;
@@ -2960,7 +3061,6 @@
 HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->isSuspended()Z
 HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->isVirtualPreload()Z
 HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->onChanged()V+]Lcom/android/server/utils/Watchable;Lcom/android/server/pm/PackageSetting;]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/pm/pkg/PackageUserStateImpl;
-HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->setBoolean(IZ)V
 HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->setDisabledComponents(Landroid/util/ArraySet;)Lcom/android/server/pm/pkg/PackageUserStateImpl;
 HSPLcom/android/server/pm/pkg/PackageUserStateImpl;->setEnabledComponents(Landroid/util/ArraySet;)Lcom/android/server/pm/pkg/PackageUserStateImpl;
 HSPLcom/android/server/pm/pkg/PackageUserStateUtils;->isAvailable(Lcom/android/server/pm/pkg/PackageUserState;J)Z+]Lcom/android/server/pm/pkg/PackageUserState;Lcom/android/server/pm/pkg/PackageUserStateDefault;,Lcom/android/server/pm/pkg/PackageUserStateImpl;
@@ -3004,8 +3104,6 @@
 HSPLcom/android/server/pm/resolution/ComponentResolver;->addActivitiesLocked(Lcom/android/server/pm/Computer;Lcom/android/server/pm/pkg/AndroidPackage;Ljava/util/List;Z)V+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;
 HSPLcom/android/server/pm/resolution/ComponentResolver;->addAllComponents(Lcom/android/server/pm/pkg/AndroidPackage;ZLjava/lang/String;Lcom/android/server/pm/Computer;)V+]Lcom/android/internal/pm/pkg/component/ParsedActivity;Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;]Lcom/android/server/pm/Computer;Lcom/android/server/pm/ComputerLocked;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Lcom/android/server/pm/pkg/PackageStateInternal;Lcom/android/server/pm/PackageSetting;
 HSPLcom/android/server/pm/resolution/ComponentResolver;->addProvidersLocked(Lcom/android/server/pm/Computer;Lcom/android/server/pm/pkg/AndroidPackage;Z)V+]Lcom/android/internal/pm/pkg/component/ParsedProvider;Lcom/android/internal/pm/pkg/component/ParsedProviderImpl;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;
-HSPLcom/android/server/pm/resolution/ComponentResolver;->addReceiversLocked(Lcom/android/server/pm/Computer;Lcom/android/server/pm/pkg/AndroidPackage;Z)V+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;
-HSPLcom/android/server/pm/resolution/ComponentResolver;->addServicesLocked(Lcom/android/server/pm/Computer;Lcom/android/server/pm/pkg/AndroidPackage;Z)V+]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;
 HSPLcom/android/server/pm/resolution/ComponentResolver;->snapshot()Lcom/android/server/pm/resolution/ComponentResolverApi;
 HSPLcom/android/server/pm/resolution/ComponentResolverBase;->getActivity(Landroid/content/ComponentName;)Lcom/android/internal/pm/pkg/component/ParsedActivity;
 HSPLcom/android/server/pm/resolution/ComponentResolverBase;->getReceiver(Landroid/content/ComponentName;)Lcom/android/internal/pm/pkg/component/ParsedActivity;
@@ -3031,7 +3129,7 @@
 HSPLcom/android/server/policy/AppOpsPolicy;->finishOperation(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;ILcom/android/internal/util/function/HexConsumer;)V+]Lcom/android/internal/util/function/HexConsumer;Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda11;
 HSPLcom/android/server/policy/AppOpsPolicy;->noteOperation(IILjava/lang/String;Ljava/lang/String;IZLjava/lang/String;ZILcom/android/internal/util/function/NonaFunction;)Landroid/app/SyncNotedAppOp;+]Lcom/android/internal/util/function/NonaFunction;Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda5;
 HSPLcom/android/server/policy/AppOpsPolicy;->resolveDatasourceOp(IILjava/lang/String;Ljava/lang/String;)I
-HSPLcom/android/server/policy/AppOpsPolicy;->resolveRecordAudioOp(II)I+]Landroid/service/voice/VoiceInteractionManagerInternal$HotwordDetectionServiceIdentity;Landroid/service/voice/VoiceInteractionManagerInternal$HotwordDetectionServiceIdentity;]Landroid/service/voice/VoiceInteractionManagerInternal;Lcom/android/server/voiceinteraction/VoiceInteractionManagerService$LocalService;
+HSPLcom/android/server/policy/AppOpsPolicy;->resolveRecordAudioOp(II)I
 HSPLcom/android/server/policy/AppOpsPolicy;->resolveSandboxedServiceOp(II)I
 HSPLcom/android/server/policy/AppOpsPolicy;->resolveUid(II)I+]Landroid/service/voice/VoiceInteractionManagerInternal$HotwordDetectionServiceIdentity;Landroid/service/voice/VoiceInteractionManagerInternal$HotwordDetectionServiceIdentity;]Landroid/service/voice/VoiceInteractionManagerInternal;Lcom/android/server/voiceinteraction/VoiceInteractionManagerService$LocalService;
 HSPLcom/android/server/policy/AppOpsPolicy;->startOperation(Landroid/os/IBinder;IILjava/lang/String;Ljava/lang/String;IZZLjava/lang/String;ZIILcom/android/internal/util/function/DodecFunction;)Landroid/app/SyncNotedAppOp;+]Lcom/android/internal/util/function/DodecFunction;Lcom/android/server/appop/AppOpsService$CheckOpsDelegateDispatcher$$ExternalSyntheticLambda7;
@@ -3047,7 +3145,6 @@
 HSPLcom/android/server/policy/PhoneWindowManager;->updateLockScreenTimeout()V+]Lcom/android/server/policy/keyguard/KeyguardServiceDelegate;Lcom/android/server/policy/keyguard/KeyguardServiceDelegate;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Ljava/util/HashSet;Ljava/util/HashSet;
 HSPLcom/android/server/policy/WindowManagerPolicy;->getWindowLayerFromTypeLw(I)I+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;
 HSPLcom/android/server/policy/WindowManagerPolicy;->getWindowLayerFromTypeLw(IZ)I+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;
-HSPLcom/android/server/policy/WindowManagerPolicy;->getWindowLayerFromTypeLw(IZZ)I+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;
 HSPLcom/android/server/policy/WindowManagerPolicy;->getWindowLayerLw(Lcom/android/server/policy/WindowManagerPolicy$WindowState;)I+]Lcom/android/server/policy/WindowManagerPolicy$WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;
 HPLcom/android/server/policy/keyguard/KeyguardServiceDelegate;->isInputRestricted()Z+]Lcom/android/server/policy/keyguard/KeyguardServiceWrapper;Lcom/android/server/policy/keyguard/KeyguardServiceWrapper;
 HSPLcom/android/server/policy/keyguard/KeyguardServiceDelegate;->isOccluded()Z
@@ -3058,6 +3155,8 @@
 HSPLcom/android/server/policy/role/RoleServicePlatformHelperImpl;->$r8$lambda$iHIoFGt-sugSqlklSHHOwdIQL9Y(Ljava/io/DataOutputStream;Landroid/content/pm/PackageManagerInternal;ILcom/android/server/pm/pkg/AndroidPackage;)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/content/pm/Signature;Landroid/content/pm/Signature;]Lcom/android/server/pm/pkg/AndroidPackage;Lcom/android/internal/pm/parsing/pkg/PackageImpl;]Ljava/io/DataOutputStream;Ljava/io/DataOutputStream;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet;
 HSPLcom/android/server/power/AttentionDetector;->updateUserActivity(JJ)J+]Landroid/attention/AttentionManagerInternal;Lcom/android/server/attention/AttentionManagerService$LocalService;]Lcom/android/server/power/AttentionDetector;Lcom/android/server/power/AttentionDetector;]Lcom/android/server/wm/WindowManagerInternal;Lcom/android/server/wm/WindowManagerService$LocalService;
 HSPLcom/android/server/power/FaceDownDetector;->onSensorChanged(Landroid/hardware/SensorEvent;)V
+HSPLcom/android/server/power/FrameworkStatsLogger;->wakelockStateChanged(ILjava/lang/String;ILcom/android/server/power/FrameworkStatsLogger$WakelockEventType;)V
+HSPLcom/android/server/power/FrameworkStatsLogger;->wakelockStateChanged(Ljava/lang/String;Landroid/os/WorkSource$WorkChain;ILcom/android/server/power/FrameworkStatsLogger$WakelockEventType;)V
 HSPLcom/android/server/power/InattentiveSleepWarningController;->isShown()Z
 HSPLcom/android/server/power/Notifier$$ExternalSyntheticLambda2;-><init>(Lcom/android/server/power/Notifier;ZLjava/lang/String;IIILandroid/os/WorkSource;Ljava/lang/String;Ljava/lang/String;JLandroid/os/IWakeLockCallback;)V
 HSPLcom/android/server/power/Notifier$$ExternalSyntheticLambda2;->run()V
@@ -3066,7 +3165,7 @@
 HSPLcom/android/server/power/Notifier$NotifierHandler;->handleMessage(Landroid/os/Message;)V
 HSPLcom/android/server/power/Notifier$RealInjector;->currentTimeMillis()J
 HSPLcom/android/server/power/Notifier;->getBatteryStatsWakeLockMonitorType(I)I
-HSPLcom/android/server/power/Notifier;->lambda$notifyWakeLockListener$9(ZLjava/lang/String;IIILandroid/os/WorkSource;Ljava/lang/String;Ljava/lang/String;JLandroid/os/IWakeLockCallback;)V+]Landroid/os/IWakeLockCallback;Landroid/os/IWakeLockCallback$Stub$Proxy;]Lcom/android/server/power/feature/PowerManagerFlags;Lcom/android/server/power/feature/PowerManagerFlags;
+HSPLcom/android/server/power/Notifier;->lambda$notifyWakeLockListener$9(ZLjava/lang/String;IIILandroid/os/WorkSource;Ljava/lang/String;Ljava/lang/String;JLandroid/os/IWakeLockCallback;)V+]Lcom/android/server/power/feature/PowerManagerFlags;Lcom/android/server/power/feature/PowerManagerFlags;
 HSPLcom/android/server/power/Notifier;->logWakelockStateChanged(ILjava/lang/String;ILandroid/os/WorkSource;Lcom/android/server/power/FrameworkStatsLogger$WakelockEventType;)V+]Landroid/os/BatteryStatsInternal;Lcom/android/server/am/BatteryStatsService$LocalService;]Landroid/os/WorkSource;Landroid/os/WorkSource;]Lcom/android/server/power/FrameworkStatsLogger;Lcom/android/server/power/FrameworkStatsLogger;]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/power/Notifier;->notifyWakeLockListener(Landroid/os/IWakeLockCallback;Ljava/lang/String;ZIIILandroid/os/WorkSource;Ljava/lang/String;Ljava/lang/String;)V+]Lcom/android/server/power/Notifier$Injector;Lcom/android/server/power/Notifier$RealInjector;
 HSPLcom/android/server/power/Notifier;->notifyWakelockAcquisition(Ljava/lang/String;IIILandroid/os/WorkSource;Ljava/lang/String;Ljava/lang/String;J)V+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Lcom/android/internal/app/IBatteryStats;Lcom/android/server/am/BatteryStatsService;
@@ -3095,7 +3194,7 @@
 HSPLcom/android/server/power/PowerGroup;->supportsSandmanLocked()Z
 HSPLcom/android/server/power/PowerGroup;->updateLocked(FLjava/lang/CharSequence;ZZIIFZZLandroid/os/PowerSaveState;ZZZZZZ)Z+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Lcom/android/server/power/Notifier;Lcom/android/server/power/Notifier;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;
 HSPLcom/android/server/power/PowerGroup;->updateScreenPolicyLocked(ZZZZZ)V+]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;]Lcom/android/server/power/feature/PowerManagerFlags;Lcom/android/server/power/feature/PowerManagerFlags;
-HSPLcom/android/server/power/PowerManagerService$BinderService;->acquireWakeLock(Landroid/os/IBinder;ILjava/lang/String;Ljava/lang/String;Landroid/os/WorkSource;Ljava/lang/String;ILandroid/os/IWakeLockCallback;)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/os/WorkSource;Landroid/os/WorkSource;]Lcom/android/server/power/feature/PowerManagerFlags;Lcom/android/server/power/feature/PowerManagerFlags;
+HSPLcom/android/server/power/PowerManagerService$BinderService;->acquireWakeLock(Landroid/os/IBinder;ILjava/lang/String;Ljava/lang/String;Landroid/os/WorkSource;Ljava/lang/String;ILandroid/os/IWakeLockCallback;)V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/os/WorkSource;Landroid/os/WorkSource;
 HSPLcom/android/server/power/PowerManagerService$BinderService;->isDeviceIdleMode()Z
 HSPLcom/android/server/power/PowerManagerService$BinderService;->isDisplayInteractive(I)Z
 HSPLcom/android/server/power/PowerManagerService$BinderService;->isLightDeviceIdleMode()Z
@@ -3134,6 +3233,7 @@
 HPLcom/android/server/power/PowerManagerService;->isBeingKeptAwakeLocked(Lcom/android/server/power/PowerGroup;)Z+]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;
 HSPLcom/android/server/power/PowerManagerService;->isDeviceIdleModeInternal()Z
 HSPLcom/android/server/power/PowerManagerService;->isInteractiveInternal(II)Z+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;
+HSPLcom/android/server/power/PowerManagerService;->isItBedTimeYetLocked(Lcom/android/server/power/PowerGroup;)Z+]Lcom/android/server/power/PowerManagerService$Clock;Lcom/android/server/power/PowerManagerService$Injector$2;
 HSPLcom/android/server/power/PowerManagerService;->isMaximumScreenOffTimeoutFromDeviceAdminEnforcedLocked()Z
 HSPLcom/android/server/power/PowerManagerService;->maybeHideInattentiveSleepWarningLocked(JJ)Z+]Lcom/android/server/power/InattentiveSleepWarningController;Lcom/android/server/power/InattentiveSleepWarningController;
 HSPLcom/android/server/power/PowerManagerService;->needSuspendBlockerLocked()Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/PowerGroup;Lcom/android/server/power/PowerGroup;
@@ -3198,6 +3298,7 @@
 HSPLcom/android/server/power/feature/PowerManagerFlags;->improveWakelockLatency()Z
 HSPLcom/android/server/power/feature/PowerManagerFlags;->isFrameworkWakelockInfoEnabled()Z
 HSPLcom/android/server/power/feature/PowerManagerFlags;->isPolicyReasonInDisplayPowerRequestEnabled()Z
+HSPLcom/android/server/power/feature/PowerManagerFlags;->isScreenTimeoutPolicyListenerApiEnabled()Z
 HSPLcom/android/server/power/hint/HintManagerService$AppHintSession;-><init>(Lcom/android/server/power/hint/HintManagerService;III[ILandroid/os/IBinder;JJLjava/lang/Integer;)V+]Landroid/os/IBinder;Landroid/os/BinderProxy;
 HPLcom/android/server/power/hint/HintManagerService$AppHintSession;->close()V+]Landroid/os/IBinder;Landroid/os/BinderProxy;]Lcom/android/server/power/hint/HintManagerService$AppHintSessionSnapshot;Lcom/android/server/power/hint/HintManagerService$AppHintSessionSnapshot;]Lcom/android/server/power/hint/HintManagerService$NativeWrapper;Lcom/android/server/power/hint/HintManagerService$NativeWrapper;]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/Set;Landroid/util/ArraySet;
 HSPLcom/android/server/power/hint/HintManagerService$BinderService;->createHintSessionWithConfig(Landroid/os/IBinder;ILandroid/os/SessionCreationConfig;Landroid/hardware/power/SessionConfig;)Landroid/os/IHintManager$SessionCreationReturn;+]Lcom/android/server/power/hint/HintManagerService$AppHintSessionSnapshot;Lcom/android/server/power/hint/HintManagerService$AppHintSessionSnapshot;]Lcom/android/server/power/hint/HintManagerService$NativeWrapper;Lcom/android/server/power/hint/HintManagerService$NativeWrapper;]Ljava/util/Map;Ljava/util/HashMap;]Ljava/util/Set;Landroid/util/ArraySet;
@@ -3216,16 +3317,17 @@
 HSPLcom/android/server/power/stats/BatteryStatsImpl$4;->retrieveUidWakelockDuration(Lcom/android/server/power/stats/WakelockPowerStatsCollector$WakelockDurationRetriever$Callback;)V+]Landroid/os/BatteryStats$Timer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;]Landroid/os/BatteryStats$Uid$Wakelock;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Wakelock;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/WakelockPowerStatsCollector$WakelockDurationRetriever$Callback;Lcom/android/server/power/stats/WakelockPowerStatsCollector$$ExternalSyntheticLambda0;
 HPLcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;->addCpuClusterSpeedDurationsMs(Lcom/android/server/power/stats/BatteryStatsImpl$Uid;IIJ)V+]Lcom/android/server/power/stats/CpuPowerCalculator;Lcom/android/server/power/stats/CpuPowerCalculator;
 HPLcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;->getOrCreateUidCpuClusterCharges(Lcom/android/server/power/stats/BatteryStatsImpl$Uid;)[D
+HSPLcom/android/server/power/stats/BatteryStatsImpl$DualTimer;-><init>(Lcom/android/internal/os/Clock;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;ILjava/util/ArrayList;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;)V
 HSPLcom/android/server/power/stats/BatteryStatsImpl$DualTimer;->startRunningLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$DualTimer;->stopRunningLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;->getCurrentDurationMsLocked(J)J+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;->getMaxDurationMsLocked(J)J+]Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;->getTotalDurationMsLocked(J)J+]Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;
+HSPLcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;->readSummaryFromParcelLocked(Landroid/os/Parcel;)V
 HSPLcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;->startRunningLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;->stopRunningLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;->writeSummaryFromParcelLocked(Landroid/os/Parcel;J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$DurationTimer;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;->uidProcessStateChanged(II)V
-HSPLcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;->addCountLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;->addCountLocked(JZ)V
 HSPLcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;->writeSummaryFromParcelLocked(Landroid/os/Parcel;)V
 HPLcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounterArray;->addCountLocked([JZ)V
@@ -3251,7 +3353,7 @@
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Timer;->writeSummaryFromParcelLocked(Landroid/os/Parcel;J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;megamorphic_types
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;->startLaunchedLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;->startRunningLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
-HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;->stopLaunchedLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
+HPLcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;->stopLaunchedLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
 HPLcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;->stopRunningLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid$Wakelock;->getWakeTime(I)Landroid/os/BatteryStats$Timer;+]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Wakelock;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Wakelock;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid$Wakelock;->getWakeTime(I)Lcom/android/server/power/stats/BatteryStatsImpl$Timer;
@@ -3263,15 +3365,18 @@
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getOrCreateEnergyConsumerStatsIfSupportedLocked()Lcom/android/internal/power/EnergyConsumerStats;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getPackageStatsLocked(Ljava/lang/String;)Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getPidStatsLocked(I)Landroid/os/BatteryStats$Uid$Pid;+]Landroid/util/SparseArray;Landroid/util/SparseArray;
+HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getProcessStateTime(IJI)J+]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getProcessStatsLocked(Ljava/lang/String;)Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Proc;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getSensorTimerLocked(IZ)Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;+]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getServiceStatsLocked(Ljava/lang/String;Ljava/lang/String;)Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;+]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getWakelockTimerLocked(Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Wakelock;I)Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getWifiBatchedScanTime(IJI)J
+HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->getWifiControllerActivity()Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->maybeScheduleExternalStatsSync(II)V+]Lcom/android/server/power/stats/BatteryStatsImpl$ExternalStatsSync;Lcom/android/server/power/stats/BatteryExternalStatsWorker;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->noteStartWakeLocked(ILjava/lang/String;IJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$1;]Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;
-HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->noteStopJobLocked(Ljava/lang/String;JI)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$3;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;
+HPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->noteStopJobLocked(Ljava/lang/String;JI)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$3;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->noteStopWakeLocked(ILjava/lang/String;IJ)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$1;]Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;
+HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->reset(JJI)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/BatteryStatsImpl$BatchTimer;Lcom/android/server/power/stats/BatteryStatsImpl$BatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$1;,Lcom/android/server/power/stats/BatteryStatsImpl$Uid$2;,Lcom/android/server/power/stats/BatteryStatsImpl$Uid$3;]Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;Lcom/android/server/power/stats/BatteryStatsImpl$BatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Proc;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Proc;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Sensor;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Sensor;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Wakelock;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Wakelock;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->updateOnBatteryBgTimeBase(JJ)Z+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->updateOnBatteryScreenOffBgTimeBase(JJ)Z+]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;
 HSPLcom/android/server/power/stats/BatteryStatsImpl$Uid;->updateUidProcessStateLocked(IJJ)V+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/internal/power/EnergyConsumerStats;Lcom/android/internal/power/EnergyConsumerStats;]Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;
@@ -3281,26 +3386,27 @@
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->getRpmTimerLocked(Ljava/lang/String;)Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;+]Ljava/util/HashMap;Ljava/util/HashMap;
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->getServiceStatsLocked(ILjava/lang/String;Ljava/lang/String;JJ)Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;+]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->getUidStatsLocked(IJJ)Lcom/android/server/power/stats/BatteryStatsImpl$Uid;+]Landroid/util/SparseArray;Landroid/util/SparseArray;
+HPLcom/android/server/power/stats/BatteryStatsImpl;->lambda$readKernelUidCpuFreqTimesLocked$4(JJZZZII[ILcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;I[J)V+]Lcom/android/internal/os/CpuScalingPolicies;Lcom/android/internal/os/CpuScalingPolicies;]Lcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;Lcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounterArray;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounterArray;]Lcom/android/server/power/stats/BatteryStatsImpl$UserInfoProvider;Lcom/android/server/am/BatteryStatsService$3;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->mapUid(I)I+]Lcom/android/server/power/stats/PowerStatsUidResolver;Lcom/android/server/power/stats/PowerStatsUidResolver;
 HPLcom/android/server/power/stats/BatteryStatsImpl;->noteChangeWakelockFromSourceLocked(Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;ILandroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IZJJ)V+]Landroid/os/WorkSource;Landroid/os/WorkSource;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Ljava/util/List;Ljava/util/ArrayList;
-HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteJobFinishLocked(Ljava/lang/String;IIJJ)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
-HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteJobStartLocked(Ljava/lang/String;IJJ)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
+HPLcom/android/server/power/stats/BatteryStatsImpl;->noteJobFinishLocked(Ljava/lang/String;IIJJ)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
+HPLcom/android/server/power/stats/BatteryStatsImpl;->noteJobStartLocked(Ljava/lang/String;IJJ)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteStartWakeFromSourceLocked(Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IZJJ)V+]Landroid/os/WorkSource;Landroid/os/WorkSource;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteStartWakeLocked(IILandroid/os/WorkSource$WorkChain;Ljava/lang/String;Ljava/lang/String;IZJJ)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/feature/PowerManagerFlags;Lcom/android/server/power/feature/PowerManagerFlags;]Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Lcom/android/server/power/stats/PowerStatsUidResolver;Lcom/android/server/power/stats/PowerStatsUidResolver;
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteStopWakeFromSourceLocked(Landroid/os/WorkSource;ILjava/lang/String;Ljava/lang/String;IJJ)V+]Landroid/os/WorkSource;Landroid/os/WorkSource;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteStopWakeLocked(IILandroid/os/WorkSource$WorkChain;Ljava/lang/String;Ljava/lang/String;IJJ)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/feature/PowerManagerFlags;Lcom/android/server/power/feature/PowerManagerFlags;]Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->noteUidProcessStateLocked(IIJJ)V+]Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
-HPLcom/android/server/power/stats/BatteryStatsImpl;->noteWakeupReasonLocked(Ljava/lang/String;JJ)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;]Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->readSummaryFromParcel(Landroid/os/Parcel;)V
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->recordPowerStats(Lcom/android/internal/os/PowerStats;)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->reportChangesToStatsLog(III)V+]Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;Lcom/android/server/power/stats/BatteryStatsImpl$FrameworkStatsLogger;
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->retrieveBluetoothScanTimesLocked(Lcom/android/server/power/stats/BluetoothPowerStatsCollector$BluetoothStatsRetriever$Callback;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BluetoothPowerStatsCollector$BluetoothStatsRetriever$Callback;Lcom/android/server/power/stats/BluetoothPowerStatsCollector$$ExternalSyntheticLambda0;
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->retrieveWifiScanTimesLocked(Lcom/android/server/power/stats/WifiPowerStatsCollector$WifiStatsRetriever$Callback;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/WifiPowerStatsCollector$WifiStatsRetriever$Callback;Lcom/android/server/power/stats/WifiPowerStatsCollector$$ExternalSyntheticLambda1;
-HSPLcom/android/server/power/stats/BatteryStatsImpl;->setBatteryStateLocked(IIIIIIIIJJJJ)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/stats/BatteryStatsImpl$ExternalStatsSync;Lcom/android/server/power/stats/BatteryExternalStatsWorker;]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
+HSPLcom/android/server/power/stats/BatteryStatsImpl;->setBatteryStateLocked(IIIIIIIIJJJJ)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/server/power/stats/BatteryStatsImpl$ExternalStatsSync;Lcom/android/server/power/stats/BatteryExternalStatsWorker;]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Lcom/android/server/power/stats/BatteryUsageStatsProvider;Lcom/android/server/power/stats/BatteryUsageStatsProvider;
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->updateClusterSpeedTimes(Landroid/util/SparseLongArray;ZLcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;)V+]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/internal/os/CpuScalingPolicies;Lcom/android/internal/os/CpuScalingPolicies;]Lcom/android/internal/os/KernelCpuSpeedReader;Lcom/android/internal/os/KernelCpuSpeedReader;]Lcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;Lcom/android/server/power/stats/BatteryStatsImpl$CpuDeltaPowerAccumulator;]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->updateCpuTimeLocked(ZZ[J)V+]Lcom/android/internal/os/CpuScalingPolicies;Lcom/android/internal/os/CpuScalingPolicies;]Lcom/android/internal/os/KernelCpuSpeedReader;Lcom/android/internal/os/KernelCpuSpeedReader;]Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidActiveTimeReader;Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidActiveTimeReader;]Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidClusterTimeReader;Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidClusterTimeReader;]Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidFreqTimeReader;Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidFreqTimeReader;]Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidUserSysTimeReader;Lcom/android/internal/os/KernelCpuUidTimeReader$KernelCpuUidUserSysTimeReader;]Lcom/android/internal/power/EnergyConsumerStats;Lcom/android/internal/power/EnergyConsumerStats;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->updateKernelWakelocksLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;]Lcom/android/server/power/stats/KernelWakelockReader;Lcom/android/server/power/stats/KernelWakelockReader;]Ljava/util/HashMap;Lcom/android/server/power/stats/KernelWakelockStats;,Ljava/util/HashMap;]Ljava/util/Iterator;Ljava/util/HashMap$EntryIterator;]Ljava/util/Map$Entry;Ljava/util/HashMap$Node;]Ljava/util/Set;Ljava/util/HashMap$EntrySet;
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->updateRpmStatsLocked(J)V+]Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Ljava/util/Iterator;Landroid/util/MapCollections$MapIterator;]Ljava/util/Map$Entry;Landroid/util/MapCollections$MapIterator;]Ljava/util/Map;Landroid/util/ArrayMap;]Ljava/util/Set;Landroid/util/MapCollections$EntrySet;
+HSPLcom/android/server/power/stats/BatteryStatsImpl;->updateWifiBatteryStats(Landroid/os/connectivity/WifiActivityEnergyInfo;Landroid/net/NetworkStats;JJJ)V+]Landroid/net/NetworkStats$Entry;Landroid/net/NetworkStats$Entry;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/internal/os/PowerProfile;Lcom/android/internal/os/PowerProfile;]Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Ljava/util/Iterator;Landroid/net/NetworkStats$1;
 HSPLcom/android/server/power/stats/BatteryStatsImpl;->writeSummaryToParcel(Landroid/os/Parcel;Z)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/internal/os/MonotonicClock;Lcom/android/internal/os/MonotonicClock;]Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;]Lcom/android/server/power/stats/BatteryStatsImpl$Counter;Lcom/android/server/power/stats/BatteryStatsImpl$Counter;]Lcom/android/server/power/stats/BatteryStatsImpl$DisplayBatteryStats;Lcom/android/server/power/stats/BatteryStatsImpl$DisplayBatteryStats;]Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$OverflowArrayMap;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$1;,Lcom/android/server/power/stats/BatteryStatsImpl$Uid$2;,Lcom/android/server/power/stats/BatteryStatsImpl$Uid$3;]Lcom/android/server/power/stats/BatteryStatsImpl$RadioAccessTechnologyBatteryStats;Lcom/android/server/power/stats/BatteryStatsImpl$RadioAccessTechnologyBatteryStats;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;Lcom/android/server/power/stats/BatteryStatsImpl$TimeBase;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeInFreqMultiStateCounter;Lcom/android/server/power/stats/BatteryStatsImpl$TimeInFreqMultiStateCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$TimeMultiStateCounter;Lcom/android/server/power/stats/BatteryStatsImpl$TimeMultiStateCounter;]Lcom/android/server/power/stats/BatteryStatsImpl$Timer;Lcom/android/server/power/stats/BatteryStatsImpl$BatchTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$SamplingTimer;,Lcom/android/server/power/stats/BatteryStatsImpl$StopwatchTimer;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Pkg$Serv;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Proc;Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Proc;]Lcom/android/server/power/stats/BatteryStatsImpl$Uid;Lcom/android/server/power/stats/BatteryStatsImpl$Uid;]Lcom/android/server/power/stats/BatteryStatsImpl;Lcom/android/server/power/stats/BatteryStatsImpl;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/HashMap;Ljava/util/HashMap;]Ljava/util/Iterator;Landroid/util/MapCollections$MapIterator;,Ljava/util/HashMap$EntryIterator;]Ljava/util/Map$Entry;Landroid/util/MapCollections$MapIterator;,Ljava/util/HashMap$Node;]Ljava/util/Set;Landroid/util/MapCollections$EntrySet;,Ljava/util/HashMap$EntrySet;
 HSPLcom/android/server/power/stats/BluetoothPowerStatsCollector;->collectBluetoothActivityInfo()Landroid/bluetooth/BluetoothActivityEnergyInfo;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/BluetoothPowerStatsCollector$BluetoothStatsRetriever;Lcom/android/server/power/stats/BatteryStatsImpl$BluetoothStatsRetrieverImpl;]Lcom/android/server/power/stats/PowerStatsUidResolver;Lcom/android/server/power/stats/PowerStatsUidResolver;]Lcom/android/server/power/stats/format/BluetoothPowerStatsLayout;Lcom/android/server/power/stats/format/BluetoothPowerStatsLayout;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/BluetoothPowerStatsLayout;]Ljava/util/List;Ljava/util/ArrayList;
 HPLcom/android/server/power/stats/CpuPowerCalculator;->calculatePerCpuFreqPowerMah(IIJ)D+]Lcom/android/server/power/stats/UsageBasedPowerEstimator;Lcom/android/server/power/stats/UsageBasedPowerEstimator;
@@ -3310,33 +3416,38 @@
 HSPLcom/android/server/power/stats/EnergyConsumerSnapshot;->updateAndGetDelta([Landroid/hardware/power/stats/EnergyConsumerResult;I)Lcom/android/server/power/stats/EnergyConsumerSnapshot$EnergyConsumerDeltaData;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;
 HSPLcom/android/server/power/stats/KernelWakelockReader;->removeOldStats(Lcom/android/server/power/stats/KernelWakelockStats;)Lcom/android/server/power/stats/KernelWakelockStats;+]Ljava/util/Collection;Ljava/util/HashMap$Values;]Ljava/util/HashMap;Lcom/android/server/power/stats/KernelWakelockStats;]Ljava/util/Iterator;Ljava/util/HashMap$ValueIterator;
 HSPLcom/android/server/power/stats/KernelWakelockReader;->updateWakelockStats([Landroid/system/suspend/internal/WakeLockInfo;Lcom/android/server/power/stats/KernelWakelockStats;)Lcom/android/server/power/stats/KernelWakelockStats;+]Ljava/util/HashMap;Lcom/android/server/power/stats/KernelWakelockStats;
+HSPLcom/android/server/power/stats/MobileRadioPowerStatsCollector;->collectModemActivityInfo()Landroid/telephony/ModemActivityInfo;+]Landroid/telephony/TelephonyManager;Landroid/telephony/TelephonyManager;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;]Ljava/util/function/LongSupplier;Lcom/android/server/power/stats/BatteryStatsImpl$PowerStatsCollectorInjector$$ExternalSyntheticLambda3;,Lcom/android/server/power/stats/BatteryStatsImpl$PowerStatsCollectorInjector$$ExternalSyntheticLambda4;
 HSPLcom/android/server/power/stats/PowerStatsCollector$ConsumedEnergyHelper;->collectConsumedEnergy(Lcom/android/internal/os/PowerStats;Lcom/android/server/power/stats/format/PowerStatsLayout;)Z+]Lcom/android/server/power/stats/PowerStatsCollector$ConsumedEnergyRetriever;Lcom/android/server/power/stats/PowerStatsCollector$ConsumedEnergyRetrieverImpl;
 HSPLcom/android/server/power/stats/PowerStatsCollector$ConsumedEnergyHelper;->populatePowerStats(Lcom/android/internal/os/PowerStats;Lcom/android/server/power/stats/format/PowerStatsLayout;[Landroid/hardware/power/stats/EnergyConsumerResult;II)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/power/stats/PowerStatsUidResolver;Lcom/android/server/power/stats/PowerStatsUidResolver;]Lcom/android/server/power/stats/format/PowerStatsLayout;megamorphic_types
-HSPLcom/android/server/power/stats/PowerStatsCollector;->deliverStats(Lcom/android/internal/os/PowerStats;)V+]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;]Ljava/util/function/Consumer;Lcom/android/server/power/stats/BatteryStatsImpl$$ExternalSyntheticLambda3;,Lcom/android/server/power/stats/CustomEnergyConsumerPowerStatsCollector$$ExternalSyntheticLambda0;
+HSPLcom/android/server/power/stats/PowerStatsCollector;->deliverStats(Lcom/android/internal/os/PowerStats;)V+]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;]Ljava/util/function/Consumer;Lcom/android/server/power/stats/BatteryStatsImpl$$ExternalSyntheticLambda3;,Lcom/android/server/power/stats/BatteryStatsImpl$$ExternalSyntheticLambda8;,Lcom/android/server/power/stats/CustomEnergyConsumerPowerStatsCollector$$ExternalSyntheticLambda0;
 HSPLcom/android/server/power/stats/PowerStatsCollector;->schedule()Z+]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;
 HSPLcom/android/server/power/stats/PowerStatsUidResolver;->mapUid(I)I+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;
 HSPLcom/android/server/power/stats/ScreenPowerStatsCollector;->collectStats()Lcom/android/internal/os/PowerStats;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;]Lcom/android/server/power/stats/PowerStatsCollector$ConsumedEnergyHelper;Lcom/android/server/power/stats/PowerStatsCollector$ConsumedEnergyHelper;]Lcom/android/server/power/stats/ScreenPowerStatsCollector$ScreenUsageTimeRetriever;Lcom/android/server/power/stats/BatteryStatsImpl$2;]Lcom/android/server/power/stats/format/ScreenPowerStatsLayout;Lcom/android/server/power/stats/format/ScreenPowerStatsLayout;
+HSPLcom/android/server/power/stats/ScreenPowerStatsCollector;->lambda$collectStats$0(IJ)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/power/stats/PowerStatsUidResolver;Lcom/android/server/power/stats/PowerStatsUidResolver;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/ScreenPowerStatsLayout;]Lcom/android/server/power/stats/format/ScreenPowerStatsLayout;Lcom/android/server/power/stats/format/ScreenPowerStatsLayout;
 HSPLcom/android/server/power/stats/UsageBasedPowerEstimator;->calculatePower(J)D
+HSPLcom/android/server/power/stats/WifiPowerStatsCollector;->collectNetworkStats()Landroid/net/NetworkStats;+]Landroid/net/NetworkStats$Entry;Landroid/net/NetworkStats$Entry;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/PowerStatsUidResolver;Lcom/android/server/power/stats/PowerStatsUidResolver;]Lcom/android/server/power/stats/WifiPowerStatsCollector$Injector;Lcom/android/server/power/stats/BatteryStatsImpl$PowerStatsCollectorInjector;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/WifiPowerStatsLayout;]Lcom/android/server/power/stats/format/WifiPowerStatsLayout;Lcom/android/server/power/stats/format/WifiPowerStatsLayout;]Ljava/util/function/Supplier;Lcom/android/server/power/stats/BatteryStatsImpl$PowerStatsCollectorInjector$$ExternalSyntheticLambda1;
 HSPLcom/android/server/power/stats/format/BluetoothPowerStatsLayout;->getUidRxBytes([J)J
 HSPLcom/android/server/power/stats/format/BluetoothPowerStatsLayout;->getUidTxBytes([J)J
 HSPLcom/android/server/power/stats/format/CpuPowerStatsLayout;->getCpuPowerBracketCount()I
 HSPLcom/android/server/power/stats/format/CpuPowerStatsLayout;->getTimeByScalingStep([JI)J
 HSPLcom/android/server/power/stats/format/CpuPowerStatsLayout;->setUidTimeByPowerBracket([JIJ)V
+HSPLcom/android/server/power/stats/format/PowerStatsLayout;-><init>()V
 HSPLcom/android/server/power/stats/format/PowerStatsLayout;-><init>(Lcom/android/internal/os/PowerStats$Descriptor;)V
 HSPLcom/android/server/power/stats/format/PowerStatsLayout;->appendFormat(Ljava/lang/StringBuilder;IILjava/lang/String;I)V
 HSPLcom/android/server/power/stats/format/PowerStatsLayout;->getUidConsumedEnergy([JI)J
-HSPLcom/android/server/power/stats/format/PowerStatsLayout;->getUidPowerEstimate([J)D
 HSPLcom/android/server/power/stats/format/PowerStatsLayout;->getUidUsageDuration([J)J
+HSPLcom/android/server/power/stats/format/PowerStatsLayout;->getUsageDuration([J)J
 HSPLcom/android/server/power/stats/format/PowerStatsLayout;->setUidPowerEstimate([JD)V
 HSPLcom/android/server/power/stats/format/PowerStatsLayout;->toExtras(Landroid/os/PersistableBundle;)V
 HSPLcom/android/server/power/stats/format/ScreenPowerStatsLayout;-><init>(Lcom/android/internal/os/PowerStats$Descriptor;)V
 HSPLcom/android/server/power/stats/format/WifiPowerStatsLayout;->getUidRxPackets([J)J
 HSPLcom/android/server/power/stats/format/WifiPowerStatsLayout;->getUidTxPackets([J)J
+HSPLcom/android/server/power/stats/processor/AggregatedPowerStats;-><init>(Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig;Landroid/util/SparseBooleanArray;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;]Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig;Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/power/stats/processor/AggregatedPowerStats;->addClockUpdate(JJ)V+]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/power/stats/processor/AggregatedPowerStats;->addPowerStats(Lcom/android/internal/os/PowerStats;J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig;Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;
 HSPLcom/android/server/power/stats/processor/AggregatedPowerStats;->getPowerComponentStats()Ljava/util/List;+]Landroid/util/SparseArray;Landroid/util/SparseArray;
-HSPLcom/android/server/power/stats/processor/AggregatedPowerStats;->isCompatible(Lcom/android/internal/os/PowerStats;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;
 HSPLcom/android/server/power/stats/processor/AggregatedPowerStats;->noteStateChange(Landroid/os/BatteryStats$HistoryItem;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;
+HSPLcom/android/server/power/stats/processor/AggregatedPowerStats;->reset()V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/power/stats/processor/AggregatedPowerStats;->setUidState(IIIJ)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;
 HSPLcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;->getDeviceStateConfig()[Lcom/android/server/power/stats/processor/MultiStateStats$States;
 HSPLcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;->getUidStateConfig()[Lcom/android/server/power/stats/processor/MultiStateStats$States;
@@ -3345,11 +3456,13 @@
 HSPLcom/android/server/power/stats/processor/AmbientDisplayPowerStatsProcessor;->lambda$finish$0(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;[I)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/AmbientDisplayPowerStatsLayout;]Lcom/android/server/power/stats/format/ScreenPowerStatsLayout;Lcom/android/server/power/stats/format/ScreenPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;
 HSPLcom/android/server/power/stats/processor/AudioPowerStatsProcessor;->getBinaryState(Landroid/os/BatteryStats$HistoryItem;)I
 HSPLcom/android/server/power/stats/processor/BasePowerStatsProcessor;->finish(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/power/stats/format/BasePowerStatsLayout;Lcom/android/server/power/stats/format/BasePowerStatsLayout;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/BasePowerStatsLayout;]Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/power/stats/processor/BasePowerStatsProcessor;->noteBatteryLevel(IIJ)V
 HSPLcom/android/server/power/stats/processor/BasePowerStatsProcessor;->setUidState(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;IIIJ)V+]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;
 HSPLcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;->combineDevicePowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/BinaryStatePowerStatsLayout;,Lcom/android/server/power/stats/format/GnssPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;->computeDevicePowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;Z)V+]Lcom/android/server/power/stats/UsageBasedPowerEstimator;Lcom/android/server/power/stats/UsageBasedPowerEstimator;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/BinaryStatePowerStatsLayout;,Lcom/android/server/power/stats/format/GnssPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;->computeUidActivityTotals(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Ljava/util/List;)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/BinaryStatePowerStatsLayout;,Lcom/android/server/power/stats/format/GnssPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;->computeUidPowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Ljava/util/List;)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/BinaryStatePowerStatsLayout;,Lcom/android/server/power/stats/format/GnssPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;->ensureInitialized()V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/BinaryStatePowerStatsLayout;,Lcom/android/server/power/stats/format/GnssPowerStatsLayout;
 HSPLcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;->finish(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;J)V+]Lcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;megamorphic_types]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;
 HSPLcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;->flushPowerStats(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;
 HSPLcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;->noteStateChange(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Landroid/os/BatteryStats$HistoryItem;)V+]Lcom/android/server/power/stats/processor/BinaryStatePowerStatsProcessor;megamorphic_types
@@ -3380,7 +3493,7 @@
 HSPLcom/android/server/power/stats/processor/MobileRadioPowerStatsProcessor;->computeUidRxTxTotals(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;ILcom/android/server/power/stats/processor/PowerStatsProcessor$UidStateEstimate;)V+]Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/power/stats/processor/MobileRadioPowerStatsProcessor;->finish(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;J)V+]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/power/stats/processor/MobileRadioPowerStatsProcessor;->lambda$computeDevicePowerEstimates$0(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;[ILcom/android/server/power/stats/processor/MobileRadioPowerStatsProcessor$Intermediates;I)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/UsageBasedPowerEstimator;Lcom/android/server/power/stats/UsageBasedPowerEstimator;]Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;
-HPLcom/android/server/power/stats/processor/MultiStateStats$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;)V
+HSPLcom/android/server/power/stats/processor/MultiStateStats$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;)V
 HSPLcom/android/server/power/stats/processor/MultiStateStats$Factory;-><init>(I[Lcom/android/server/power/stats/processor/MultiStateStats$States;)V
 HSPLcom/android/server/power/stats/processor/MultiStateStats$Factory;->create()Lcom/android/server/power/stats/processor/MultiStateStats;
 HSPLcom/android/server/power/stats/processor/MultiStateStats$Factory;->getSerialState([I)I+]Lcom/android/server/power/stats/processor/MultiStateStats$Factory;Lcom/android/server/power/stats/processor/MultiStateStats$Factory;
@@ -3392,17 +3505,19 @@
 HSPLcom/android/server/power/stats/processor/MultiStateStats;-><init>(Lcom/android/server/power/stats/processor/MultiStateStats$Factory;I)V
 HSPLcom/android/server/power/stats/processor/MultiStateStats;->getStats([J[I)V+]Lcom/android/server/power/stats/processor/MultiStateStats$Factory;Lcom/android/server/power/stats/processor/MultiStateStats$Factory;
 HSPLcom/android/server/power/stats/processor/MultiStateStats;->increment([JJ)V
+HSPLcom/android/server/power/stats/processor/MultiStateStats;->lambda$writeXml$0(Lcom/android/modules/utils/TypedXmlSerializer;[J[I)V
 HSPLcom/android/server/power/stats/processor/MultiStateStats;->setState(IIJ)V+]Lcom/android/server/power/stats/processor/MultiStateStats$Factory;Lcom/android/server/power/stats/processor/MultiStateStats$Factory;
 HSPLcom/android/server/power/stats/processor/MultiStateStats;->setStats([I[J)V+]Lcom/android/server/power/stats/processor/MultiStateStats$Factory;Lcom/android/server/power/stats/processor/MultiStateStats$Factory;
-HPLcom/android/server/power/stats/processor/MultiStateStats;->writeXml(Lcom/android/modules/utils/TypedXmlSerializer;)V
-HPLcom/android/server/power/stats/processor/MultiStateStats;->writeXmlForStates(Lcom/android/modules/utils/TypedXmlSerializer;[I[J)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/power/stats/processor/MultiStateStats$Factory;Lcom/android/server/power/stats/processor/MultiStateStats$Factory;
+HSPLcom/android/server/power/stats/processor/MultiStateStats;->writeXml(Lcom/android/modules/utils/TypedXmlSerializer;)V
+HSPLcom/android/server/power/stats/processor/MultiStateStats;->writeXmlForStates(Lcom/android/modules/utils/TypedXmlSerializer;[I[J)V+]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/power/stats/processor/MultiStateStats$Factory;Lcom/android/server/power/stats/processor/MultiStateStats$Factory;
+HSPLcom/android/server/power/stats/processor/PhoneCallPowerStatsProcessor;->finish(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;J)V+]Lcom/android/server/power/stats/processor/AggregatedPowerStats;Lcom/android/server/power/stats/processor/AggregatedPowerStats;]Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;
+HSPLcom/android/server/power/stats/processor/PhoneCallPowerStatsProcessor;->lambda$finish$0(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;[I)V+]Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;Lcom/android/server/power/stats/format/MobileRadioPowerStatsLayout;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/PhoneCallPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;
 HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;-><init>(Lcom/android/server/power/stats/processor/AggregatedPowerStats;Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;)V+]Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;
 HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->addPowerStats(Lcom/android/internal/os/PowerStats;J)V+]Lcom/android/server/power/stats/processor/PowerStatsProcessor;megamorphic_types
 HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->addProcessedPowerStats(Lcom/android/internal/os/PowerStats;J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats;
 HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->collectUids(Ljava/util/Collection;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/Collection;Ljava/util/ArrayList;
 HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->createDeviceStats(J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/MultiStateStats$Factory;Lcom/android/server/power/stats/processor/MultiStateStats$Factory;]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats;
 HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->createUidStats(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats$UidStats;J)V+]Lcom/android/server/power/stats/processor/MultiStateStats$Factory;Lcom/android/server/power/stats/processor/MultiStateStats$Factory;]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats;
-HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->finish(J)V+]Lcom/android/server/power/stats/processor/PowerStatsProcessor;megamorphic_types
 HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->getDeviceStats([J[I)Z+]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats;
 HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->getUidStats(I)Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats$UidStats;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/MultiStateStats$States;Lcom/android/server/power/stats/processor/MultiStateStats$States;
 HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->getUidStats([JI[I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats;
@@ -3413,7 +3528,7 @@
 HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->setState(IIJ)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/MultiStateStats$States;Lcom/android/server/power/stats/processor/MultiStateStats$States;]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats;
 HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->setUidState(IIIJ)V+]Lcom/android/server/power/stats/processor/PowerStatsProcessor;megamorphic_types
 HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->setUidStats(I[I[J)V+]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats;
-HPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->writeXml(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/PowerStats$Descriptor;Lcom/android/internal/os/PowerStats$Descriptor;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats;
+HSPLcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;->writeXml(Lcom/android/modules/utils/TypedXmlSerializer;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/internal/os/PowerStats$Descriptor;Lcom/android/internal/os/PowerStats$Descriptor;]Lcom/android/modules/utils/TypedXmlSerializer;Lcom/android/internal/util/ArtBinaryXmlSerializer;]Lcom/android/server/power/stats/processor/MultiStateStats;Lcom/android/server/power/stats/processor/MultiStateStats;
 HSPLcom/android/server/power/stats/processor/PowerStatsAggregator;->aggregatePowerStats(Lcom/android/internal/os/BatteryStatsHistory;JJLjava/util/function/Consumer;)V+]Lcom/android/internal/os/BatteryStatsHistory;Lcom/android/internal/os/BatteryStatsHistory;]Lcom/android/internal/os/BatteryStatsHistoryIterator;Lcom/android/internal/os/BatteryStatsHistoryIterator;]Lcom/android/server/power/stats/processor/AggregatedPowerStats;Lcom/android/server/power/stats/processor/AggregatedPowerStats;]Ljava/util/function/Consumer;Lcom/android/server/power/stats/processor/MultiStatePowerAttributor$$ExternalSyntheticLambda17;,Lcom/android/server/power/stats/processor/PowerStatsExporter$$ExternalSyntheticLambda0;
 HSPLcom/android/server/power/stats/processor/PowerStatsExporter$$ExternalSyntheticLambda1;-><init>(Lcom/android/server/power/stats/processor/PowerStatsExporter;IILcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;[J[DLcom/android/server/power/stats/format/PowerStatsLayout;[JZLcom/android/server/power/stats/processor/PowerStatsExporter$BatteryLevelInfo;)V
 HSPLcom/android/server/power/stats/processor/PowerStatsExporter$$ExternalSyntheticLambda1;->accept(Ljava/lang/Object;)V
@@ -3428,10 +3543,14 @@
 HSPLcom/android/server/power/stats/processor/PowerStatsExporter;->populateBatteryUsageStatsBuilder(Landroid/os/BatteryUsageStats$Builder;Lcom/android/server/power/stats/processor/AggregatedPowerStats;)V+]Lcom/android/server/power/stats/processor/AggregatedPowerStats;Lcom/android/server/power/stats/processor/AggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/power/stats/processor/PowerStatsExporter;->populateBatteryUsageStatsBuilder(Landroid/os/BatteryUsageStats$Builder;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;)V+]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;
 HSPLcom/android/server/power/stats/processor/PowerStatsExporter;->populateUidBatteryConsumers(Landroid/os/BatteryUsageStats$Builder;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/format/PowerStatsLayout;Ljava/util/List;Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;[JZII)V+]Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;-><init>(Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;)V
+HSPLcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;->addDeviceStateEstimations()V+]Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;->addUidStateEstimations()V+]Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;Lcom/android/server/power/stats/processor/AggregatedPowerStatsConfig$PowerComponent;]Lcom/android/server/power/stats/processor/MultiStateStats$States;Lcom/android/server/power/stats/processor/MultiStateStats$States;]Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;->getCombinedDeviceStateEstimate([Lcom/android/server/power/stats/processor/MultiStateStats$States;[I)Lcom/android/server/power/stats/processor/PowerStatsProcessor$CombinedDeviceStateEstimate;+]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;->getUidStateEstimate(Lcom/android/server/power/stats/processor/PowerStatsProcessor$CombinedDeviceStateEstimate;)Lcom/android/server/power/stats/processor/PowerStatsProcessor$UidStateEstimate;+]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;->resetIntermediates()V+]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/power/stats/processor/PowerStatsProcessor;->concatLabels([Lcom/android/server/power/stats/processor/MultiStateStats$States;[I)Ljava/lang/String;+]Lcom/android/server/power/stats/processor/MultiStateStats$States;Lcom/android/server/power/stats/processor/MultiStateStats$States;
+HSPLcom/android/server/power/stats/processor/PowerStatsProcessor;->getAllTrackedStateCombinations([Lcom/android/server/power/stats/processor/MultiStateStats$States;)[[I
 HSPLcom/android/server/power/stats/processor/PowerStatsProcessor;->noteStateChange(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Landroid/os/BatteryStats$HistoryItem;)V
 HSPLcom/android/server/power/stats/processor/PowerStatsProcessor;->setUidState(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;IIIJ)V+]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;
 HSPLcom/android/server/power/stats/processor/ScreenPowerStatsProcessor;->combineDeviceStateEstimates()V+]Ljava/util/List;Ljava/util/ArrayList;
@@ -3443,6 +3562,7 @@
 HSPLcom/android/server/power/stats/processor/SensorPowerStatsProcessor;->computeUidPowerEstimates(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Ljava/util/List;)V+]Landroid/hardware/SensorManager;Landroid/hardware/SystemSensorManager;]Lcom/android/server/power/stats/format/PowerStatsLayout;Lcom/android/server/power/stats/format/SensorPowerStatsLayout;]Lcom/android/server/power/stats/format/SensorPowerStatsLayout;Lcom/android/server/power/stats/format/SensorPowerStatsLayout;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$UnmodifiableRandomAccessList;
 HSPLcom/android/server/power/stats/processor/SensorPowerStatsProcessor;->finish(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;]Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;Lcom/android/server/power/stats/processor/PowerStatsProcessor$PowerEstimationPlan;]Lcom/android/server/power/stats/processor/SensorPowerStatsProcessor;Lcom/android/server/power/stats/processor/SensorPowerStatsProcessor;
 HSPLcom/android/server/power/stats/processor/SensorPowerStatsProcessor;->flushPowerStats(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;
+HSPLcom/android/server/power/stats/processor/SensorPowerStatsProcessor;->makeLabel(Landroid/hardware/Sensor;Ljava/util/List;)Ljava/lang/String;+]Ljava/util/List;Ljava/util/Collections$UnmodifiableRandomAccessList;
 HSPLcom/android/server/power/stats/processor/SensorPowerStatsProcessor;->noteStateChange(Lcom/android/server/power/stats/processor/PowerComponentAggregatedPowerStats;Landroid/os/BatteryStats$HistoryItem;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/processor/SensorPowerStatsProcessor;Lcom/android/server/power/stats/processor/SensorPowerStatsProcessor;
 HSPLcom/android/server/power/stats/processor/SensorPowerStatsProcessor;->recordUsageDuration(Lcom/android/server/power/stats/processor/SensorPowerStatsProcessor$SensorState;J)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/power/stats/format/SensorPowerStatsLayout;Lcom/android/server/power/stats/format/SensorPowerStatsLayout;
 HSPLcom/android/server/power/stats/processor/VideoPowerStatsProcessor;->getBinaryState(Landroid/os/BatteryStats$HistoryItem;)I
@@ -3457,7 +3577,6 @@
 HSPLcom/android/server/power/stats/wakeups/CpuWakeupStats;->attemptAttributionWith(IJLandroid/util/SparseIntArray;)Z+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;
 HPLcom/android/server/power/stats/wakeups/CpuWakeupStats;->logWakeupAttribution(Lcom/android/server/power/stats/wakeups/CpuWakeupStats$Wakeup;)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;
 HSPLcom/android/server/power/stats/wakeups/CpuWakeupStats;->noteUidProcessState(II)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;
-HPLcom/android/server/power/stats/wakeups/CpuWakeupStats;->noteWakeupTimeAndReason(JJLjava/lang/String;)V+]Landroid/util/LongSparseArray;Landroid/util/LongSparseArray;
 HSPLcom/android/server/power/stats/wakeups/CpuWakeupStats;->noteWakingActivity(IJ[I)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;
 HSPLcom/android/server/powerstats/PowerStatsService$LocalService;->getEnergyConsumedAsync([I)Ljava/util/concurrent/CompletableFuture;
 HSPLcom/android/server/powerstats/PowerStatsService;->getHandler()Landroid/os/Handler;
@@ -3465,10 +3584,12 @@
 HSPLcom/android/server/selinux/RateLimiter;->tryAcquire()Z+]Lcom/android/internal/os/Clock;Lcom/android/internal/os/Clock$1;
 HPLcom/android/server/slice/SliceClientPermissions$SliceAuthority;->addPath(Ljava/util/List;)V+]Lcom/android/server/slice/DirtyTracker;Lcom/android/server/slice/SliceClientPermissions;]Ljava/util/List;Landroid/net/Uri$PathSegments;
 HPLcom/android/server/slice/SliceClientPermissions$SliceAuthority;->isPathPrefixMatch([Ljava/lang/String;[Ljava/lang/String;)Z
+HPLcom/android/server/slice/SliceManagerService;->getProviderPkg(Landroid/net/Uri;I)Ljava/lang/String;+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;
 HPLcom/android/server/slice/SlicePermissionManager$PkgUser;->equals(Ljava/lang/Object;)Z
 HPLcom/android/server/slice/SlicePermissionManager;->grantSliceAccess(Ljava/lang/String;ILjava/lang/String;ILandroid/net/Uri;)V+]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;]Lcom/android/server/slice/SliceClientPermissions;Lcom/android/server/slice/SliceClientPermissions;]Lcom/android/server/slice/SliceProviderPermissions$SliceAuthority;Lcom/android/server/slice/SliceProviderPermissions$SliceAuthority;]Lcom/android/server/slice/SliceProviderPermissions;Lcom/android/server/slice/SliceProviderPermissions;
 HSPLcom/android/server/smartspace/SmartspaceManagerService$SmartspaceManagerStub;->runForUserLocked(Ljava/lang/String;Landroid/app/smartspace/SmartspaceSessionId;Ljava/util/function/Consumer;)V+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/content/Context;Landroid/app/ContextImpl;]Lcom/android/server/infra/ServiceNameResolver;Lcom/android/server/infra/FrameworkResourcesServiceNameResolver;]Lcom/android/server/wm/ActivityTaskManagerInternal;Lcom/android/server/wm/ActivityTaskManagerService$LocalService;]Ljava/util/function/Consumer;megamorphic_types
 HPLcom/android/server/soundtrigger/SoundTriggerService$MyAppOpsListener;->onOpChanged(Ljava/lang/String;Ljava/lang/String;)V+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Ljava/util/function/Consumer;Lcom/android/server/soundtrigger/SoundTriggerService$LocalSoundTriggerService$SessionImpl$$ExternalSyntheticLambda2;
+HSPLcom/android/server/stats/pull/AggregatedMobileDataStatsPuller$$ExternalSyntheticLambda1;->run()V
 HSPLcom/android/server/stats/pull/AggregatedMobileDataStatsPuller;->noteUidProcessState(IIJJ)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;
 HPLcom/android/server/stats/pull/StatsPullAtomService$$ExternalSyntheticLambda18;->onUidCpuTime(ILjava/lang/Object;)V
 HPLcom/android/server/stats/pull/StatsPullAtomService$StatsPullAtomCallbackImpl;->onPullAtom(ILjava/util/List;)I+]Lcom/android/server/stats/pull/AggregatedMobileDataStatsPuller;Lcom/android/server/stats/pull/AggregatedMobileDataStatsPuller;]Lcom/android/server/stats/pull/StatsPullAtomService;Lcom/android/server/stats/pull/StatsPullAtomService;
@@ -3483,6 +3604,7 @@
 HPLcom/android/server/stats/pull/StatsPullAtomService;->pullKernelWakelockLocked(ILjava/util/List;)I+]Lcom/android/server/power/stats/KernelWakelockReader;Lcom/android/server/power/stats/KernelWakelockReader;]Ljava/util/HashMap;Lcom/android/server/power/stats/KernelWakelockStats;]Ljava/util/Iterator;Ljava/util/HashMap$EntryIterator;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Map$Entry;Ljava/util/HashMap$Node;]Ljava/util/Set;Ljava/util/HashMap$EntrySet;
 HPLcom/android/server/stats/pull/StatsPullAtomService;->pullModemActivityInfoLocked(ILjava/util/List;)I+]Landroid/telephony/TelephonyManager;Landroid/telephony/TelephonyManager;]Ljava/util/List;Ljava/util/ArrayList;
 HPLcom/android/server/stats/pull/StatsPullAtomService;->removeEmptyEntries(Landroid/net/NetworkStats;)Landroid/net/NetworkStats;+]Landroid/net/NetworkStats$Entry;Landroid/net/NetworkStats$Entry;
+HPLcom/android/server/stats/pull/StatsPullAtomService;->sampleAppOps(Ljava/util/List;Ljava/util/List;II)I+]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/stats/pull/StatsPullAtomService;->sliceNetworkStats(Landroid/net/NetworkStats;Ljava/util/function/Function;)Landroid/net/NetworkStats;+]Ljava/util/function/Function;Lcom/android/server/stats/pull/StatsPullAtomService$$ExternalSyntheticLambda2;,Lcom/android/server/stats/pull/StatsPullAtomService$$ExternalSyntheticLambda3;,Lcom/android/server/stats/pull/StatsPullAtomService$$ExternalSyntheticLambda6;,Lcom/android/server/stats/pull/StatsPullAtomService$$ExternalSyntheticLambda7;
 HSPLcom/android/server/stats/pull/netstats/NetworkStatsAccumulator;->snapshotPlusFollowingStats(JLcom/android/server/stats/pull/netstats/NetworkStatsAccumulator$StatsQueryFunction;)Landroid/net/NetworkStats;+]Lcom/android/server/stats/pull/netstats/NetworkStatsAccumulator$StatsQueryFunction;Lcom/android/server/stats/pull/StatsPullAtomService$$ExternalSyntheticLambda5;
 HSPLcom/android/server/stats/pull/netstats/NetworkStatsExt;-><init>(Landroid/net/NetworkStats;[IZZZILcom/android/server/stats/pull/netstats/SubInfo;IZ)V
@@ -3490,7 +3612,8 @@
 HSPLcom/android/server/stats/pull/netstats/NetworkStatsUtils;->fromBucket(Landroid/app/usage/NetworkStats$Bucket;)Landroid/net/NetworkStats$Entry;+]Landroid/app/usage/NetworkStats$Bucket;Landroid/app/usage/NetworkStats$Bucket;
 HSPLcom/android/server/stats/pull/netstats/NetworkStatsUtils;->fromPublicNetworkStats(Landroid/app/usage/NetworkStats;)Landroid/net/NetworkStats;
 HPLcom/android/server/statusbar/StatusBarManagerService$1;->setTopAppHidesStatusBar(IZ)V+]Lcom/android/internal/statusbar/IStatusBar;Lcom/android/internal/statusbar/IStatusBar$Stub$Proxy;
-HSPLcom/android/server/storage/DeviceStorageMonitorService;->checkLow()V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Landroid/os/storage/StorageManager;Landroid/os/storage/StorageManager;]Landroid/os/storage/VolumeInfo;Landroid/os/storage/VolumeInfo;]Ljava/io/File;Ljava/io/File;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
+HPLcom/android/server/storage/CacheQuotaStrategy;->getUnfulfilledRequests()Ljava/util/List;+]Landroid/app/usage/UsageStatsManagerInternal;Lcom/android/server/usage/UsageStatsService$LocalService;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/PackageManager;Landroid/app/ApplicationPackageManager;]Landroid/os/UserManager;Landroid/os/UserManager;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/storage/DeviceStorageMonitorService;->checkLow()V+]Landroid/os/storage/StorageManager;Landroid/os/storage/StorageManager;]Landroid/os/storage/VolumeInfo;Landroid/os/storage/VolumeInfo;]Ljava/io/File;Ljava/io/File;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/trust/TrustManagerService$3;->isDeviceLocked(II)Z+]Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/widget/LockPatternUtils;]Lcom/android/server/trust/TrustManagerService;Lcom/android/server/trust/TrustManagerService;
 HSPLcom/android/server/trust/TrustManagerService$3;->isDeviceSecure(II)Z+]Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/widget/LockPatternUtils;
 HSPLcom/android/server/trust/TrustManagerService;->refreshAgentList(I)V+]Landroid/app/ActivityManager;Landroid/app/ActivityManager;]Landroid/app/admin/DevicePolicyManager;Landroid/app/admin/DevicePolicyManager;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/pm/ResolveInfo;Landroid/content/pm/ResolveInfo;]Landroid/content/pm/UserInfo;Landroid/content/pm/UserInfo;]Landroid/os/UserManager;Landroid/os/UserManager;]Lcom/android/internal/widget/LockPatternUtils$StrongAuthTracker;Lcom/android/server/trust/TrustManagerService$StrongAuthTracker;]Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/widget/LockPatternUtils;]Lcom/android/server/trust/TrustAgentWrapper;Lcom/android/server/trust/TrustAgentWrapper;]Lcom/android/server/trust/TrustManagerService$StrongAuthTracker;Lcom/android/server/trust/TrustManagerService$StrongAuthTracker;]Lcom/android/server/trust/TrustManagerService;Lcom/android/server/trust/TrustManagerService;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
@@ -3526,9 +3649,11 @@
 HPLcom/android/server/usage/AppStandbyController;->onUsageEvent(ILandroid/app/usage/UsageEvents$Event;)V+]Lcom/android/server/usage/AppStandbyController$Injector;Lcom/android/server/usage/AppStandbyController$Injector;]Ljava/util/List;Ljava/util/ArrayList;,Ljava/util/Collections$EmptyList;
 HPLcom/android/server/usage/AppStandbyController;->reportEventLocked(Ljava/lang/String;IJI)V+]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory;
 HSPLcom/android/server/usage/AppStandbyController;->setLastJobRunTime(Ljava/lang/String;IJ)V+]Lcom/android/server/usage/AppIdleHistory;Lcom/android/server/usage/AppIdleHistory;
+HSPLcom/android/server/usage/BroadcastResponseStatsLogger$LogBuffer;->logNotificationEvent(ILjava/lang/String;Landroid/os/UserHandle;J)V+]Lcom/android/server/usage/BroadcastResponseStatsLogger$Data;Lcom/android/server/usage/BroadcastResponseStatsLogger$NotificationEvent;
 HPLcom/android/server/usage/IntervalStats;-><init>()V
 HPLcom/android/server/usage/IntervalStats;->deobfuscateEvents(Lcom/android/server/usage/PackagesTokenData;)Z+]Landroid/app/usage/EventList;Landroid/app/usage/EventList;
 HPLcom/android/server/usage/IntervalStats;->deobfuscateUsageStats(Lcom/android/server/usage/PackagesTokenData;)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;
+HPLcom/android/server/usage/IntervalStats;->getOrCreateConfigurationStats(Landroid/content/res/Configuration;)Landroid/app/usage/ConfigurationStats;
 HPLcom/android/server/usage/IntervalStats;->getOrCreateUsageStats(Ljava/lang/String;)Landroid/app/usage/UsageStats;
 HPLcom/android/server/usage/IntervalStats;->obfuscateEventsData(Lcom/android/server/usage/PackagesTokenData;)V+]Landroid/app/usage/EventList;Landroid/app/usage/EventList;
 HPLcom/android/server/usage/IntervalStats;->obfuscateUsageStatsData(Lcom/android/server/usage/PackagesTokenData;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;
@@ -3551,7 +3676,9 @@
 HPLcom/android/server/usage/UsageStatsProtoV2;->parseUsageStats(Landroid/util/proto/ProtoInputStream;J)Landroid/app/usage/UsageStats;
 HPLcom/android/server/usage/UsageStatsProtoV2;->read(Ljava/io/InputStream;Lcom/android/server/usage/IntervalStats;Z)V+]Landroid/app/usage/EventList;Landroid/app/usage/EventList;]Landroid/util/SparseArray;Landroid/util/SparseArray;
 HPLcom/android/server/usage/UsageStatsProtoV2;->write(Ljava/io/OutputStream;Lcom/android/server/usage/IntervalStats;)V+]Landroid/app/usage/EventList;Landroid/app/usage/EventList;]Landroid/util/SparseArray;Landroid/util/SparseArray;
+HPLcom/android/server/usage/UsageStatsProtoV2;->writeObfuscatedData(Ljava/io/OutputStream;Lcom/android/server/usage/PackagesTokenData;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HPLcom/android/server/usage/UsageStatsProtoV2;->writeOffsetTimestamp(Landroid/util/proto/ProtoOutputStream;JJJ)V
+HSPLcom/android/server/usage/UsageStatsService$$ExternalSyntheticLambda0;->handleMessage(Landroid/os/Message;)Z
 HSPLcom/android/server/usage/UsageStatsService$3;->onUidStateChanged(IIJI)V
 HPLcom/android/server/usage/UsageStatsService$BinderService;->getAppStandbyBucket(Ljava/lang/String;Ljava/lang/String;I)I+]Landroid/app/IActivityManager;Lcom/android/server/am/ActivityManagerService;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/usage/AppStandbyInternal;Lcom/android/server/usage/AppStandbyController;
 HPLcom/android/server/usage/UsageStatsService$BinderService;->hasQueryPermission(Ljava/lang/String;)Z+]Landroid/app/AppOpsManager;Landroid/app/AppOpsManager;]Landroid/content/Context;Landroid/app/ContextImpl;
@@ -3566,7 +3693,8 @@
 HSPLcom/android/server/usage/UsageStatsService;->reportEventOrAddToQueue(ILandroid/app/usage/UsageEvents$Event;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Ljava/util/LinkedList;Ljava/util/LinkedList;]Ljava/util/concurrent/CopyOnWriteArraySet;Ljava/util/concurrent/CopyOnWriteArraySet;
 HPLcom/android/server/usage/UserUsageStatsService$1;->combine(Lcom/android/server/usage/IntervalStats;ZLjava/util/List;)Z+]Ljava/util/List;Ljava/util/ArrayList;
 HPLcom/android/server/usage/UserUsageStatsService$4;->combine(Lcom/android/server/usage/IntervalStats;ZLjava/util/List;)Z+]Landroid/app/usage/EventList;Landroid/app/usage/EventList;]Ljava/util/List;Ljava/util/ArrayList;
-HPLcom/android/server/usage/UserUsageStatsService;->queryEvents(JJI[ILandroid/util/ArraySet;)Landroid/app/usage/UsageEvents;+]Ljava/util/List;Ljava/util/ArrayList;
+HPLcom/android/server/usage/UserUsageStatsService;->checkAndGetTimeLocked()J
+HPLcom/android/server/usage/UserUsageStatsService;->queryStats(IJJLcom/android/server/usage/UsageStatsDatabase$StatCombiner;Z)Ljava/util/List;+]Lcom/android/server/usage/UsageStatsDatabase$StatCombiner;megamorphic_types]Lcom/android/server/usage/UsageStatsDatabase;Lcom/android/server/usage/UsageStatsDatabase;
 HPLcom/android/server/usage/UserUsageStatsService;->reportEvent(Landroid/app/usage/UsageEvents$Event;)V+]Lcom/android/server/usage/IntervalStats;Lcom/android/server/usage/IntervalStats;]Lcom/android/server/usage/UnixCalendar;Lcom/android/server/usage/UnixCalendar;
 HSPLcom/android/server/utils/AlarmQueue$AlarmPriorityQueue$$ExternalSyntheticLambda0;->compare(Ljava/lang/Object;Ljava/lang/Object;)I
 HSPLcom/android/server/utils/AlarmQueue$AlarmPriorityQueue;->$r8$lambda$a9G3NCnbGSjGaU6KBkUKenfyhOo(Landroid/util/Pair;Landroid/util/Pair;)I
@@ -3593,6 +3721,7 @@
 HSPLcom/android/server/utils/WatchableImpl;->seal()V
 HSPLcom/android/server/utils/WatchedArrayList$1;->onChange(Lcom/android/server/utils/Watchable;)V+]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/utils/WatchedArrayList;
 HSPLcom/android/server/utils/WatchedArrayList;->get(I)Ljava/lang/Object;+]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/utils/WatchedArrayList;->size()I+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/utils/WatchedArrayList;->snapshot(Lcom/android/server/utils/WatchedArrayList;Lcom/android/server/utils/WatchedArrayList;)V+]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/utils/WatchedArrayList;]Lcom/android/server/utils/WatchedArrayList;Lcom/android/server/utils/WatchedArrayList;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/utils/WatchedArrayMap$1;->onChange(Lcom/android/server/utils/Watchable;)V+]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/utils/WatchedArrayMap;
 HSPLcom/android/server/utils/WatchedArrayMap;-><init>(IZ)V
@@ -3602,7 +3731,7 @@
 HSPLcom/android/server/utils/WatchedArrayMap;->keyAt(I)Ljava/lang/Object;
 HSPLcom/android/server/utils/WatchedArrayMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
 HSPLcom/android/server/utils/WatchedArrayMap;->putAll(Ljava/util/Map;)V+]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;]Ljava/util/Iterator;Ljava/util/Collections$UnmodifiableCollection$1;]Ljava/util/Map$Entry;Landroid/util/MapCollections$MapIterator;]Ljava/util/Map;Lcom/android/server/utils/WatchedArrayMap;]Ljava/util/Set;Ljava/util/Collections$UnmodifiableSet;
-HSPLcom/android/server/utils/WatchedArrayMap;->registerChild(Ljava/lang/Object;)V+]Lcom/android/server/utils/Watchable;Lcom/android/server/pm/PackageSetting;,Lcom/android/server/pm/SharedUserSetting;,Lcom/android/server/utils/WatchedLongSparseArray;
+HSPLcom/android/server/utils/WatchedArrayMap;->registerChild(Ljava/lang/Object;)V+]Lcom/android/server/utils/Watchable;Lcom/android/server/pm/PackageSetting;,Lcom/android/server/storage/WatchedVolumeInfo;,Lcom/android/server/utils/WatchedLongSparseArray;
 HSPLcom/android/server/utils/WatchedArrayMap;->size()I
 HSPLcom/android/server/utils/WatchedArrayMap;->snapshot(Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;)V+]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/utils/WatchedArrayMap;]Lcom/android/server/utils/WatchedArrayMap;Lcom/android/server/utils/WatchedArrayMap;
 HSPLcom/android/server/utils/WatchedArrayMap;->untrackedStorage()Landroid/util/ArrayMap;
@@ -3613,6 +3742,7 @@
 HSPLcom/android/server/utils/WatchedArraySet;->contains(Ljava/lang/Object;)Z
 HSPLcom/android/server/utils/WatchedArraySet;->registerChild(Ljava/lang/Object;)V+]Lcom/android/server/utils/Watchable;Lcom/android/server/pm/PackageSetting;
 HSPLcom/android/server/utils/WatchedArraySet;->registerObserver(Lcom/android/server/utils/Watcher;)V
+HSPLcom/android/server/utils/WatchedArraySet;->size()I
 HSPLcom/android/server/utils/WatchedArraySet;->snapshot(Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet;)V+]Lcom/android/server/utils/WatchableImpl;Lcom/android/server/utils/WatchedArraySet;]Lcom/android/server/utils/WatchedArraySet;Lcom/android/server/utils/WatchedArraySet;
 HSPLcom/android/server/utils/WatchedArraySet;->untrackedStorage()Landroid/util/ArraySet;
 HSPLcom/android/server/utils/WatchedArraySet;->valueAt(I)Ljava/lang/Object;
@@ -3637,7 +3767,7 @@
 HPLcom/android/server/utils/WatchedSparseBooleanMatrix;->valueAtInternal(II)Z
 HSPLcom/android/server/utils/WatchedSparseSetArray;-><init>(Lcom/android/server/utils/WatchedSparseSetArray;)V+]Lcom/android/server/utils/WatchedSparseSetArray;Lcom/android/server/utils/WatchedSparseSetArray;
 HSPLcom/android/server/utils/WatchedSparseSetArray;->add(ILjava/lang/Object;)Z+]Landroid/util/SparseSetArray;Landroid/util/SparseSetArray;
-HPLcom/android/server/utils/WatchedSparseSetArray;->contains(ILjava/lang/Object;)Z+]Landroid/util/SparseSetArray;Landroid/util/SparseSetArray;
+HSPLcom/android/server/utils/WatchedSparseSetArray;->contains(ILjava/lang/Object;)Z+]Landroid/util/SparseSetArray;Landroid/util/SparseSetArray;
 HSPLcom/android/server/utils/quota/Category;->equals(Ljava/lang/Object;)Z
 HSPLcom/android/server/utils/quota/Category;->hashCode()I
 HSPLcom/android/server/utils/quota/CountQuotaTracker;->getExecutionStatsLocked(ILjava/lang/String;Ljava/lang/String;)Lcom/android/server/utils/quota/CountQuotaTracker$ExecutionStats;
@@ -3655,7 +3785,7 @@
 HPLcom/android/server/vibrator/VibrationStats$StatsInfo;-><init>(IIILcom/android/server/vibrator/VibrationSession$Status;Lcom/android/server/vibrator/VibrationStats;)V
 HPLcom/android/server/webkit/WebViewUpdateService$BinderService;->grantVisibilityToCaller(Ljava/lang/String;I)V+]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;
 HSPLcom/android/server/wm/AccessibilityController;->hasCallbacks()Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;
-HSPLcom/android/server/wm/ActivityRecord;-><init>(Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/WindowProcessController;IILjava/lang/String;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Landroid/content/pm/ActivityInfo;Landroid/content/res/Configuration;Lcom/android/server/wm/ActivityRecord;Ljava/lang/String;IZZLcom/android/server/wm/ActivityTaskSupervisor;Landroid/app/ActivityOptions;Lcom/android/server/wm/ActivityRecord;Landroid/os/PersistableBundle;Landroid/app/ActivityManager$TaskDescription;J)V
+HSPLcom/android/server/wm/ActivityRecord;-><init>(Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/WindowProcessController;IILjava/lang/String;Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;Landroid/content/pm/ActivityInfo;Landroid/content/res/Configuration;Lcom/android/server/wm/ActivityRecord;Ljava/lang/String;IZZLcom/android/server/wm/ActivityTaskSupervisor;Landroid/app/ActivityOptions;Lcom/android/server/wm/ActivityRecord;Landroid/os/PersistableBundle;Landroid/app/ActivityManager$TaskDescription;J)V+]Landroid/app/ActivityOptions$SceneTransitionInfo;Landroid/app/ActivityOptions$SceneTransitionInfo;]Landroid/app/ActivityOptions;Landroid/app/ActivityOptions;]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Landroid/content/res/Resources;Landroid/content/res/Resources;]Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;]Lcom/android/server/display/color/ColorDisplayService$ColorDisplayServiceInternal;Lcom/android/server/display/color/ColorDisplayService$ColorDisplayServiceInternal;]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;]Lcom/android/server/wm/PackageConfigPersister;Lcom/android/server/wm/PackageConfigPersister;
 HSPLcom/android/server/wm/ActivityRecord;->canAffectSystemUiFlags()Z+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;
 HSPLcom/android/server/wm/ActivityRecord;->canBeTopRunning()Z
 HSPLcom/android/server/wm/ActivityRecord;->canReceiveKeys()Z+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;
@@ -3664,6 +3794,7 @@
 HSPLcom/android/server/wm/ActivityRecord;->containsShowWhenLockedWindow()Z+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/ActivityRecord;->containsTurnScreenOnWindow()Z+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/ActivityRecord;->findMainWindow(Z)Lcom/android/server/wm/WindowState;+]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/wm/ActivityRecord;->forAllActivities(Ljava/util/function/Predicate;Z)Z+]Ljava/util/function/Predicate;megamorphic_types
 HSPLcom/android/server/wm/ActivityRecord;->getActivity(Ljava/util/function/Predicate;ZLcom/android/server/wm/ActivityRecord;)Lcom/android/server/wm/ActivityRecord;+]Ljava/util/function/Predicate;megamorphic_types
 HSPLcom/android/server/wm/ActivityRecord;->getAppCompatState(Z)I+]Lcom/android/server/wm/AppCompatAspectRatioPolicy;Lcom/android/server/wm/AppCompatAspectRatioPolicy;]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatSizeCompatModePolicy;Lcom/android/server/wm/AppCompatSizeCompatModePolicy;]Lcom/android/server/wm/TransparentPolicy;Lcom/android/server/wm/TransparentPolicy;
 HSPLcom/android/server/wm/ActivityRecord;->getBounds()Landroid/graphics/Rect;+]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/TransparentPolicy;Lcom/android/server/wm/TransparentPolicy;
@@ -3672,6 +3803,7 @@
 HSPLcom/android/server/wm/ActivityRecord;->getTask()Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/ActivityRecord;->getTaskFragment()Lcom/android/server/wm/TaskFragment;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;
 HSPLcom/android/server/wm/ActivityRecord;->hasSizeCompatBounds()Z+]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatSizeCompatModePolicy;Lcom/android/server/wm/AppCompatSizeCompatModePolicy;
+HSPLcom/android/server/wm/ActivityRecord;->isFocusable()Z
 HPLcom/android/server/wm/ActivityRecord;->isFullyTransparentBarAllowed(Landroid/graphics/Rect;)Z+]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatLetterboxPolicy;Lcom/android/server/wm/AppCompatLetterboxPolicy;
 HSPLcom/android/server/wm/ActivityRecord;->isVisible()Z
 HSPLcom/android/server/wm/ActivityRecord;->isWaitingForTransitionStart()Z+]Lcom/android/server/wm/AppTransition;Lcom/android/server/wm/AppTransition;
@@ -3679,7 +3811,7 @@
 HSPLcom/android/server/wm/ActivityRecord;->prepareSurfaces()V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/ActivityRecordInputSink;Lcom/android/server/wm/ActivityRecordInputSink;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/ActivityRecord;->setState(Lcom/android/server/wm/ActivityRecord$State;Ljava/lang/String;)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/UnknownAppVisibilityController;Lcom/android/server/wm/UnknownAppVisibilityController;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
 HSPLcom/android/server/wm/ActivityRecord;->setVisibility(ZZ)V+]Lcom/android/server/wm/AppTransition;Lcom/android/server/wm/AppTransition;]Lcom/android/server/wm/BackNavigationController;Lcom/android/server/wm/BackNavigationController;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/Transition;Lcom/android/server/wm/Transition;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Ljava/util/ArrayList;Ljava/util/ArrayList;
-HSPLcom/android/server/wm/ActivityRecord;->shouldBeVisibleUnchecked()Z+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/KeyguardController;Lcom/android/server/wm/KeyguardController;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;
+HSPLcom/android/server/wm/ActivityRecord;->shouldBeVisibleUnchecked()Z+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/KeyguardController;Lcom/android/server/wm/KeyguardController;]Lcom/android/server/wm/PresentationController;Lcom/android/server/wm/PresentationController;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/ActivityRecord;->shouldMakeActive(Lcom/android/server/wm/ActivityRecord;)Z+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/ActivityRecord;->showToCurrentUser()Z+]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;
 HSPLcom/android/server/wm/ActivityRecord;->toString()Ljava/lang/String;+]Landroid/content/Intent;Landroid/content/Intent;
@@ -3689,36 +3821,41 @@
 HSPLcom/android/server/wm/ActivityRecordInputSink;->applyChangesToSurfaceIfChanged(Landroid/view/SurfaceControl$Transaction;)V+]Lcom/android/server/wm/InputWindowHandleWrapper;Lcom/android/server/wm/InputWindowHandleWrapper;
 HSPLcom/android/server/wm/ActivityRecordInputSink;->getInputWindowHandleWrapper()Lcom/android/server/wm/InputWindowHandleWrapper;+]Lcom/android/server/wm/InputWindowHandleWrapper;Lcom/android/server/wm/InputWindowHandleWrapper;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/ActivityStarter$$ExternalSyntheticLambda0;->test(Ljava/lang/Object;)Z
+HSPLcom/android/server/wm/ActivityStarter;->executeRequest(Lcom/android/server/wm/ActivityStarter$Request;)I+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/firewall/IntentFirewall;Lcom/android/server/firewall/IntentFirewall;]Lcom/android/server/policy/PermissionPolicyInternal;Lcom/android/server/policy/PermissionPolicyService$Internal;]Lcom/android/server/wm/ActivityStartController;Lcom/android/server/wm/ActivityStartController;]Lcom/android/server/wm/ActivityStartInterceptor;Lcom/android/server/wm/ActivityStartInterceptor;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/BackgroundActivityStartController$BalVerdict;Lcom/android/server/wm/BackgroundActivityStartController$BalVerdict;]Lcom/android/server/wm/BackgroundActivityStartController;Lcom/android/server/wm/BackgroundActivityStartController;]Lcom/android/server/wm/PendingRemoteAnimationRegistry;Lcom/android/server/wm/PendingRemoteAnimationRegistry;]Lcom/android/server/wm/SafeActivityOptions;Lcom/android/server/wm/SafeActivityOptions;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
 HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->attachApplication(Lcom/android/server/wm/WindowProcessController;)Z+]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;
+HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->getTaskToShowPermissionDialogOn(Ljava/lang/String;I)I+]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;
 HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->getTopApp()Lcom/android/server/wm/WindowProcessController;
 HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->getTopProcessState()I
 HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->isCallerRecents(I)Z+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;
 HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->isSleeping()Z
-HPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->isUidForeground(I)Z+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;
+HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->isUidForeground(I)Z+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;
 HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->onProcessAdded(Lcom/android/server/wm/WindowProcessController;)V+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;]Lcom/android/server/wm/PackageConfigPersister;Lcom/android/server/wm/PackageConfigPersister;
 HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->onProcessRemoved(Ljava/lang/String;I)V+]Lcom/android/internal/app/ProcessMap;Lcom/android/internal/app/ProcessMap;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->onUidProcStateChanged(II)V+]Lcom/android/server/wm/MirrorActiveUids;Lcom/android/server/wm/MirrorActiveUids;
 HSPLcom/android/server/wm/ActivityTaskManagerService$LocalService;->preBindApplication(Lcom/android/server/wm/WindowProcessController;Landroid/content/pm/ApplicationInfo;)Lcom/android/server/wm/ActivityTaskManagerInternal$PreBindInfo;+]Lcom/android/server/wm/ActivityMetricsLogger;Lcom/android/server/wm/ActivityMetricsLogger;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowProcessController;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/ActivityTaskManagerService;->continueWindowLayout()V+]Lcom/android/server/wm/ClientLifecycleManager;Lcom/android/server/wm/ClientLifecycleManager;]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer;
 HSPLcom/android/server/wm/ActivityTaskManagerService;->deferWindowLayout()V+]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer;
-HPLcom/android/server/wm/ActivityTaskManagerService;->getLastStopAppSwitchesTime()J
+HSPLcom/android/server/wm/ActivityTaskManagerService;->getLastStopAppSwitchesTime()J
 HSPLcom/android/server/wm/ActivityTaskManagerService;->getLifecycleManager()Lcom/android/server/wm/ClientLifecycleManager;
 HSPLcom/android/server/wm/ActivityTaskManagerService;->getTasks(IZZI)Ljava/util/List;+]Lcom/android/server/pm/UserManagerService;Lcom/android/server/pm/UserManagerService;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;
-HPLcom/android/server/wm/ActivityTaskManagerService;->hasActiveVisibleWindow(I)Z+]Lcom/android/server/wm/MirrorActiveUids;Lcom/android/server/wm/MirrorActiveUids;]Lcom/android/server/wm/VisibleActivityProcessTracker;Lcom/android/server/wm/VisibleActivityProcessTracker;
+HSPLcom/android/server/wm/ActivityTaskManagerService;->hasActiveVisibleWindow(I)Z+]Lcom/android/server/wm/MirrorActiveUids;Lcom/android/server/wm/MirrorActiveUids;]Lcom/android/server/wm/VisibleActivityProcessTracker;Lcom/android/server/wm/VisibleActivityProcessTracker;
 HSPLcom/android/server/wm/ActivityTaskManagerService;->isCallerRecents(I)Z+]Lcom/android/server/wm/RecentTasks;Lcom/android/server/wm/RecentTasks;
 HSPLcom/android/server/wm/ActivityTaskManagerService;->isGetTasksAllowed(Ljava/lang/String;II)Z+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;
-HSPLcom/android/server/wm/ActivityTaskSupervisor$OpaqueActivityHelper;->getVisibleOpaqueActivity(Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;Z)Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;
-HSPLcom/android/server/wm/ActivityTaskSupervisor$OpaqueActivityHelper;->test(Lcom/android/server/wm/ActivityRecord;)Z
 HSPLcom/android/server/wm/ActivityTaskSupervisor$TaskInfoHelper;->accept(Lcom/android/server/wm/ActivityRecord;)V+]Landroid/app/TaskInfo;Landroid/app/ActivityManager$RecentTaskInfo;,Landroid/app/ActivityManager$RunningTaskInfo;,Landroid/app/ActivityTaskManager$RootTaskInfo;
+HSPLcom/android/server/wm/ActivityTaskSupervisor$TaskInfoHelper;->accept(Ljava/lang/Object;)V+]Lcom/android/server/wm/ActivityTaskSupervisor$TaskInfoHelper;Lcom/android/server/wm/ActivityTaskSupervisor$TaskInfoHelper;
 HSPLcom/android/server/wm/ActivityTaskSupervisor$TaskInfoHelper;->fillAndReturnTop(Lcom/android/server/wm/Task;Landroid/app/TaskInfo;)Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;
+HSPLcom/android/server/wm/ActivityTaskSupervisor$TaskInfoHelper;->setCapturedLink(Lcom/android/server/wm/ActivityRecord;)V+]Landroid/content/Intent;Landroid/content/Intent;]Landroid/net/Uri;Landroid/net/Uri$HierarchicalUri;,Landroid/net/Uri$StringUri;
 HSPLcom/android/server/wm/ActivityTaskSupervisor;->beginActivityVisibilityUpdate()V+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/KeyguardController;Lcom/android/server/wm/KeyguardController;
+HSPLcom/android/server/wm/ActivityTaskSupervisor;->endActivityVisibilityUpdate()V+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;
 HSPLcom/android/server/wm/ActivityTaskSupervisor;->getKeyguardController()Lcom/android/server/wm/KeyguardController;
 HSPLcom/android/server/wm/AppCompatAspectRatioOverrides$$ExternalSyntheticLambda0;->getAsBoolean()Z
 HSPLcom/android/server/wm/AppCompatAspectRatioOverrides$$ExternalSyntheticLambda1;->getAsBoolean()Z
 HSPLcom/android/server/wm/AppCompatAspectRatioOverrides$UserAspectRatioState;->getUserAspectRatio(Lcom/android/server/wm/ActivityRecord;)I+]Landroid/content/pm/IPackageManager;Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;
+HSPLcom/android/server/wm/AppCompatAspectRatioOverrides;->getAllowUserAspectRatioOverridePropertyValue()Z+]Lcom/android/server/wm/utils/OptPropFactory$OptProp;Lcom/android/server/wm/utils/OptPropFactory$OptProp;
 HSPLcom/android/server/wm/AppCompatAspectRatioOverrides;->getUserMinAspectRatioOverrideCode()I
 HSPLcom/android/server/wm/AppCompatAspectRatioOverrides;->isSystemOverrideToFullscreenEnabled()Z+]Lcom/android/server/wm/AppCompatAspectRatioOverrides;Lcom/android/server/wm/AppCompatAspectRatioOverrides;]Lcom/android/server/wm/utils/OptPropFactory$OptProp;Lcom/android/server/wm/utils/OptPropFactory$OptProp;
 HSPLcom/android/server/wm/AppCompatAspectRatioOverrides;->isUserFullscreenOverrideEnabled()Z+]Lcom/android/server/wm/utils/OptPropFactory$OptProp;Lcom/android/server/wm/utils/OptPropFactory$OptProp;
+HSPLcom/android/server/wm/AppCompatAspectRatioOverrides;->shouldApplyUserFullscreenOverride()Z+]Lcom/android/server/wm/AppCompatAspectRatioOverrides;Lcom/android/server/wm/AppCompatAspectRatioOverrides;
 HSPLcom/android/server/wm/AppCompatAspectRatioOverrides;->shouldEnableUserAspectRatioSettings()Z+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/utils/OptPropFactory$OptProp;Lcom/android/server/wm/utils/OptPropFactory$OptProp;
 HSPLcom/android/server/wm/AppCompatAspectRatioOverrides;->shouldOverrideMinAspectRatio()Z+]Lcom/android/server/wm/utils/OptPropFactory$OptProp;Lcom/android/server/wm/utils/OptPropFactory$OptProp;
 HSPLcom/android/server/wm/AppCompatAspectRatioPolicy$AppCompatAspectRatioState;->isLetterboxedForAspectRatioOnly()Z
@@ -3730,21 +3867,22 @@
 HSPLcom/android/server/wm/AppCompatConfiguration;->getDefaultLetterboxBackgroundType()I
 HSPLcom/android/server/wm/AppCompatConfiguration;->isUserAppAspectRatioFullscreenEnabled()Z
 HSPLcom/android/server/wm/AppCompatConfiguration;->isUserAppAspectRatioSettingsEnabled()Z
+HSPLcom/android/server/wm/AppCompatController;->getSizeCompatModePolicy()Lcom/android/server/wm/AppCompatSizeCompatModePolicy;
 HSPLcom/android/server/wm/AppCompatController;->getTransparentPolicy()Lcom/android/server/wm/TransparentPolicy;
 HSPLcom/android/server/wm/AppCompatLetterboxOverrides;->getLetterboxBackgroundType()I
+HSPLcom/android/server/wm/AppCompatLetterboxOverrides;->isLetterboxEducationEnabled()Z
 HSPLcom/android/server/wm/AppCompatLetterboxPolicy$$ExternalSyntheticLambda0;->test(Ljava/lang/Object;)Z
-HSPLcom/android/server/wm/AppCompatLetterboxPolicy$LegacyLetterboxPolicyState;->isRunning()Z
 HSPLcom/android/server/wm/AppCompatLetterboxPolicy$LegacyLetterboxPolicyState;->updateLetterboxSurfaceIfNeeded(Lcom/android/server/wm/WindowState;Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;)V+]Lcom/android/server/wm/AppCompatLetterboxPolicy$LegacyLetterboxPolicyState;Lcom/android/server/wm/AppCompatLetterboxPolicy$LegacyLetterboxPolicyState;]Lcom/android/server/wm/AppCompatLetterboxPolicy;Lcom/android/server/wm/AppCompatLetterboxPolicy;]Lcom/android/server/wm/Letterbox;Lcom/android/server/wm/Letterbox;
 HSPLcom/android/server/wm/AppCompatLetterboxPolicy;->getLetterboxDetails()Lcom/android/internal/statusbar/LetterboxDetails;+]Lcom/android/server/wm/AppCompatLetterboxPolicy;Lcom/android/server/wm/AppCompatLetterboxPolicy;]Lcom/android/server/wm/AppCompatLetterboxPolicyState;Lcom/android/server/wm/AppCompatLetterboxPolicy$LegacyLetterboxPolicyState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
-HPLcom/android/server/wm/AppCompatLetterboxPolicy;->isFullyTransparentBarAllowed(Landroid/graphics/Rect;)Z+]Lcom/android/server/wm/AppCompatLetterboxPolicyState;Lcom/android/server/wm/AppCompatLetterboxPolicy$LegacyLetterboxPolicyState;
-HSPLcom/android/server/wm/AppCompatLetterboxPolicy;->shouldNotLayoutLetterbox(Lcom/android/server/wm/WindowState;)Z
+HSPLcom/android/server/wm/AppCompatLetterboxPolicy;->shouldNotLayoutLetterbox(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/AppCompatLetterboxPolicy;->shouldShowLetterboxUi(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatOrientationOverrides;Lcom/android/server/wm/AppCompatOrientationOverrides;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/AppCompatLetterboxPolicy;->start(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/AppCompatLetterboxPolicy;Lcom/android/server/wm/AppCompatLetterboxPolicy;]Lcom/android/server/wm/AppCompatLetterboxPolicyState;Lcom/android/server/wm/AppCompatLetterboxPolicy$LegacyLetterboxPolicyState;]Lcom/android/server/wm/AppCompatRoundedCorners;Lcom/android/server/wm/AppCompatRoundedCorners;
 HSPLcom/android/server/wm/AppCompatLetterboxPolicy;->updateLetterboxSurfaceIfNeeded(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/AppCompatLetterboxPolicyState;Lcom/android/server/wm/AppCompatLetterboxPolicy$LegacyLetterboxPolicyState;
 HSPLcom/android/server/wm/AppCompatLetterboxPolicy;->updateWallpaperForLetterbox(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatLetterboxOverrides;Lcom/android/server/wm/AppCompatLetterboxOverrides;
 HSPLcom/android/server/wm/AppCompatOrientationOverrides;->getIsRelaunchingAfterRequestedOrientationChanged()Z
-HSPLcom/android/server/wm/AppCompatOrientationPolicy;->overrideOrientationIfNeeded(I)I+]Lcom/android/server/wm/AppCompatAspectRatioOverrides;Lcom/android/server/wm/AppCompatAspectRatioOverrides;]Lcom/android/server/wm/AppCompatCameraOverrides;Lcom/android/server/wm/AppCompatCameraOverrides;]Lcom/android/server/wm/AppCompatOrientationOverrides;Lcom/android/server/wm/AppCompatOrientationOverrides;]Lcom/android/server/wm/AppCompatOverrides;Lcom/android/server/wm/AppCompatOverrides;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;
+HSPLcom/android/server/wm/AppCompatOrientationPolicy;->overrideOrientationIfNeeded(I)I+]Lcom/android/server/wm/AppCompatAspectRatioOverrides;Lcom/android/server/wm/AppCompatAspectRatioOverrides;]Lcom/android/server/wm/AppCompatCameraOverrides;Lcom/android/server/wm/AppCompatCameraOverrides;]Lcom/android/server/wm/AppCompatOrientationOverrides;Lcom/android/server/wm/AppCompatOrientationOverrides;]Lcom/android/server/wm/AppCompatOverrides;Lcom/android/server/wm/AppCompatOverrides;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;
 HSPLcom/android/server/wm/AppCompatReachabilityOverrides$ReachabilityState;->isFromDoubleTap()Z
+HSPLcom/android/server/wm/AppCompatReachabilityOverrides;->isFromDoubleTap()Z+]Lcom/android/server/wm/AppCompatReachabilityOverrides$ReachabilityState;Lcom/android/server/wm/AppCompatReachabilityOverrides$ReachabilityState;
 HSPLcom/android/server/wm/AppCompatRoundedCorners;->requiresRoundedCorners(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatLetterboxOverrides;Lcom/android/server/wm/AppCompatLetterboxOverrides;]Ljava/util/function/Predicate;Lcom/android/server/wm/AppCompatLetterboxPolicy$$ExternalSyntheticLambda0;
 HSPLcom/android/server/wm/AppCompatRoundedCorners;->updateRoundedCornersIfNeeded(Lcom/android/server/wm/WindowState;)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/AppCompatRoundedCorners;Lcom/android/server/wm/AppCompatRoundedCorners;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/AppCompatSizeCompatModePolicy;->getAppCompatDisplayInsets()Lcom/android/server/wm/AppCompatDisplayInsets;+]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/TransparentPolicy;Lcom/android/server/wm/TransparentPolicy;
@@ -3755,22 +3893,22 @@
 HSPLcom/android/server/wm/AppCompatUtils;->fillAppCompatTaskInfo(Lcom/android/server/wm/Task;Landroid/app/TaskInfo;Lcom/android/server/wm/ActivityRecord;)V+]Landroid/app/AppCompatTaskInfo;Landroid/app/AppCompatTaskInfo;]Lcom/android/server/wm/AppCompatAspectRatioOverrides;Lcom/android/server/wm/AppCompatAspectRatioOverrides;]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatLetterboxOverrides;Lcom/android/server/wm/AppCompatLetterboxOverrides;]Lcom/android/server/wm/AppCompatLetterboxPolicy;Lcom/android/server/wm/AppCompatLetterboxPolicy;]Lcom/android/server/wm/AppCompatReachabilityOverrides;Lcom/android/server/wm/AppCompatReachabilityOverrides;]Lcom/android/server/wm/DesktopAppCompatAspectRatioPolicy;Lcom/android/server/wm/DesktopAppCompatAspectRatioPolicy;
 HSPLcom/android/server/wm/AppCompatUtils;->getAppBounds(Lcom/android/server/wm/ActivityRecord;)Landroid/graphics/Rect;+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/TransparentPolicy;Lcom/android/server/wm/TransparentPolicy;
 HSPLcom/android/server/wm/AppCompatUtils;->isChangeEnabled(Lcom/android/server/wm/ActivityRecord;J)Z+]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;
-HSPLcom/android/server/wm/AppTransition;->isRunning()Z
 HSPLcom/android/server/wm/AppTransition;->isTransitionSet()Z+]Ljava/util/ArrayList;Ljava/util/ArrayList;
-HSPLcom/android/server/wm/BLASTSyncEngine$SyncGroup;->finishNow()V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/BLASTSyncEngine$TransactionReadyListener;Lcom/android/server/wm/Transition;,Lcom/android/server/wm/WindowOrganizerController;]Lcom/android/server/wm/WindowAnimator;Lcom/android/server/wm/WindowAnimator;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/lang/Runnable;Lcom/android/server/wm/TransitionController$$ExternalSyntheticLambda3;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/Iterator;Landroid/util/MapCollections$ArrayIterator;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda24;
+HSPLcom/android/server/wm/BLASTSyncEngine$SyncGroup;->finishNow()V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/BLASTSyncEngine$TransactionReadyListener;Lcom/android/server/wm/Transition;,Lcom/android/server/wm/WindowOrganizerController;]Lcom/android/server/wm/WindowAnimator;Lcom/android/server/wm/WindowAnimator;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/lang/Runnable;Lcom/android/server/wm/TransitionController$$ExternalSyntheticLambda3;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda24;,Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda26;
 HSPLcom/android/server/wm/BLASTSyncEngine;->getSyncSet(I)Lcom/android/server/wm/BLASTSyncEngine$SyncGroup;+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/BLASTSyncEngine;->onSurfacePlacement()V+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/BackNavigationController;->shouldPauseTouch(Lcom/android/server/wm/WindowContainer;)Z+]Lcom/android/server/wm/BackNavigationController$AnimationHandler;Lcom/android/server/wm/BackNavigationController$AnimationHandler;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;
 HSPLcom/android/server/wm/BackgroundLaunchProcessController;->addBoundClientUid(ILjava/lang/String;J)V+]Landroid/util/IntArray;Landroid/util/IntArray;
-HPLcom/android/server/wm/BackgroundLaunchProcessController;->areBackgroundActivityStartsAllowed(IILjava/lang/String;ILcom/android/server/wm/BackgroundLaunchProcessController$BalCheckConfiguration;ZZJJJ)Lcom/android/server/wm/BackgroundActivityStartController$BalVerdict;
+HSPLcom/android/server/wm/BackgroundLaunchProcessController;->areBackgroundActivityStartsAllowed(IILjava/lang/String;ILcom/android/server/wm/BackgroundLaunchProcessController$BalCheckConfiguration;ZZJJJ)Lcom/android/server/wm/BackgroundActivityStartController$BalVerdict;
 HSPLcom/android/server/wm/BackgroundLaunchProcessController;->clearBalOptInBoundClientUids()V+]Landroid/util/IntArray;Landroid/util/IntArray;
-HPLcom/android/server/wm/BackgroundLaunchProcessController;->isBackgroundStartAllowedByToken(ILjava/lang/String;Z)Z+]Landroid/app/BackgroundStartPrivileges;Landroid/app/BackgroundStartPrivileges;]Lcom/android/server/wm/BackgroundActivityStartCallback;Lcom/android/server/notification/NotificationManagerService$NotificationTrampolineCallback;]Ljava/util/List;Ljava/util/ArrayList;
-HPLcom/android/server/wm/BackgroundLaunchProcessController;->isBoundByForegroundUid()Z+]Landroid/util/IntArray;Landroid/util/IntArray;]Ljava/util/function/IntPredicate;Lcom/android/server/wm/WindowProcessController$$ExternalSyntheticLambda3;
+HSPLcom/android/server/wm/BackgroundLaunchProcessController;->isBackgroundStartAllowedByToken(ILjava/lang/String;Z)Z+]Landroid/app/BackgroundStartPrivileges;Landroid/app/BackgroundStartPrivileges;]Lcom/android/server/wm/BackgroundActivityStartCallback;Lcom/android/server/notification/NotificationManagerService$NotificationTrampolineCallback;]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/wm/BackgroundLaunchProcessController;->isBoundByForegroundUid()Z+]Landroid/util/IntArray;Landroid/util/IntArray;]Ljava/util/function/IntPredicate;Lcom/android/server/wm/WindowProcessController$$ExternalSyntheticLambda3;
 HSPLcom/android/server/wm/BackgroundLaunchProcessController;->removeAllowBackgroundStartPrivileges(Landroid/os/Binder;)V
 HSPLcom/android/server/wm/ClientLifecycleManager;->dispatchPendingTransactions()V+]Lcom/android/server/wm/ClientLifecycleManager;Lcom/android/server/wm/ClientLifecycleManager;
 HSPLcom/android/server/wm/ClientLifecycleManager;->getOrCreatePendingTransaction(Landroid/app/IApplicationThread;)Landroid/app/servertransaction/ClientTransaction;+]Landroid/app/IApplicationThread;Lcom/android/server/am/ApplicationThreadDeferred;
 HSPLcom/android/server/wm/ClientLifecycleManager;->shouldDispatchPendingTransactionsImmediately()Z+]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer;
 HSPLcom/android/server/wm/CompatModePackages;->compatibilityInfoForPackageLocked(Landroid/content/pm/ApplicationInfo;)Landroid/content/res/CompatibilityInfo;+]Landroid/util/SparseBooleanArray;Landroid/util/SparseBooleanArray;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;
+HSPLcom/android/server/wm/CompatModePackages;->getCompatScale(Ljava/lang/String;IZ)F
 HSPLcom/android/server/wm/CompatModePackages;->getCompatScaleFromProvider(Ljava/lang/String;I)Landroid/content/res/CompatibilityInfo$CompatScale;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/wm/CompatScaleProvider;Lcom/android/server/app/GameManagerService$LocalService;
 HSPLcom/android/server/wm/ConfigurationContainer;-><init>()V
 HSPLcom/android/server/wm/ConfigurationContainer;->applyAppSpecificConfig(Ljava/lang/Integer;Landroid/os/LocaleList;Ljava/lang/Integer;)Z+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WindowProcessController;
@@ -3790,7 +3928,7 @@
 HSPLcom/android/server/wm/ConfigurationContainer;->onMergedOverrideConfigurationChanged()V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types
 HSPLcom/android/server/wm/ConfigurationContainer;->updateRequestedOverrideConfiguration(Landroid/content/res/Configuration;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types
 HSPLcom/android/server/wm/DeferredDisplayUpdater;->calculateDisplayInfoDiff(Landroid/view/DisplayInfo;Landroid/view/DisplayInfo;)I
-HSPLcom/android/server/wm/DeferredDisplayUpdater;->updateDisplayInfo(Ljava/lang/Runnable;)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Ljava/lang/Runnable;Lcom/android/server/wm/DisplayPolicy$$ExternalSyntheticLambda10;,Lcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda27;
+HSPLcom/android/server/wm/DeferredDisplayUpdater;->updateDisplayInfo(Ljava/lang/Runnable;)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Ljava/lang/Runnable;Lcom/android/server/wm/DisplayPolicy$$ExternalSyntheticLambda10;,Lcom/android/server/wm/DisplayPolicy$$ExternalSyntheticLambda9;,Lcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda27;,Lcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda28;
 HSPLcom/android/server/wm/DesktopAppCompatAspectRatioPolicy;->getMinAspectRatio(Lcom/android/server/wm/Task;)F+]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Lcom/android/server/wm/AppCompatAspectRatioOverrides;Lcom/android/server/wm/AppCompatAspectRatioOverrides;]Lcom/android/server/wm/AppCompatOverrides;Lcom/android/server/wm/AppCompatOverrides;]Lcom/android/server/wm/DesktopAppCompatAspectRatioPolicy;Lcom/android/server/wm/DesktopAppCompatAspectRatioPolicy;]Lcom/android/server/wm/TransparentPolicy;Lcom/android/server/wm/TransparentPolicy;
 HSPLcom/android/server/wm/DesktopAppCompatAspectRatioPolicy;->hasMinAspectRatioOverride(Lcom/android/server/wm/Task;)Z+]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;
 HSPLcom/android/server/wm/DesktopAppCompatAspectRatioPolicy;->shouldEnableUserAspectRatioSettings(Lcom/android/server/wm/Task;)Z+]Lcom/android/server/wm/AppCompatAspectRatioOverrides;Lcom/android/server/wm/AppCompatAspectRatioOverrides;]Lcom/android/server/wm/AppCompatOverrides;Lcom/android/server/wm/AppCompatOverrides;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;
@@ -3801,15 +3939,15 @@
 HSPLcom/android/server/wm/DisplayArea$Tokens;->lambda$new$0(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/AppTransition;Lcom/android/server/wm/AppTransition;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/DisplayArea;->asDisplayArea()Lcom/android/server/wm/DisplayArea;
 HSPLcom/android/server/wm/DisplayArea;->forAllLeafTasks(Ljava/util/function/Consumer;Z)V
+HSPLcom/android/server/wm/DisplayArea;->getIgnoreOrientationRequest()Z+]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;
 HSPLcom/android/server/wm/DisplayArea;->getItemFromTaskDisplayAreas(Ljava/util/function/Function;Z)Ljava/lang/Object;+]Lcom/android/server/wm/DisplayArea;megamorphic_types]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/DisplayArea;->getPendingTransaction()Landroid/view/SurfaceControl$Transaction;
 HSPLcom/android/server/wm/DisplayArea;->getRootTask(Ljava/util/function/Predicate;Z)Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/DisplayArea;->getSyncTransaction()Landroid/view/SurfaceControl$Transaction;
-HSPLcom/android/server/wm/DisplayContent$$ExternalSyntheticLambda12;-><init>(Lcom/android/server/wm/DisplayContent;Landroid/graphics/Region;Landroid/graphics/Region;Landroid/graphics/Region;[ILandroid/graphics/Region;Landroid/graphics/Region;)V
-HSPLcom/android/server/wm/DisplayContent$$ExternalSyntheticLambda12;->accept(Ljava/lang/Object;)V
 HSPLcom/android/server/wm/DisplayContent$$ExternalSyntheticLambda2;->apply(Ljava/lang/Object;)Z
 HSPLcom/android/server/wm/DisplayContent$ApplySurfaceChangesTransactionState;->reset()V
 HSPLcom/android/server/wm/DisplayContent$ImeContainer;->forAllWindows(Lcom/android/internal/util/ToBooleanFunction;Z)Z
+HSPLcom/android/server/wm/DisplayContent;->$r8$lambda$Sp8y2Fhps8S4GCPelNMlGu99jRg(Ljava/util/Set;Ljava/util/Set;Landroid/graphics/Matrix;[FLcom/android/server/wm/WindowState;)Z+]Landroid/graphics/Region;Landroid/graphics/Region;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HPLcom/android/server/wm/DisplayContent;->addToGlobalAndConsumeLimit(Landroid/graphics/Region;Landroid/graphics/Region;Landroid/graphics/Rect;ILcom/android/server/wm/WindowState;I)I+]Landroid/graphics/Region;Landroid/graphics/Region;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/DisplayContent;->adjustDisplaySizeRanges(Landroid/view/DisplayInfo;IIIZ)V+]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;
 HSPLcom/android/server/wm/DisplayContent;->applySurfaceChangesTransaction()V+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/DisplayRotation;Lcom/android/server/wm/DisplayRotation;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WallpaperVisibilityListeners;Lcom/android/server/wm/WallpaperVisibilityListeners;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;]Ljava/util/LinkedList;Ljava/util/LinkedList;
@@ -3822,14 +3960,16 @@
 HSPLcom/android/server/wm/DisplayContent;->getDisplayInfo()Landroid/view/DisplayInfo;
 HSPLcom/android/server/wm/DisplayContent;->getDisplayPolicy()Lcom/android/server/wm/DisplayPolicy;
 HSPLcom/android/server/wm/DisplayContent;->getImeTarget(I)Lcom/android/server/wm/InsetsControlTarget;
-HSPLcom/android/server/wm/DisplayContent;->getInputMonitor()Lcom/android/server/wm/InputMonitor;
 HSPLcom/android/server/wm/DisplayContent;->getInsetsPolicy()Lcom/android/server/wm/InsetsPolicy;
 HSPLcom/android/server/wm/DisplayContent;->getInsetsStateController()Lcom/android/server/wm/InsetsStateController;
 HSPLcom/android/server/wm/DisplayContent;->getKeepClearAreas(Ljava/util/Set;Ljava/util/Set;)V+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;
-HSPLcom/android/server/wm/DisplayContent;->getOrientation()I+]Lcom/android/server/wm/AppCompatCameraPolicy;Lcom/android/server/wm/AppCompatCameraPolicy;]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatOrientationOverrides;Lcom/android/server/wm/AppCompatOrientationOverrides;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;
 HSPLcom/android/server/wm/DisplayContent;->handleCompleteDeferredRemoval()Z+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;
+HSPLcom/android/server/wm/DisplayContent;->handleTopActivityLaunchingInDifferentOrientation(Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;Z)Z+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;
 HSPLcom/android/server/wm/DisplayContent;->hasOwnFocus()Z
+HSPLcom/android/server/wm/DisplayContent;->isKeyguardGoingAway()Z+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/KeyguardController;Lcom/android/server/wm/KeyguardController;
 HSPLcom/android/server/wm/DisplayContent;->isLayoutNeeded()Z
+HSPLcom/android/server/wm/DisplayContent;->isSleeping()Z
+HSPLcom/android/server/wm/DisplayContent;->lambda$calculateSystemGestureExclusion$32(Landroid/graphics/Region;Landroid/graphics/Region;Landroid/graphics/Region;[ILandroid/graphics/Region;Landroid/graphics/Region;Lcom/android/server/wm/WindowState;)V+]Landroid/graphics/Region;Landroid/graphics/Region;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/DisplayContent;->lambda$new$1(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/DisplayContent;->lambda$new$3(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/DisplayContent;->lambda$new$4(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList;
@@ -3837,16 +3977,13 @@
 HSPLcom/android/server/wm/DisplayContent;->lambda$new$8(Lcom/android/server/wm/WindowState;)V+]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/RefreshRatePolicy;Lcom/android/server/wm/RefreshRatePolicy;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;]Ljava/util/LinkedList;Ljava/util/LinkedList;
 HSPLcom/android/server/wm/DisplayContent;->makeChildSurface(Lcom/android/server/wm/WindowContainer;)Landroid/view/SurfaceControl$Builder;+]Landroid/view/SurfaceControl$Builder;Landroid/view/SurfaceControl$Builder;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;
 HSPLcom/android/server/wm/DisplayContent;->needsGestureExclusionRestrictions(Lcom/android/server/wm/WindowState;Z)Z+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
-HSPLcom/android/server/wm/DisplayContent;->onDisplayInfoUpdated(Landroid/view/DisplayInfo;)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowContextListenerController;Lcom/android/server/wm/WindowContextListenerController;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;
 HSPLcom/android/server/wm/DisplayContent;->performLayout(ZZ)V
 HSPLcom/android/server/wm/DisplayContent;->performLayoutNoTrace(ZZ)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;
 HSPLcom/android/server/wm/DisplayContent;->prepareSurfaces()V
 HSPLcom/android/server/wm/DisplayContent;->setDisplayMirroring()Z+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;
-HSPLcom/android/server/wm/DisplayContent;->shouldDeferRemoval()Z+]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;
 HSPLcom/android/server/wm/DisplayContent;->shouldImeAttachedToApp()Z+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/DisplayContent$ImeContainer;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent$ImeContainer;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/DisplayContent;->toString()Ljava/lang/String;
 HSPLcom/android/server/wm/DisplayContent;->updateBaseDisplayMetricsIfNeeded(Landroid/view/DisplayInfo;)V+]Lcom/android/server/wm/DeferredDisplayUpdater;Lcom/android/server/wm/DeferredDisplayUpdater;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/DisplayRotation;Lcom/android/server/wm/DisplayRotation;]Lcom/android/server/wm/DisplayWindowSettings;Lcom/android/server/wm/DisplayWindowSettings;
-HSPLcom/android/server/wm/DisplayContent;->updateDisplayInfo(Landroid/view/DisplayInfo;)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;
 HSPLcom/android/server/wm/DisplayContent;->updateFocusedWindowLocked(IZI)Z+]Lcom/android/server/wm/BackNavigationController;Lcom/android/server/wm/BackNavigationController;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/DisplayContent;->updateKeepClearAreas()V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayWindowListenerController;Lcom/android/server/wm/DisplayWindowListenerController;]Ljava/util/Set;Landroid/util/ArraySet;
 HSPLcom/android/server/wm/DisplayContent;->updateOrientation(Z)Z+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayRotation;Lcom/android/server/wm/DisplayRotation;]Lcom/android/server/wm/TaskChangeNotificationController;Lcom/android/server/wm/TaskChangeNotificationController;]Lcom/android/server/wm/WindowContainer;megamorphic_types
@@ -3860,7 +3997,7 @@
 HSPLcom/android/server/wm/DisplayPolicy;->applyKeyguardPolicy(Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/DisplayPolicy;->applyPostLayoutPolicyLw(Lcom/android/server/wm/WindowState;Landroid/view/WindowManager$LayoutParams;Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/wm/AppCompatController;Lcom/android/server/wm/AppCompatController;]Lcom/android/server/wm/AppCompatLetterboxPolicy;Lcom/android/server/wm/AppCompatLetterboxPolicy;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WindowToken;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/DisplayPolicy;->beginPostLayoutPolicyLw()V+]Ljava/util/ArrayList;Ljava/util/ArrayList;
-HPLcom/android/server/wm/DisplayPolicy;->calculateInsetsFrame(Landroid/graphics/Rect;Landroid/graphics/Insets;)V
+HSPLcom/android/server/wm/DisplayPolicy;->calculateInsetsFrame(Landroid/graphics/Rect;Landroid/graphics/Insets;)V
 HSPLcom/android/server/wm/DisplayPolicy;->chooseNavigationBackgroundWindow(Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;Z)Lcom/android/server/wm/WindowState;+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/DisplayPolicy;->configureNavBarOpacity(IZZ)I+]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;
 HSPLcom/android/server/wm/DisplayPolicy;->configureStatusBarOpacity(I)I+]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Ljava/util/ArrayList;Ljava/util/ArrayList;
@@ -3873,7 +4010,6 @@
 HSPLcom/android/server/wm/DisplayPolicy;->getStatusBarManagerInternal()Lcom/android/server/statusbar/StatusBarManagerInternal;
 HPLcom/android/server/wm/DisplayPolicy;->hasBottomNavigationBar()Z
 HSPLcom/android/server/wm/DisplayPolicy;->intersectsAnyInsets(Landroid/graphics/Rect;Landroid/view/InsetsState;I)Z+]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/InsetsState;Landroid/view/InsetsState;
-HSPLcom/android/server/wm/DisplayPolicy;->isFullyTransparentAllowed(Lcom/android/server/wm/WindowState;I)Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/DisplayPolicy;->isImmersiveMode(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/InsetsPolicy;Lcom/android/server/wm/InsetsPolicy;
 HSPLcom/android/server/wm/DisplayPolicy;->isKeyguardShowing()Z+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;
 HPLcom/android/server/wm/DisplayPolicy;->isLightBarAllowed(Lcom/android/server/wm/WindowState;I)Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
@@ -3927,29 +4063,29 @@
 HSPLcom/android/server/wm/InsetsPolicy;->adjustVisibilityForFakeControllingSources(Landroid/view/InsetsState;)Landroid/view/InsetsState;+]Landroid/view/InsetsState;Landroid/view/InsetsState;
 HSPLcom/android/server/wm/InsetsPolicy;->adjustVisibilityForIme(Lcom/android/server/wm/WindowState;Landroid/view/InsetsState;Z)Landroid/view/InsetsState;+]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/InsetsPolicy;->canBeTopFullscreenOpaqueWindow(Lcom/android/server/wm/WindowState;)Z+]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
-HSPLcom/android/server/wm/InsetsPolicy;->enforceInsetsPolicyForTarget(Lcom/android/server/wm/WindowState;Landroid/view/InsetsState;)Landroid/view/InsetsState;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsFrameProvider;Landroid/view/InsetsFrameProvider;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
+HSPLcom/android/server/wm/InsetsPolicy;->enforceInsetsPolicyForTarget(Lcom/android/server/wm/WindowState;Landroid/view/InsetsState;)Landroid/view/InsetsState;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsFrameProvider;Landroid/view/InsetsFrameProvider;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/InsetsPolicy;->forceShowingNavigationBars(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;
-HSPLcom/android/server/wm/InsetsPolicy;->getNavControlTarget(Lcom/android/server/wm/WindowState;Z)Lcom/android/server/wm/InsetsControlTarget;+]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/InsetsPolicy;Lcom/android/server/wm/InsetsPolicy;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
+HSPLcom/android/server/wm/InsetsPolicy;->getNavControlTarget(Lcom/android/server/wm/WindowState;Z)Lcom/android/server/wm/InsetsControlTarget;+]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/InsetsPolicy;Lcom/android/server/wm/InsetsPolicy;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/InsetsPolicy;->getStatusControlTarget(Lcom/android/server/wm/WindowState;Z)Lcom/android/server/wm/InsetsControlTarget;+]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/InsetsPolicy;Lcom/android/server/wm/InsetsPolicy;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/InsetsPolicy;->hasHiddenSources(I)Z+]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;
 HSPLcom/android/server/wm/InsetsPolicy;->remoteInsetsControllerControlsSystemBars(Lcom/android/server/wm/WindowState;)Z+]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;
 HSPLcom/android/server/wm/InsetsPolicy;->updateBarControlTarget(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;
 HSPLcom/android/server/wm/InsetsPolicy;->updateSystemBars(Lcom/android/server/wm/WindowState;ZZ)V+]Lcom/android/server/wm/InsetsPolicy;Lcom/android/server/wm/InsetsPolicy;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;
 HPLcom/android/server/wm/InsetsSourceProvider;->getInsetsHint()Landroid/graphics/Insets;+]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;
-HPLcom/android/server/wm/InsetsSourceProvider;->getSource()Landroid/view/InsetsSource;
+HSPLcom/android/server/wm/InsetsSourceProvider;->getSource()Landroid/view/InsetsSource;
 HPLcom/android/server/wm/InsetsSourceProvider;->getWindowFrameSurfacePosition()Landroid/graphics/Point;+]Landroid/view/InsetsSourceControl;Landroid/view/InsetsSourceControl;]Lcom/android/server/wm/AsyncRotationController;Lcom/android/server/wm/AsyncRotationController;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HPLcom/android/server/wm/InsetsSourceProvider;->isClientVisible()Z
-HPLcom/android/server/wm/InsetsSourceProvider;->onPostLayout()V+]Landroid/view/InsetsSourceControl;Landroid/view/InsetsSourceControl;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
-HPLcom/android/server/wm/InsetsSourceProvider;->overridesFrame(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;
-HPLcom/android/server/wm/InsetsSourceProvider;->setServerVisible(Z)V+]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;
+HSPLcom/android/server/wm/InsetsSourceProvider;->onPostLayout()V+]Landroid/view/InsetsSourceControl;Landroid/view/InsetsSourceControl;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
+HSPLcom/android/server/wm/InsetsSourceProvider;->overridesFrame(I)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;
+HSPLcom/android/server/wm/InsetsSourceProvider;->setServerVisible(Z)V+]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;
 HPLcom/android/server/wm/InsetsSourceProvider;->updateControlForTarget(Lcom/android/server/wm/InsetsControlTarget;ZLandroid/view/inputmethod/ImeTracker$Token;)V+]Landroid/graphics/Point;Landroid/graphics/Point;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InsetsControlTarget;Lcom/android/server/wm/DisplayContent$RemoteInsetsControlTarget;,Lcom/android/server/wm/InsetsStateController$1;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/DisplayArea;,Lcom/android/server/wm/WindowState;
 HPLcom/android/server/wm/InsetsSourceProvider;->updateInsetsControlPosition(Lcom/android/server/wm/WindowState;)Z+]Landroid/graphics/Point;Landroid/graphics/Point;]Lcom/android/server/wm/AsyncRotationController;Lcom/android/server/wm/AsyncRotationController;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowFrames;Lcom/android/server/wm/WindowFrames;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;]Ljava/util/function/Consumer;Lcom/android/server/wm/InsetsSourceProvider$$ExternalSyntheticLambda0;
 HPLcom/android/server/wm/InsetsSourceProvider;->updateInsetsHint()Z+]Landroid/view/InsetsSourceControl;Landroid/view/InsetsSourceControl;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;
 HPLcom/android/server/wm/InsetsSourceProvider;->updateSourceFrame(Landroid/graphics/Rect;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Lcom/android/internal/util/function/TriFunction;Lcom/android/server/wm/DisplayPolicy$$ExternalSyntheticLambda0;,Lcom/android/server/wm/DisplayPolicy$$ExternalSyntheticLambda11;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;
-HPLcom/android/server/wm/InsetsSourceProvider;->updateSourceFrameForServerVisibility()V+]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;
-HPLcom/android/server/wm/InsetsSourceProvider;->updateVisibility()V+]Landroid/view/InsetsSource;Landroid/view/InsetsSource;
+HSPLcom/android/server/wm/InsetsSourceProvider;->updateSourceFrameForServerVisibility()V+]Landroid/view/InsetsSource;Landroid/view/InsetsSource;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;
+HSPLcom/android/server/wm/InsetsSourceProvider;->updateVisibility()V+]Landroid/view/InsetsSource;Landroid/view/InsetsSource;
 HPLcom/android/server/wm/InsetsStateController;->getImeSourceProvider()Lcom/android/server/wm/ImeInsetsSourceProvider;+]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;
-HPLcom/android/server/wm/InsetsStateController;->getOrCreateSourceProvider(II)Lcom/android/server/wm/InsetsSourceProvider;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;
+HSPLcom/android/server/wm/InsetsStateController;->getOrCreateSourceProvider(II)Lcom/android/server/wm/InsetsSourceProvider;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/view/InsetsState;Landroid/view/InsetsState;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;
 HSPLcom/android/server/wm/InsetsStateController;->getRawInsetsState()Landroid/view/InsetsState;
 HPLcom/android/server/wm/InsetsStateController;->lambda$notifyPendingInsetsControlChanged$4(ILandroid/util/SparseLongArray;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InsetsControlTarget;Lcom/android/server/wm/DisplayContent$RemoteInsetsControlTarget;,Lcom/android/server/wm/InsetsPolicy$ControlTarget;,Lcom/android/server/wm/InsetsStateController$1;,Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/InsetsSourceProvider;Lcom/android/server/wm/ImeInsetsSourceProvider;,Lcom/android/server/wm/InsetsSourceProvider;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/InsetsStateController;->notifyPendingInsetsControlChanged()V+]Landroid/util/SparseLongArray;Landroid/util/SparseLongArray;]Lcom/android/server/wm/WindowAnimator;Lcom/android/server/wm/WindowAnimator;
@@ -3961,9 +4097,9 @@
 HSPLcom/android/server/wm/KeyguardController;->updateVisibility()V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/KeyguardController$KeyguardDisplayState;Lcom/android/server/wm/KeyguardController$KeyguardDisplayState;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/RootWindowContainer;
 HSPLcom/android/server/wm/MirrorActiveUids;->hasNonAppVisibleWindow(I)Z+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;
 HSPLcom/android/server/wm/MirrorActiveUids;->onUidProcStateChanged(II)V+]Landroid/util/SparseIntArray;Landroid/util/SparseIntArray;
-HPLcom/android/server/wm/PointerEventDispatcher;->onInputEvent(Landroid/view/InputEvent;)V+]Landroid/view/WindowManagerPolicyConstants$PointerEventListener;Lcom/android/server/wm/RecentTasks$1;,Lcom/android/server/wm/SystemGesturesPointerEventListener;
+HPLcom/android/server/wm/PackageConfigPersister;->findPackageConfiguration(Ljava/lang/String;I)Lcom/android/server/wm/ActivityTaskManagerInternal$PackageConfig;
+HPLcom/android/server/wm/PointerEventDispatcher;->onInputEvent(Landroid/view/InputEvent;)V+]Landroid/view/WindowManagerPolicyConstants$PointerEventListener;Lcom/android/internal/widget/PointerLocationView;,Lcom/android/server/wm/RecentTasks$1;,Lcom/android/server/wm/SystemGesturesPointerEventListener;
 HSPLcom/android/server/wm/RecentTasks;->isCallerRecents(I)Z
-HSPLcom/android/server/wm/RefreshRatePolicy$FrameRateVote;->refreshRateEquals(F)Z
 HSPLcom/android/server/wm/RefreshRatePolicy$FrameRateVote;->update(FII)Z
 HSPLcom/android/server/wm/RefreshRatePolicy$PackageRefreshRate;->get(Ljava/lang/String;)Landroid/view/SurfaceControl$RefreshRateRange;+]Ljava/util/HashMap;Ljava/util/HashMap;
 HSPLcom/android/server/wm/RefreshRatePolicy;->calculatePriority(Lcom/android/server/wm/WindowState;)I+]Lcom/android/server/wm/RefreshRatePolicy;Lcom/android/server/wm/RefreshRatePolicy;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
@@ -3971,15 +4107,15 @@
 HSPLcom/android/server/wm/RefreshRatePolicy;->getPreferredMinRefreshRate(Lcom/android/server/wm/WindowState;)F+]Lcom/android/server/wm/RefreshRatePolicy$PackageRefreshRate;Lcom/android/server/wm/RefreshRatePolicy$PackageRefreshRate;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/RefreshRatePolicy;->getPreferredModeId(Lcom/android/server/wm/WindowState;)I
 HSPLcom/android/server/wm/RefreshRatePolicy;->updateFrameRateVote(Lcom/android/server/wm/WindowState;)Z+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Lcom/android/server/wm/HighRefreshRateDenylist;Lcom/android/server/wm/HighRefreshRateDenylist;]Lcom/android/server/wm/RefreshRatePolicy$FrameRateVote;Lcom/android/server/wm/RefreshRatePolicy$FrameRateVote;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
-HSPLcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda23;->accept(Ljava/lang/Object;)V
 HSPLcom/android/server/wm/RootWindowContainer$MyHandler;->handleMessage(Landroid/os/Message;)V+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Landroid/os/PowerManagerInternal;Lcom/android/server/power/PowerManagerService$LocalService;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;
 HSPLcom/android/server/wm/RootWindowContainer;->$r8$lambda$cnDv250HlSET-GBlf9zK0KW0JGk(Lcom/android/server/wm/DisplayContent;)V+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;
 HSPLcom/android/server/wm/RootWindowContainer;->applySurfaceChangesTransaction()V+]Landroid/hardware/display/DisplayManagerInternal;Lcom/android/server/display/DisplayManagerService$LocalService;]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/StrictModeFlash;Lcom/android/server/wm/StrictModeFlash;]Ljava/util/ArrayList;Ljava/util/ArrayList;
-HSPLcom/android/server/wm/RootWindowContainer;->checkAppTransitionReady(Lcom/android/server/wm/WindowSurfacePlacer;)V+]Lcom/android/server/wm/AppTransition;Lcom/android/server/wm/AppTransition;]Lcom/android/server/wm/AppTransitionController;Lcom/android/server/wm/AppTransitionController;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/wm/RootWindowContainer;->checkAppTransitionReady(Lcom/android/server/wm/WindowSurfacePlacer;)V+]Lcom/android/server/wm/AppTransition;Lcom/android/server/wm/AppTransition;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/RootWindowContainer;->clearFrameChangingWindows()V+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/RootWindowContainer;->forAllDisplays(Ljava/util/function/Consumer;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Consumer;megamorphic_types
 HSPLcom/android/server/wm/RootWindowContainer;->getDisplayContent(I)Lcom/android/server/wm/DisplayContent;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/RootWindowContainer;
-HPLcom/android/server/wm/RootWindowContainer;->getRootTaskInfo(Lcom/android/server/wm/Task;)Landroid/app/ActivityTaskManager$RootTaskInfo;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;
+HSPLcom/android/server/wm/RootWindowContainer;->getRootTaskInfo(Lcom/android/server/wm/Task;)Landroid/app/ActivityTaskManager$RootTaskInfo;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;
+HSPLcom/android/server/wm/RootWindowContainer;->getRunningTasks(ILjava/util/List;IILandroid/util/ArraySet;I)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/RunningTasks;Lcom/android/server/wm/RunningTasks;
 HSPLcom/android/server/wm/RootWindowContainer;->handleNotObscuredLocked(Lcom/android/server/wm/WindowState;ZZ)Z+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/RootWindowContainer;->handleResizingWindows()V+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/RootWindowContainer;->hasPendingLayoutChanges(Lcom/android/server/wm/WindowAnimator;)Z+]Ljava/util/ArrayList;Ljava/util/ArrayList;
@@ -3990,29 +4126,30 @@
 HSPLcom/android/server/wm/RunningTasks;->accept(Lcom/android/server/wm/Task;)V+]Lcom/android/server/wm/RecentTasks;Lcom/android/server/wm/RecentTasks;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/RunningTasks;->createRunningTaskInfo(Lcom/android/server/wm/Task;J)Landroid/app/ActivityManager$RunningTaskInfo;+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/RunningTasks;->getTasks(ILjava/util/List;ILcom/android/server/wm/RecentTasks;Lcom/android/server/wm/WindowContainer;ILandroid/util/ArraySet;)V+]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/wm/RunningTasks;->lambda$getTasks$0(Lcom/android/server/wm/DisplayContent;)V+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HPLcom/android/server/wm/Session;->setWallpaperZoomOut(Landroid/os/IBinder;F)V
-HSPLcom/android/server/wm/SurfaceAnimator;->cancelAnimation(Landroid/view/SurfaceControl$Transaction;ZZ)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/AnimationAdapter;megamorphic_types]Lcom/android/server/wm/SurfaceAnimator$OnAnimationFinishedCallback;Lcom/android/server/wm/WindowContainer$$ExternalSyntheticLambda5;,Lcom/android/server/wm/WindowContainer$$ExternalSyntheticLambda6;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;
+HSPLcom/android/server/wm/SurfaceAnimator;->cancelAnimation(Landroid/view/SurfaceControl$Transaction;ZZ)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/AnimationAdapter;megamorphic_types]Lcom/android/server/wm/SurfaceAnimator$OnAnimationFinishedCallback;Lcom/android/server/wm/WindowContainer$$ExternalSyntheticLambda5;,Lcom/android/server/wm/WindowContainer$$ExternalSyntheticLambda6;,Lcom/android/server/wm/WindowContainer$$ExternalSyntheticLambda7;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;
 HPLcom/android/server/wm/SurfaceAnimator;->createAnimationLeash(Lcom/android/server/wm/SurfaceAnimator$Animatable;Landroid/view/SurfaceControl;Landroid/view/SurfaceControl$Transaction;IIIIIZLjava/util/function/Supplier;)Landroid/view/SurfaceControl;+]Landroid/view/SurfaceControl$Builder;Landroid/view/SurfaceControl$Builder;]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/SurfaceAnimator$Animatable;megamorphic_types
 HSPLcom/android/server/wm/SurfaceAnimator;->hasLeash()Z
 HSPLcom/android/server/wm/SurfaceAnimator;->isAnimating()Z
 HSPLcom/android/server/wm/SurfaceAnimator;->reset(Landroid/view/SurfaceControl$Transaction;Z)V+]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;
-HPLcom/android/server/wm/SurfaceAnimator;->startAnimation(Landroid/view/SurfaceControl$Transaction;Lcom/android/server/wm/AnimationAdapter;ZILcom/android/server/wm/SurfaceAnimator$OnAnimationFinishedCallback;Ljava/lang/Runnable;Lcom/android/server/wm/AnimationAdapter;Lcom/android/server/wm/SurfaceFreezer;)V+]Lcom/android/server/wm/AnimationAdapter;megamorphic_types]Lcom/android/server/wm/SurfaceAnimator$Animatable;megamorphic_types]Lcom/android/server/wm/SurfaceAnimator;Lcom/android/server/wm/SurfaceAnimator;]Lcom/android/server/wm/SurfaceFreezer;Lcom/android/server/wm/SurfaceFreezer;
 HSPLcom/android/server/wm/SynchedDeviceConfig;->getFlagValue(Ljava/lang/String;)Z+]Ljava/util/Map;Ljava/util/concurrent/ConcurrentHashMap;
-HPLcom/android/server/wm/SystemGesturesPointerEventListener;->detectSwipe(Landroid/view/MotionEvent;)I
 HSPLcom/android/server/wm/SystemGesturesPointerEventListener;->onConfigurationChanged()V+]Landroid/content/Context;Landroid/app/ContextImpl;]Landroid/content/res/Resources;Landroid/content/res/Resources;
 HPLcom/android/server/wm/SystemGesturesPointerEventListener;->onPointerEvent(Landroid/view/MotionEvent;)V+]Landroid/view/GestureDetector;Lcom/android/server/wm/SystemGesturesPointerEventListener$1;]Lcom/android/server/wm/SystemGesturesPointerEventListener$Callbacks;Lcom/android/server/wm/DisplayPolicy$1;
-HSPLcom/android/server/wm/Task$$ExternalSyntheticLambda14;->test(Ljava/lang/Object;)Z
 HSPLcom/android/server/wm/Task$FindRootHelper;->findRoot(ZZ)Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/Task$FindRootHelper;->test(Lcom/android/server/wm/ActivityRecord;)Z+]Landroid/content/pm/ApplicationInfo;Landroid/content/pm/ApplicationInfo;
 HSPLcom/android/server/wm/Task$FindRootHelper;->test(Ljava/lang/Object;)Z+]Lcom/android/server/wm/Task$FindRootHelper;Lcom/android/server/wm/Task$FindRootHelper;
+HSPLcom/android/server/wm/Task;->$r8$lambda$AkSO8BQwrCT5IExZs_X3DjEm-pI(Lcom/android/server/wm/ActivityRecord;)Z
 HSPLcom/android/server/wm/Task;->asTask()Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/Task;->assignChildLayers(Landroid/view/SurfaceControl$Transaction;)V+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/TrustedOverlayHost;Lcom/android/server/wm/TrustedOverlayHost;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/wm/Task;->calculateTopActivityMainWindowFrameForTaskInfo(Lcom/android/server/wm/ActivityRecord;)Landroid/graphics/Rect;+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/Task;->checkTranslucentActivityWaiting(Lcom/android/server/wm/ActivityRecord;)V+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/Task;->cropWindowsToRootTaskBounds()Z+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;
+HSPLcom/android/server/wm/Task;->ensureActivitiesVisible(Lcom/android/server/wm/ActivityRecord;Z)V+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/Task;->fillTaskInfo(Landroid/app/TaskInfo;Z)V+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/Task;->fillTaskInfo(Landroid/app/TaskInfo;ZLcom/android/server/wm/TaskDisplayArea;)V+]Landroid/app/TaskInfo;Landroid/app/ActivityManager$RecentTaskInfo;,Landroid/app/ActivityManager$RunningTaskInfo;,Landroid/app/ActivityTaskManager$RootTaskInfo;]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/wm/ActivityTaskSupervisor$TaskInfoHelper;Lcom/android/server/wm/ActivityTaskSupervisor$TaskInfoHelper;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer$RemoteToken;Lcom/android/server/wm/WindowContainer$RemoteToken;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/Task;->forAllLeafTasks(Ljava/util/function/Consumer;Z)V+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Consumer;megamorphic_types
-HSPLcom/android/server/wm/Task;->forAllLeafTasks(Ljava/util/function/Predicate;)Z+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Predicate;Lcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda18;,Lcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda32;,Lcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda9;,Lcom/android/server/wm/RootWindowContainer$FindTaskResult;
+HSPLcom/android/server/wm/Task;->forAllLeafTasks(Ljava/util/function/Predicate;)Z+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Predicate;Lcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda18;,Lcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda19;,Lcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda32;,Lcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda33;,Lcom/android/server/wm/RootWindowContainer$$ExternalSyntheticLambda9;,Lcom/android/server/wm/RootWindowContainer$FindTaskResult;
 HSPLcom/android/server/wm/Task;->getBaseIntent()Landroid/content/Intent;+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/Task;->getBasePackageName()Ljava/lang/String;+]Landroid/content/Intent;Landroid/content/Intent;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/Task;->getDisplayCutoutInsets()Landroid/graphics/Rect;+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/DisplayContent;,Lcom/android/server/wm/Task;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
@@ -4023,6 +4160,7 @@
 HSPLcom/android/server/wm/Task;->getRootTask(Ljava/util/function/Predicate;Z)Lcom/android/server/wm/Task;+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Ljava/util/function/Predicate;megamorphic_types
 HSPLcom/android/server/wm/Task;->getTaskWithAdjacent()Lcom/android/server/wm/Task;+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea;
 HSPLcom/android/server/wm/Task;->getTopLeafTask()Lcom/android/server/wm/Task;+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/wm/Task;->getTopPausingActivity()Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/Task;->getTopResumedActivity()Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/Task;->getTopVisibleActivity()Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/Task;->hasVisibleChildren()Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;
@@ -4032,8 +4170,9 @@
 HSPLcom/android/server/wm/Task;->isResizeable()Z+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/Task;->isResizeable(Z)Z+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/Task;->isRootTask()Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;
-HSPLcom/android/server/wm/Task;->onDisplayChanged(Lcom/android/server/wm/DisplayContent;)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskChangeNotificationController;Lcom/android/server/wm/TaskChangeNotificationController;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/Task;->prepareSurfaces()V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/Dimmer;Lcom/android/server/wm/Dimmer;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/TrustedOverlayHost;Lcom/android/server/wm/TrustedOverlayHost;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;
+HSPLcom/android/server/wm/Task;->resumeTopActivityInnerLocked(Lcom/android/server/wm/ActivityRecord;Landroid/app/ActivityOptions;Z)Z+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;
+HSPLcom/android/server/wm/Task;->resumeTopActivityUncheckedLocked(Lcom/android/server/wm/ActivityRecord;Landroid/app/ActivityOptions;Z)Z+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/Task;->setTaskDescriptionFromActivityAboveRoot(Lcom/android/server/wm/ActivityRecord;Lcom/android/server/wm/ActivityRecord;Landroid/app/ActivityManager$TaskDescription;)Z+]Landroid/app/ActivityManager$TaskDescription;Landroid/app/ActivityManager$TaskDescription;
 HSPLcom/android/server/wm/Task;->shouldIgnoreInput()Z
 HSPLcom/android/server/wm/Task;->updateTaskDescription()V+]Lcom/android/internal/util/function/pooled/PooledPredicate;Lcom/android/internal/util/function/pooled/PooledLambdaImpl;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskChangeNotificationController;Lcom/android/server/wm/TaskChangeNotificationController;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea;
@@ -4043,8 +4182,9 @@
 HSPLcom/android/server/wm/TaskDisplayArea;->assignChildLayers(Landroid/view/SurfaceControl$Transaction;)V+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/TaskDisplayArea;->assignRootTaskOrdering(Landroid/view/SurfaceControl$Transaction;)V+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/TaskDisplayArea;->getRootTask(II)Lcom/android/server/wm/Task;
-HSPLcom/android/server/wm/TaskFragment$$ExternalSyntheticLambda0;->test(Ljava/lang/Object;)Z
 HSPLcom/android/server/wm/TaskFragment;->asTaskFragment()Lcom/android/server/wm/TaskFragment;
+HSPLcom/android/server/wm/TaskFragment;->canAffectSystemUiFlags()Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea;
+HSPLcom/android/server/wm/TaskFragment;->computeConfigResourceOverrides(Landroid/content/res/Configuration;Landroid/content/res/Configuration;Lcom/android/server/wm/TaskFragment$ConfigOverrideHint;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/AppCompatDisplayInsets;Lcom/android/server/wm/AppCompatDisplayInsets;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;
 HSPLcom/android/server/wm/TaskFragment;->forAllLeafTaskFragments(Ljava/util/function/Consumer;Z)V+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Consumer;megamorphic_types
 HSPLcom/android/server/wm/TaskFragment;->forAllLeafTaskFragments(Ljava/util/function/Predicate;)Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Predicate;megamorphic_types
 HSPLcom/android/server/wm/TaskFragment;->getActivityType()I+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;
@@ -4064,9 +4204,10 @@
 HSPLcom/android/server/wm/TaskFragment;->isForceHidden()Z
 HSPLcom/android/server/wm/TaskFragment;->isLeafTaskFragment()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/TaskFragment;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/TaskFragment;->isTopActivityFocusable()Z+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;
-HSPLcom/android/server/wm/TaskFragment;->isTranslucent(Lcom/android/server/wm/ActivityRecord;)Z+]Lcom/android/server/wm/ActivityTaskSupervisor$OpaqueActivityHelper;Lcom/android/server/wm/ActivityTaskSupervisor$OpaqueActivityHelper;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;
+HSPLcom/android/server/wm/TaskFragment;->isTranslucent(Lcom/android/server/wm/ActivityRecord;)Z+]Lcom/android/server/wm/ActivityTaskSupervisor$OpaqueActivityHelper;Lcom/android/server/wm/ActivityTaskSupervisor$OpaqueActivityHelper;]Lcom/android/server/wm/ActivityTaskSupervisor$OpaqueContainerHelper;Lcom/android/server/wm/ActivityTaskSupervisor$OpaqueContainerHelper;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;
 HSPLcom/android/server/wm/TaskFragment;->prepareSurfaces()V+]Lcom/android/server/wm/Dimmer;Lcom/android/server/wm/Dimmer;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;
 HSPLcom/android/server/wm/TaskFragment;->resumeTopActivity(Lcom/android/server/wm/ActivityRecord;Landroid/app/ActivityOptions;Z)Z+]Landroid/app/ActivityManagerInternal;Lcom/android/server/am/ActivityManagerService$LocalService;]Landroid/content/pm/PackageManagerInternal;Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;]Lcom/android/server/wm/ActivityMetricsLogger;Lcom/android/server/wm/ActivityMetricsLogger;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/AppWarnings;Lcom/android/server/wm/AppWarnings;]Lcom/android/server/wm/ClientLifecycleManager;Lcom/android/server/wm/ClientLifecycleManager;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/wm/TaskFragment;->shouldBeVisible(Lcom/android/server/wm/ActivityRecord;)Z+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;
 HSPLcom/android/server/wm/TaskFragment;->shouldDeferRemoval()Z+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;
 HSPLcom/android/server/wm/TaskFragment;->shouldSleepActivities()Z+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/TaskFragment;->supportsMultiWindowInDisplayArea(Lcom/android/server/wm/TaskDisplayArea;)Z+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;
@@ -4074,19 +4215,20 @@
 HSPLcom/android/server/wm/TaskFragment;->topRunningActivity(Z)Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;
 HSPLcom/android/server/wm/TaskFragment;->updateActivityVisibilities(Lcom/android/server/wm/ActivityRecord;Z)V+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/EnsureActivitiesVisibleHelper;Lcom/android/server/wm/EnsureActivitiesVisibleHelper;
 HSPLcom/android/server/wm/TaskFragmentOrganizerController;->dispatchPendingEvents()V+]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer;
-HPLcom/android/server/wm/TaskFragmentOrganizerController;->dispatchPendingEvents(Lcom/android/server/wm/TaskFragmentOrganizerController$TaskFragmentOrganizerState;Ljava/util/List;)V+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/TaskFragmentOrganizerController$PendingTaskFragmentEvent$Builder;Lcom/android/server/wm/TaskFragmentOrganizerController$PendingTaskFragmentEvent$Builder;]Lcom/android/server/wm/TaskFragmentOrganizerController$TaskFragmentOrganizerState;Lcom/android/server/wm/TaskFragmentOrganizerController$TaskFragmentOrganizerState;]Ljava/util/List;Ljava/util/ArrayList;
+HSPLcom/android/server/wm/TaskFragmentOrganizerController;->dispatchPendingEvents(Lcom/android/server/wm/TaskFragmentOrganizerController$TaskFragmentOrganizerState;Ljava/util/List;)V+]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/TaskFragmentOrganizerController$PendingTaskFragmentEvent$Builder;Lcom/android/server/wm/TaskFragmentOrganizerController$PendingTaskFragmentEvent$Builder;]Lcom/android/server/wm/TaskFragmentOrganizerController$TaskFragmentOrganizerState;Lcom/android/server/wm/TaskFragmentOrganizerController$TaskFragmentOrganizerState;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/TaskOrganizerController$TaskOrganizerPendingEventsQueue;->dispatchPendingEvents()V+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/TaskOrganizerController$TaskOrganizerPendingEventsQueue;->dispatchTaskInfoChanged(Lcom/android/server/wm/Task;Z)V+]Landroid/app/ActivityManager$RunningTaskInfo;Landroid/app/ActivityManager$RunningTaskInfo;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskOrganizerController$TaskOrganizerCallbacks;Lcom/android/server/wm/TaskOrganizerController$TaskOrganizerCallbacks;]Ljava/util/WeakHashMap;Ljava/util/WeakHashMap;
 HSPLcom/android/server/wm/TaskOrganizerController;->dispatchPendingEvents()V+]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer;
 HSPLcom/android/server/wm/TaskOrganizerController;->onTaskInfoChanged(Lcom/android/server/wm/Task;Z)V+]Landroid/window/ITaskOrganizer;Landroid/window/ITaskOrganizer$Stub$Proxy;
 HSPLcom/android/server/wm/Transition$ChangeInfo;-><init>(Lcom/android/server/wm/WindowContainer;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types]Lcom/android/server/wm/WindowContainer;megamorphic_types
+HSPLcom/android/server/wm/Transition$ReadyTrackerOld;->allReady()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/DisplayContent;
 HSPLcom/android/server/wm/Transition;-><init>(IILcom/android/server/wm/TransitionController;Lcom/android/server/wm/BLASTSyncEngine;)V
 HSPLcom/android/server/wm/Transition;->applyReady()V+]Lcom/android/server/wm/BLASTSyncEngine;Lcom/android/server/wm/BLASTSyncEngine;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/Transition$ReadyTrackerOld;Lcom/android/server/wm/Transition$ReadyTrackerOld;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/Transition;->calculateTransitionInfo(IILjava/util/ArrayList;Landroid/view/SurfaceControl$Transaction;)Landroid/window/TransitionInfo;+]Landroid/app/ActivityManager$TaskDescription;Landroid/app/ActivityManager$TaskDescription;]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/content/pm/ActivityInfo;Landroid/content/pm/ActivityInfo;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/Transition$ChangeInfo;Lcom/android/server/wm/Transition$ChangeInfo;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer$RemoteToken;Lcom/android/server/wm/WindowContainer$RemoteToken;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/Transition;->collect(Lcom/android/server/wm/WindowContainer;)V+]Lcom/android/server/wm/BLASTSyncEngine;Lcom/android/server/wm/BLASTSyncEngine;]Lcom/android/server/wm/Transition;Lcom/android/server/wm/Transition;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowContainer;megamorphic_types
 HSPLcom/android/server/wm/Transition;->finishTransition(Lcom/android/server/wm/ActionChain;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/inputmethod/InputMethodManagerInternal;Lcom/android/server/inputmethod/InputMethodManagerService$LocalServiceImpl;]Lcom/android/server/wm/ActionChain;Lcom/android/server/wm/ActionChain;]Lcom/android/server/wm/ActivityRecordInputSink;Lcom/android/server/wm/ActivityRecordInputSink;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/AppCompatCameraPolicy;Lcom/android/server/wm/AppCompatCameraPolicy;]Lcom/android/server/wm/AsyncRotationController;Lcom/android/server/wm/AsyncRotationController;]Lcom/android/server/wm/BackNavigationController;Lcom/android/server/wm/BackNavigationController;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/DisplayContent;,Lcom/android/server/wm/Task;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/SnapshotController;Lcom/android/server/wm/SnapshotController;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskChangeNotificationController;Lcom/android/server/wm/TaskChangeNotificationController;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskSnapshotController;Lcom/android/server/wm/TaskSnapshotController;]Lcom/android/server/wm/Transition;Lcom/android/server/wm/Transition;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/TransitionTracer;Lcom/android/server/wm/PerfettoTransitionTracer;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WallpaperWindowToken;Lcom/android/server/wm/WallpaperWindowToken;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda24;
 HSPLcom/android/server/wm/Transition;->isInTransition(Lcom/android/server/wm/WindowContainer;)Z
-HSPLcom/android/server/wm/Transition;->onTransactionReady(ILandroid/view/SurfaceControl$Transaction;)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Landroid/window/ITransitionPlayer;Landroid/window/ITransitionPlayer$Stub$Proxy;]Lcom/android/server/wm/AsyncRotationController;Lcom/android/server/wm/AsyncRotationController;]Lcom/android/server/wm/BackNavigationController;Lcom/android/server/wm/BackNavigationController;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/SnapshotController;Lcom/android/server/wm/SnapshotController;]Lcom/android/server/wm/Transition;Lcom/android/server/wm/Transition;]Lcom/android/server/wm/TransitionController$Logger;Lcom/android/server/wm/TransitionController$Logger;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/TransitionTracer;Lcom/android/server/wm/PerfettoTransitionTracer;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda24;
+HSPLcom/android/server/wm/Transition;->onTransactionReady(ILandroid/view/SurfaceControl$Transaction;)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Landroid/window/ITransitionPlayer;Landroid/window/ITransitionPlayer$Stub$Proxy;]Lcom/android/server/wm/AsyncRotationController;Lcom/android/server/wm/AsyncRotationController;]Lcom/android/server/wm/BackNavigationController;Lcom/android/server/wm/BackNavigationController;]Lcom/android/server/wm/DisplayArea;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/SnapshotController;Lcom/android/server/wm/SnapshotController;]Lcom/android/server/wm/Transition;Lcom/android/server/wm/Transition;]Lcom/android/server/wm/TransitionController$Logger;Lcom/android/server/wm/TransitionController$Logger;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/TransitionTracer;Lcom/android/server/wm/PerfettoTransitionTracer;]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda24;,Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda25;,Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda26;
 HSPLcom/android/server/wm/Transition;->toString()Ljava/lang/String;+]Lcom/android/server/wm/Transition$ChangeInfo;Lcom/android/server/wm/Transition$ChangeInfo;
 HSPLcom/android/server/wm/TransitionController;->canAssignLayers(Lcom/android/server/wm/WindowContainer;)Z+]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;megamorphic_types
 HSPLcom/android/server/wm/TransitionController;->inCollectingTransition(Lcom/android/server/wm/WindowContainer;)Z+]Lcom/android/server/wm/Transition;Lcom/android/server/wm/Transition;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Ljava/util/ArrayList;Ljava/util/ArrayList;
@@ -4108,7 +4250,7 @@
 HSPLcom/android/server/wm/WallpaperController;->hideWallpapers(Lcom/android/server/wm/WindowState;)V+]Lcom/android/server/wm/WallpaperWindowToken;Lcom/android/server/wm/WallpaperWindowToken;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/WallpaperController;->isWallpaperVisible()Z+]Lcom/android/server/wm/WallpaperWindowToken;Lcom/android/server/wm/WallpaperWindowToken;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HPLcom/android/server/wm/WallpaperController;->setWallpaperZoomOut(Lcom/android/server/wm/WindowState;F)V+]Lcom/android/server/wm/WallpaperWindowToken;Lcom/android/server/wm/WallpaperWindowToken;]Ljava/util/ArrayList;Ljava/util/ArrayList;
-HSPLcom/android/server/wm/WallpaperController;->updateWallpaperOffset(Lcom/android/server/wm/WindowState;Z)Z+]Landroid/view/IWindow;Landroid/view/IWindow$Stub$Proxy;]Lcom/android/server/wallpaper/WallpaperCropper$WallpaperCropUtils;Lcom/android/server/wallpaper/WallpaperManagerService$$ExternalSyntheticLambda4;]Lcom/android/server/wm/WallpaperWindowToken;Lcom/android/server/wm/WallpaperWindowToken;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WallpaperWindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
+HSPLcom/android/server/wm/WallpaperController;->updateWallpaperOffset(Lcom/android/server/wm/WindowState;Z)Z+]Landroid/view/IWindow;Landroid/view/IWindow$Stub$Proxy;]Lcom/android/server/wallpaper/WallpaperCropper$WallpaperCropUtils;Lcom/android/server/wallpaper/WallpaperManagerService$$ExternalSyntheticLambda1;,Lcom/android/server/wallpaper/WallpaperManagerService$$ExternalSyntheticLambda4;,Lcom/android/server/wallpaper/WallpaperManagerService$$ExternalSyntheticLambda5;]Lcom/android/server/wm/WallpaperWindowToken;Lcom/android/server/wm/WallpaperWindowToken;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WallpaperWindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/WallpaperWindowToken;->isVisible()Z+]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/WallpaperWindowToken;
 HSPLcom/android/server/wm/WallpaperWindowToken;->prepareSurfaces()V
 HSPLcom/android/server/wm/WallpaperWindowToken;->setVisibility(Z)V+]Lcom/android/server/wm/AppTransition;Lcom/android/server/wm/AppTransition;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WallpaperWindowToken;Lcom/android/server/wm/WallpaperWindowToken;
@@ -4119,7 +4261,7 @@
 HSPLcom/android/server/wm/WindowContainer$ForAllWindowsConsumerWrapper;->apply(Ljava/lang/Object;)Z
 HSPLcom/android/server/wm/WindowContainer$ForAllWindowsConsumerWrapper;->release()V
 HSPLcom/android/server/wm/WindowContainer$RemoteToken;->toWindowContainerToken()Landroid/window/WindowContainerToken;
-HSPLcom/android/server/wm/WindowContainer;-><init>(Lcom/android/server/wm/WindowManagerService;)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda24;
+HSPLcom/android/server/wm/WindowContainer;-><init>(Lcom/android/server/wm/WindowManagerService;)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda24;,Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda26;
 HSPLcom/android/server/wm/WindowContainer;->asTask()Lcom/android/server/wm/Task;
 HSPLcom/android/server/wm/WindowContainer;->asTaskFragment()Lcom/android/server/wm/TaskFragment;
 HSPLcom/android/server/wm/WindowContainer;->asWallpaperToken()Lcom/android/server/wm/WallpaperWindowToken;
@@ -4142,17 +4284,16 @@
 HSPLcom/android/server/wm/WindowContainer;->getChildCount()I+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/WindowContainer;->getDisplayArea()Lcom/android/server/wm/DisplayArea;+]Lcom/android/server/wm/WindowContainer;megamorphic_types
 HSPLcom/android/server/wm/WindowContainer;->getDisplayContent()Lcom/android/server/wm/DisplayContent;
-HPLcom/android/server/wm/WindowContainer;->getInsetsSourceProviders()Landroid/util/SparseArray;
-HSPLcom/android/server/wm/WindowContainer;->getOrientation(I)I+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/wm/WindowContainer;->getInsetsSourceProviders()Landroid/util/SparseArray;
+HSPLcom/android/server/wm/WindowContainer;->getOrientation(I)I+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/lang/Object;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/WindowContainer;->getParent()Lcom/android/server/wm/WindowContainer;
-HSPLcom/android/server/wm/WindowContainer;->getPendingTransaction()Landroid/view/SurfaceControl$Transaction;+]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda24;,Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda25;
+HSPLcom/android/server/wm/WindowContainer;->getPendingTransaction()Landroid/view/SurfaceControl$Transaction;+]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda24;,Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda25;,Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda26;
 HSPLcom/android/server/wm/WindowContainer;->getRelativePosition(Landroid/graphics/Point;)V+]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types]Lcom/android/server/wm/WindowContainer;megamorphic_types
 HSPLcom/android/server/wm/WindowContainer;->getRelativePosition(Landroid/graphics/Rect;Landroid/graphics/Point;)V+]Landroid/graphics/Point;Landroid/graphics/Point;]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types
 HSPLcom/android/server/wm/WindowContainer;->getRootTask(Ljava/util/function/Predicate;Z)Lcom/android/server/wm/Task;+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/WindowContainer;->getSurfaceControl()Landroid/view/SurfaceControl;
 HSPLcom/android/server/wm/WindowContainer;->getSyncTransaction()Landroid/view/SurfaceControl$Transaction;+]Lcom/android/server/wm/WindowContainer;megamorphic_types
 HSPLcom/android/server/wm/WindowContainer;->getTask(Ljava/util/function/Predicate;Z)Lcom/android/server/wm/Task;+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;
-HSPLcom/android/server/wm/WindowContainer;->getTaskFragment(Ljava/util/function/Predicate;)Lcom/android/server/wm/TaskFragment;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/TaskFragment;,Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/WindowContainer;->getTopChild()Lcom/android/server/wm/WindowContainer;+]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/WindowContainer;->getTopMostActivity()Lcom/android/server/wm/ActivityRecord;+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskDisplayArea;,Lcom/android/server/wm/TaskFragment;
 HSPLcom/android/server/wm/WindowContainer;->getWindow(Ljava/util/function/Predicate;)Lcom/android/server/wm/WindowState;+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;
@@ -4175,6 +4316,7 @@
 HSPLcom/android/server/wm/WindowContainer;->prepareSurfaces()V+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/WindowContainer;->scheduleAnimation()V+]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;
 HSPLcom/android/server/wm/WindowContainer;->updateAboveInsetsState(Landroid/view/InsetsState;Landroid/util/SparseArray;Landroid/util/ArraySet;)V+]Lcom/android/server/wm/WindowContainer;megamorphic_types]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/wm/WindowContainer;->updateSurfacePosition(Landroid/view/SurfaceControl$Transaction;)V+]Landroid/app/WindowConfiguration;Landroid/app/WindowConfiguration;]Landroid/graphics/Point;Landroid/graphics/Point;]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/SurfaceAnimator;Lcom/android/server/wm/SurfaceAnimator;]Lcom/android/server/wm/SurfaceFreezer;Lcom/android/server/wm/SurfaceFreezer;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowContainer;megamorphic_types
 HSPLcom/android/server/wm/WindowContainer;->updateSurfacePositionNonOrganized()V+]Lcom/android/server/wm/WindowContainer;megamorphic_types
 HSPLcom/android/server/wm/WindowContextListenerController$WindowContextListenerImpl;->dispatchWindowContextInfoChange()V+]Lcom/android/server/wm/ConfigurationContainer;megamorphic_types]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
 HSPLcom/android/server/wm/WindowFrames;->didFrameSizeChange()Z
@@ -4189,7 +4331,7 @@
 HSPLcom/android/server/wm/WindowManagerService;->isKeyguardLocked()Z+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;
 HSPLcom/android/server/wm/WindowManagerService;->isKeyguardSecure(I)Z+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;
 HSPLcom/android/server/wm/WindowManagerService;->isUserVisible(I)Z+]Lcom/android/server/pm/UserManagerInternal;Lcom/android/server/pm/UserManagerService$LocalService;
-HSPLcom/android/server/wm/WindowManagerService;->relayoutWindow(Lcom/android/server/wm/Session;Landroid/view/IWindow;Landroid/view/WindowManager$LayoutParams;IIIIIILandroid/view/WindowRelayoutResult;)I+]Landroid/view/IWindow;Landroid/view/IWindow$Stub$Proxy;,Landroid/view/ViewRootImpl$W;]Landroid/view/InsetsFrameProvider$InsetsSizeOverride;Landroid/view/InsetsFrameProvider$InsetsSizeOverride;]Landroid/view/InsetsFrameProvider;Landroid/view/InsetsFrameProvider;]Landroid/view/InsetsSourceControl$Array;Landroid/view/InsetsSourceControl$Array;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/DisplayWindowPolicyControllerHelper;Lcom/android/server/wm/DisplayWindowPolicyControllerHelper;]Lcom/android/server/wm/UnknownAppVisibilityController;Lcom/android/server/wm/UnknownAppVisibilityController;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;
+HSPLcom/android/server/wm/WindowManagerService;->relayoutWindow(Lcom/android/server/wm/Session;Landroid/view/IWindow;Landroid/view/WindowManager$LayoutParams;IIIIIILandroid/view/WindowRelayoutResult;)I+]Landroid/view/IWindow;Landroid/view/IWindow$Stub$Proxy;]Landroid/view/InsetsFrameProvider$InsetsSizeOverride;Landroid/view/InsetsFrameProvider$InsetsSizeOverride;]Landroid/view/InsetsFrameProvider;Landroid/view/InsetsFrameProvider;]Landroid/view/InsetsSourceControl$Array;Landroid/view/InsetsSourceControl$Array;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/DisplayWindowPolicyControllerHelper;Lcom/android/server/wm/DisplayWindowPolicyControllerHelper;]Lcom/android/server/wm/UnknownAppVisibilityController;Lcom/android/server/wm/UnknownAppVisibilityController;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;
 HSPLcom/android/server/wm/WindowManagerService;->resetPriorityAfterLockedSection()V+]Lcom/android/server/wm/WindowManagerThreadPriorityBooster;Lcom/android/server/wm/WindowManagerThreadPriorityBooster;
 HSPLcom/android/server/wm/WindowManagerService;->scheduleAnimationLocked()V+]Lcom/android/server/wm/WindowAnimator;Lcom/android/server/wm/WindowAnimator;
 HSPLcom/android/server/wm/WindowManagerService;->setInsetsWindow(Lcom/android/server/wm/Session;Landroid/view/IWindow;ILandroid/graphics/Rect;Landroid/graphics/Rect;Landroid/graphics/Region;)V+]Landroid/graphics/Region;Landroid/graphics/Region;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
@@ -4199,12 +4341,13 @@
 HSPLcom/android/server/wm/WindowOrganizerController;->applyTransaction(Landroid/window/WindowContainerTransaction;ILcom/android/server/wm/ActionChain;Lcom/android/server/wm/WindowOrganizerController$CallerInfo;)I+]Landroid/window/WindowContainerTransaction$Change;Landroid/window/WindowContainerTransaction$Change;]Lcom/android/server/wm/ActionChain;Lcom/android/server/wm/ActionChain;]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/Task;]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;]Lcom/android/server/wm/Transition;Lcom/android/server/wm/Transition;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowOrganizerController;Lcom/android/server/wm/WindowOrganizerController;]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer;]Ljava/lang/Object;Lcom/android/server/wm/Task;]Ljava/util/Iterator;Landroid/util/MapCollections$MapIterator;]Ljava/util/List;Ljava/util/ArrayList;]Ljava/util/Map$Entry;Landroid/util/MapCollections$MapIterator;]Ljava/util/Set;Landroid/util/MapCollections$EntrySet;
 HSPLcom/android/server/wm/WindowProcessController;-><init>(Lcom/android/server/wm/ActivityTaskManagerService;Landroid/content/pm/ApplicationInfo;Ljava/lang/String;IILjava/lang/Object;Lcom/android/server/wm/WindowProcessListener;)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;
 HSPLcom/android/server/wm/WindowProcessController;->addBoundClientUid(ILjava/lang/String;J)V+]Lcom/android/server/wm/BackgroundLaunchProcessController;Lcom/android/server/wm/BackgroundLaunchProcessController;
-HPLcom/android/server/wm/WindowProcessController;->areBackgroundActivityStartsAllowed(ILcom/android/server/wm/BackgroundLaunchProcessController$BalCheckConfiguration;)Lcom/android/server/wm/BackgroundActivityStartController$BalVerdict;+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/BackgroundLaunchProcessController;Lcom/android/server/wm/BackgroundLaunchProcessController;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
+HSPLcom/android/server/wm/WindowProcessController;->areBackgroundActivityStartsAllowed(ILcom/android/server/wm/BackgroundLaunchProcessController$BalCheckConfiguration;)Lcom/android/server/wm/BackgroundActivityStartController$BalVerdict;+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/BackgroundLaunchProcessController;Lcom/android/server/wm/BackgroundLaunchProcessController;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
 HSPLcom/android/server/wm/WindowProcessController;->computeProcessActivityState()V+]Lcom/android/server/wm/Task;Lcom/android/server/wm/Task;]Lcom/android/server/wm/VisibleActivityProcessTracker;Lcom/android/server/wm/VisibleActivityProcessTracker;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/WindowProcessController;->dispatchConfiguration(Landroid/content/res/Configuration;)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
+HSPLcom/android/server/wm/WindowProcessController;->handleAppDied()Z+]Lcom/android/server/wm/ActivityTaskSupervisor;Lcom/android/server/wm/ActivityTaskSupervisor;]Lcom/android/server/wm/TaskFragment;Lcom/android/server/wm/Task;,Lcom/android/server/wm/TaskFragment;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;]Ljava/util/ArrayList;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/WindowProcessController;->hasActivities()Z
 HSPLcom/android/server/wm/WindowProcessController;->hasActivitiesOrRecentTasks()Z
-HPLcom/android/server/wm/WindowProcessController;->hasActivityInVisibleTask()Z
+HSPLcom/android/server/wm/WindowProcessController;->hasActivityInVisibleTask()Z
 HSPLcom/android/server/wm/WindowProcessController;->hasRecentTasks()Z
 HSPLcom/android/server/wm/WindowProcessController;->hasVisibleActivities()Z
 HSPLcom/android/server/wm/WindowProcessController;->isHeavyWeightProcess()Z
@@ -4225,14 +4368,14 @@
 HSPLcom/android/server/wm/WindowProcessController;->setReportedProcState(I)V+]Lcom/android/server/wm/ActivityTaskManagerService;Lcom/android/server/wm/ActivityTaskManagerService;]Lcom/android/server/wm/ClientLifecycleManager;Lcom/android/server/wm/ClientLifecycleManager;
 HSPLcom/android/server/wm/WindowProcessController;->setThread(Landroid/app/IApplicationThread;)V+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowProcessController;]Lcom/android/server/wm/VisibleActivityProcessTracker;Lcom/android/server/wm/VisibleActivityProcessTracker;]Lcom/android/server/wm/WindowProcessController;Lcom/android/server/wm/WindowProcessController;
 HSPLcom/android/server/wm/WindowProcessControllerMap;->put(ILcom/android/server/wm/WindowProcessController;)V+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Ljava/util/Map;Ljava/util/HashMap;
-HSPLcom/android/server/wm/WindowState;-><init>(Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/Session;Landroid/view/IWindow;Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/WindowState;ILandroid/view/WindowManager$LayoutParams;IIIZ)V+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowState;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda24;
-HSPLcom/android/server/wm/WindowState;->applyDims()V+]Lcom/android/server/wm/Dimmer;Lcom/android/server/wm/Dimmer;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;
+HSPLcom/android/server/wm/WindowState;-><init>(Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/Session;Landroid/view/IWindow;Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/WindowState;ILandroid/view/WindowManager$LayoutParams;IIIZ)V+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowState;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/function/Supplier;Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda24;,Lcom/android/server/wm/WindowManagerService$$ExternalSyntheticLambda26;
+HSPLcom/android/server/wm/WindowState;->applyDims()V+]Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager$LayoutParams;]Lcom/android/server/wm/Dimmer;Lcom/android/server/wm/Dimmer;]Lcom/android/server/wm/TransitionController;Lcom/android/server/wm/TransitionController;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;
 HSPLcom/android/server/wm/WindowState;->applyImeWindowsIfNeeded(Lcom/android/internal/util/ToBooleanFunction;Z)Z+]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/WindowState;->applyInOrderWithImeWindows(Lcom/android/internal/util/ToBooleanFunction;Z)Z+]Lcom/android/internal/util/ToBooleanFunction;megamorphic_types
 HSPLcom/android/server/wm/WindowState;->areAppWindowBoundsLetterboxed()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/WindowState;->asWindowState()Lcom/android/server/wm/WindowState;
-HSPLcom/android/server/wm/WindowState;->assignChildLayers(Landroid/view/SurfaceControl$Transaction;)V+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/ArrayList;Ljava/util/ArrayList;
-HSPLcom/android/server/wm/WindowState;->assignLayer(Landroid/view/SurfaceControl$Transaction;I)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
+HSPLcom/android/server/wm/WindowState;->assignChildLayers(Landroid/view/SurfaceControl$Transaction;)V+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;]Ljava/util/ArrayList;Ljava/util/ArrayList;
+HSPLcom/android/server/wm/WindowState;->assignLayer(Landroid/view/SurfaceControl$Transaction;I)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/WindowState;->canAddInternalSystemWindow()Z
 HSPLcom/android/server/wm/WindowState;->canAffectSystemUiFlags()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;
 HSPLcom/android/server/wm/WindowState;->canBeHiddenByKeyguard()Z+]Lcom/android/server/policy/WindowManagerPolicy;Lcom/android/server/policy/PhoneWindowManager;
@@ -4258,11 +4401,12 @@
 HSPLcom/android/server/wm/WindowState;->getInsetsState()Landroid/view/InsetsState;+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/WindowState;->getInsetsState(Z)Landroid/view/InsetsState;+]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InsetsPolicy;Lcom/android/server/wm/InsetsPolicy;]Lcom/android/server/wm/WindowToken;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;
 HSPLcom/android/server/wm/WindowState;->getKeepClearAreas(Ljava/util/Collection;Ljava/util/Collection;Landroid/graphics/Matrix;[F)V+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/Collection;Landroid/util/ArraySet;
-HSPLcom/android/server/wm/WindowState;->getKeyInterceptionInfo()Lcom/android/internal/policy/KeyInterceptionInfo;+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/lang/CharSequence;Landroid/text/SpannableString;,Ljava/lang/String;
+HSPLcom/android/server/wm/WindowState;->getKeyInterceptionInfo()Lcom/android/internal/policy/KeyInterceptionInfo;+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/lang/CharSequence;Ljava/lang/String;
 HSPLcom/android/server/wm/WindowState;->getMergedInsetsState()Landroid/view/InsetsState;+]Landroid/util/SparseArray;Landroid/util/SparseArray;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/InsetsStateController;Lcom/android/server/wm/InsetsStateController;
 HSPLcom/android/server/wm/WindowState;->getName()Ljava/lang/String;+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/WindowState;->getOwningPackage()Ljava/lang/String;
 HSPLcom/android/server/wm/WindowState;->getOwningUid()I
+HSPLcom/android/server/wm/WindowState;->getParentFrame()Landroid/graphics/Rect;
 HSPLcom/android/server/wm/WindowState;->getParentWindow()Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/WindowState;->getRectsInScreenSpace(Ljava/util/List;Landroid/graphics/Matrix;[F)Ljava/util/List;+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Ljava/util/Iterator;Ljava/util/ArrayList$Itr;]Ljava/util/List;Ljava/util/ArrayList;
 HSPLcom/android/server/wm/WindowState;->getRequestedVisibleTypes()I
@@ -4273,7 +4417,7 @@
 HSPLcom/android/server/wm/WindowState;->getTouchableRegion(Landroid/graphics/Region;)V+]Landroid/graphics/Region;Landroid/graphics/Region;
 HSPLcom/android/server/wm/WindowState;->getTransformationMatrix([FLandroid/graphics/Matrix;)V+]Landroid/graphics/Matrix;Landroid/graphics/Matrix;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/WindowState;->getWindow(Ljava/util/function/Predicate;)Lcom/android/server/wm/WindowState;+]Ljava/util/ArrayList;Ljava/util/ArrayList;]Ljava/util/function/Predicate;megamorphic_types
-HSPLcom/android/server/wm/WindowState;->getWindowTag()Ljava/lang/CharSequence;+]Ljava/lang/CharSequence;Landroid/text/SpannableString;,Ljava/lang/String;
+HSPLcom/android/server/wm/WindowState;->getWindowTag()Ljava/lang/CharSequence;+]Ljava/lang/CharSequence;Ljava/lang/String;
 HSPLcom/android/server/wm/WindowState;->getWindowType()I
 HSPLcom/android/server/wm/WindowState;->handleCompleteDeferredRemoval()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/WindowState;->handleWindowMovedIfNeeded()V+]Landroid/view/IWindow;Landroid/view/IWindow$Stub$Proxy;,Landroid/view/ViewRootImpl$W;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
@@ -4281,7 +4425,6 @@
 HSPLcom/android/server/wm/WindowState;->hasWallpaper()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/WindowState;->isAnimationRunningSelfOrParent()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/WindowState;->isChildWindow()Z
-HSPLcom/android/server/wm/WindowState;->isDimming()Z
 HSPLcom/android/server/wm/WindowState;->isDisplayed()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/WindowState;->isDrawn()Z
 HSPLcom/android/server/wm/WindowState;->isDreamWindow()Z
@@ -4319,7 +4462,6 @@
 HSPLcom/android/server/wm/WindowState;->shouldCheckTokenVisibleRequested()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;
 HSPLcom/android/server/wm/WindowState;->shouldDrawBlurBehind()Z
 HSPLcom/android/server/wm/WindowState;->shouldSendRedrawForSync()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
-HPLcom/android/server/wm/WindowState;->show(ZZ)Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;
 HSPLcom/android/server/wm/WindowState;->subtractTouchExcludeRegionIfNeeded(Landroid/graphics/Region;)V+]Landroid/graphics/Region;Landroid/graphics/Region;
 HSPLcom/android/server/wm/WindowState;->toString()Ljava/lang/String;+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/WindowState;->transformFrameToSurfacePosition(IILandroid/graphics/Point;)V+]Landroid/graphics/Point;Landroid/graphics/Point;]Lcom/android/server/wm/ConfigurationContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/Task;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
@@ -4335,12 +4477,11 @@
 HSPLcom/android/server/wm/WindowState;->wouldBeVisibleRequestedIfPolicyIgnored()Z+]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
 HSPLcom/android/server/wm/WindowStateAnimator;->applyAnimationLocked(IZ)Z+]Lcom/android/server/wm/AppTransition;Lcom/android/server/wm/AppTransition;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/DisplayPolicy;Lcom/android/server/wm/DisplayPolicy;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/ActivityRecord;,Lcom/android/server/wm/WallpaperWindowToken;,Lcom/android/server/wm/WindowState;,Lcom/android/server/wm/WindowToken;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer;
 HSPLcom/android/server/wm/WindowStateAnimator;->commitFinishDrawingLocked()Z+]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;
-HSPLcom/android/server/wm/WindowStateAnimator;->createSurfaceLocked()Landroid/view/SurfaceControl;+]Landroid/view/SurfaceControl$Builder;Landroid/view/SurfaceControl$Builder;]Lcom/android/server/wm/InputWindowHandleWrapper;Lcom/android/server/wm/InputWindowHandleWrapper;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;]Ljava/lang/CharSequence;Landroid/text/SpannableString;,Ljava/lang/String;
+HSPLcom/android/server/wm/WindowStateAnimator;->createSurfaceLocked()Landroid/view/SurfaceControl;+]Landroid/view/SurfaceControl$Builder;Landroid/view/SurfaceControl$Builder;]Lcom/android/server/wm/InputWindowHandleWrapper;Lcom/android/server/wm/InputWindowHandleWrapper;]Lcom/android/server/wm/WindowContainer;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;]Ljava/lang/CharSequence;Ljava/lang/String;
 HSPLcom/android/server/wm/WindowStateAnimator;->getShown()Z
 HSPLcom/android/server/wm/WindowStateAnimator;->hasSurface()Z
 HSPLcom/android/server/wm/WindowStateAnimator;->prepareSurfaceLocked(Landroid/view/SurfaceControl$Transaction;)V+]Landroid/view/SurfaceControl$Transaction;Landroid/view/SurfaceControl$Transaction;]Lcom/android/server/wm/DisplayContent;Lcom/android/server/wm/DisplayContent;]Lcom/android/server/wm/WallpaperController;Lcom/android/server/wm/WallpaperController;]Lcom/android/server/wm/WindowState;Lcom/android/server/wm/WindowState;]Lcom/android/server/wm/WindowStateAnimator;Lcom/android/server/wm/WindowStateAnimator;
 HSPLcom/android/server/wm/WindowSurfacePlacer$Traverser;->run()V
-HSPLcom/android/server/wm/WindowSurfacePlacer;->continueLayout(Z)V
 HSPLcom/android/server/wm/WindowSurfacePlacer;->isLayoutDeferred()Z
 HSPLcom/android/server/wm/WindowSurfacePlacer;->performSurfacePlacement(Z)V
 HSPLcom/android/server/wm/WindowSurfacePlacer;->performSurfacePlacementLoop()V+]Lcom/android/server/wm/RootWindowContainer;Lcom/android/server/wm/RootWindowContainer;]Lcom/android/server/wm/WindowManagerService;Lcom/android/server/wm/WindowManagerService;]Lcom/android/server/wm/WindowSurfacePlacer;Lcom/android/server/wm/WindowSurfacePlacer;]Ljava/util/ArrayList;Ljava/util/ArrayList;
@@ -4357,13 +4498,154 @@
 HSPLcom/android/server/wm/utils/OptPropFactory$OptProp;->shouldEnableWithOptInOverrideAndOptOutProperty(Z)Z+]Ljava/util/function/BooleanSupplier;Lcom/android/server/wm/AppCompatOrientationOverrides$$ExternalSyntheticLambda2;,Lcom/android/server/wm/AppCompatUtils$1;,Lcom/android/server/wm/utils/OptPropFactory$OptProp$$ExternalSyntheticLambda0;
 HPLcom/android/server/wm/utils/RegionUtils;->forEachRectReverse(Landroid/graphics/Region;Ljava/util/function/Consumer;)V
 HSPLcom/android/server/wm/utils/RegionUtils;->rectListToRegion(Ljava/util/List;Landroid/graphics/Region;)V+]Landroid/graphics/Region;Landroid/graphics/Region;]Ljava/util/List;Ljava/util/ArrayList;
+Landroid/accessibilityservice/IAccessibilityServiceClient$Stub$Proxy;
+Landroid/accounts/AccountManager$BaseFutureTask$Response;
+Landroid/accounts/IAccountAuthenticator$Stub$Proxy;
+Landroid/accounts/IAccountManagerResponse$Stub$Proxy;
+Landroid/app/ActivityManager$2;
+Landroid/app/ActivityThread$ApplicationThread;
+Landroid/app/AlarmManager$ListenerWrapper;
+Landroid/app/AppOpsManager$3;
+Landroid/app/AppOpsManager$4;
+Landroid/app/AppOpsManager$6;
+Landroid/app/ApplicationPackageManager;
+Landroid/app/ContextImpl$ApplicationContentResolver;
 Landroid/app/IAlarmListener$Stub$Proxy;
+Landroid/app/IApplicationThread$Stub$Proxy;
+Landroid/app/IForegroundServiceObserver$Stub$Proxy;
+Landroid/app/IInstantAppResolver$Stub$Proxy;
+Landroid/app/IServiceConnection$Stub$Proxy;
+Landroid/app/ITaskStackListener$Stub$Proxy;
+Landroid/app/IUidObserver$Stub$Proxy;
+Landroid/app/IWallpaperManagerCallback$Stub$Proxy;
+Landroid/app/JobSchedulerImpl;
+Landroid/app/KeyguardManager$1;
+Landroid/app/LoadedApk$ReceiverDispatcher$Args;
+Landroid/app/LoadedApk$ReceiverDispatcher$InnerReceiver;
+Landroid/app/LoadedApk$ServiceDispatcher$InnerConnection;
+Landroid/app/PendingIntent$FinishedDispatcher;
+Landroid/app/SharedPreferencesImpl;
+Landroid/app/backup/IBackupManagerMonitor$Stub$Proxy;
+Landroid/app/backup/IBackupObserver$Stub$Proxy;
 Landroid/app/job/IJobService$Stub$Proxy;
+Landroid/app/job/JobServiceEngine$JobInterface;
+Landroid/content/ContentProviderProxy;
+Landroid/content/ContentResolver$CursorWrapperInner;
+Landroid/content/IIntentReceiver$Stub$Proxy;
+Landroid/content/ISyncAdapter$Stub$Proxy;
 Landroid/content/ISyncStatusObserver$Stub$Proxy;
+Landroid/content/pm/IOnAppsChangedListener$Stub$Proxy;
+Landroid/content/pm/IOnChecksumsReadyListener$Stub$Proxy;
+Landroid/content/pm/IPackageInstallerCallback$Stub$Proxy;
+Landroid/content/pm/LabeledIntent;
+Landroid/content/pm/PackageInstaller$SessionCallbackDelegate;
+Landroid/content/res/XmlBlock$Parser;
+Landroid/database/ContentObserver$Transport;
+Landroid/database/IContentObserver$Stub$Proxy;
+Landroid/database/sqlite/SQLiteCursor;
+Landroid/hardware/SystemSensorManager;
+Landroid/hardware/devicestate/DeviceStateManagerGlobal$DeviceStateManagerCallback;
+Landroid/hardware/display/DisplayManagerGlobal$DisplayManagerCallback;
+Landroid/hardware/display/IDisplayManagerCallback$Stub$Proxy;
+Landroid/hardware/face/IFaceServiceReceiver$Stub$Proxy;
+Landroid/hardware/input/IInputDevicesChangedListener$Stub$Proxy;
+Landroid/hardware/input/InputManagerGlobal$InputDevicesChangedListener;
+Landroid/location/LocationManager$LocationListenerTransport;
+Landroid/media/AudioManager$2;
+Landroid/media/AudioManager$3;
+Landroid/media/IAudioRoutesObserver$Stub$Proxy;
+Landroid/media/IMediaRouterClient$Stub$Proxy;
+Landroid/media/IRecordingConfigDispatcher$Stub$Proxy;
+Landroid/media/MediaRouter$Static$1;
+Landroid/media/MediaRouter$Static$Client;
+Landroid/media/session/IActiveSessionsListener$Stub$Proxy;
+Landroid/media/session/ISessionControllerCallback$Stub$Proxy;
+Landroid/media/session/MediaSessionManager$SessionsChangedWrapper$1;
+Landroid/net/INetworkRecommendationProvider$Stub$Proxy;
+Landroid/net/LocalSocketImpl$SocketInputStream;
+Landroid/net/LocalSocketImpl$SocketOutputStream;
+Landroid/net/NetworkStats$1;
+Landroid/net/Uri$HierarchicalUri;
+Landroid/net/Uri$OpaqueUri;
+Landroid/net/Uri$PathSegments;
+Landroid/net/Uri$StringUri;
+Landroid/os/BinderProxy;
+Landroid/os/IInstalld$Stub$Proxy;
+Landroid/os/IRemoteCallback$Stub$Proxy;
 Landroid/os/RemoteCallbackList$Builder$1;
+Landroid/os/StrictMode$5;
+Landroid/os/StrictMode$BackgroundActivityLaunchCallback;
+Landroid/os/SystemClock$1;
+Landroid/service/notification/ConditionProviderService$Provider;
 Landroid/service/notification/INotificationListener$Stub$Proxy;
+Landroid/service/notification/NotificationListenerService$NotificationListenerWrapper;
+Landroid/service/textclassifier/ITextClassifierCallback$Stub$Proxy;
+Landroid/service/trust/ITrustAgentService$Stub$Proxy;
+Landroid/service/voice/IVoiceInteractionSession$Stub$Proxy;
+Landroid/service/wallpaper/IWallpaperEngine$Stub$Proxy;
+Landroid/system/suspend/internal/ISuspendControlServiceInternal$Stub$Proxy;
+Landroid/telephony/CellIdentityLte;
+Landroid/telephony/CellIdentityNr;
+Landroid/telephony/CellSignalStrengthGsm;
+Landroid/telephony/CellSignalStrengthWcdma;
+Landroid/telephony/PhoneStateListener$IPhoneStateListenerStub;
+Landroid/telephony/TelephonyCallback$IPhoneStateListenerStub;
+Landroid/telephony/TelephonyRegistryManager$1;
+Landroid/telephony/TelephonyRegistryManager$3;
+Landroid/telephony/TelephonyRegistryManager$CarrierPrivilegesCallbackWrapper;
+Landroid/text/SpannableString;
+Landroid/util/MapCollections$ArrayIterator;
+Landroid/util/MapCollections$EntrySet;
+Landroid/util/MapCollections$KeySet;
+Landroid/util/MapCollections$MapIterator;
+Landroid/util/MapCollections$ValuesCollection;
+Landroid/util/RecurrenceRule$RecurringIterator;
+Landroid/util/Spline$MonotoneCubicSpline;
+Landroid/view/IDisplayWindowInsetsController$Stub$Proxy;
+Landroid/view/IDisplayWindowListener$Stub$Proxy;
+Landroid/view/ISystemGestureExclusionListener$Stub$Proxy;
+Landroid/view/IWallpaperVisibilityListener$Stub$Proxy;
+Landroid/view/IWindow$Stub$Proxy;
+Landroid/view/ViewRootImpl$AccessibilityInteractionConnection;
+Landroid/view/ViewRootImpl$W;
+Landroid/view/WindowManagerImpl;
+Landroid/view/accessibility/AccessibilityManager$1;
+Landroid/view/accessibility/IAccessibilityInteractionConnection$Stub$Proxy;
+Landroid/view/accessibility/IAccessibilityManagerClient$Stub$Proxy;
+Landroid/view/inputmethod/ImeTracker$1;
+Landroid/view/inputmethod/InputMethodManager$2;
+Landroid/window/ITaskFragmentOrganizer$Stub$Proxy;
+Lcom/android/internal/app/IAppOpsActiveCallback$Stub$Proxy;
 Lcom/android/internal/app/IAppOpsCallback$Stub$Proxy;
+Lcom/android/internal/app/IAppOpsNotedCallback$Stub$Proxy;
+Lcom/android/internal/appwidget/IAppWidgetHost$Stub$Proxy;
+Lcom/android/internal/backup/IBackupTransport$Stub$Proxy;
+Lcom/android/internal/content/PackageMonitor$PackageMonitorCallback;
+Lcom/android/internal/inputmethod/IInputMethodSession$Stub$Proxy;
+Lcom/android/internal/inputmethod/ImeTracingPerfettoImpl;
+Lcom/android/internal/os/Clock$1;
+Lcom/android/internal/os/IResultReceiver$Stub$Proxy;
+Lcom/android/internal/pm/parsing/pkg/PackageImpl;
+Lcom/android/internal/pm/pkg/AndroidPackageSplitImpl;
+Lcom/android/internal/pm/pkg/component/ParsedActivityImpl;
+Lcom/android/internal/pm/pkg/component/ParsedAttributionImpl;
+Lcom/android/internal/pm/pkg/component/ParsedIntentInfoImpl;
+Lcom/android/internal/pm/pkg/component/ParsedPermissionImpl;
+Lcom/android/internal/pm/pkg/component/ParsedServiceImpl;
+Lcom/android/internal/pm/pkg/component/ParsedUsesPermissionImpl;
 Lcom/android/internal/statusbar/IStatusBar$Stub$Proxy;
+Lcom/android/internal/telephony/IOnSubscriptionsChangedListener$Stub$Proxy;
+Lcom/android/internal/telephony/IPhoneStateListener$Stub$Proxy;
+Lcom/android/internal/util/ArtBinaryXmlPullParser;
+Lcom/android/internal/util/ArtBinaryXmlSerializer;
+Lcom/android/internal/util/ConcurrentUtils$DirectExecutor;
+Lcom/android/internal/util/XmlUtils$ForcedTypedXmlSerializer;
+Lcom/android/internal/util/function/pooled/PooledLambdaImpl;
+Lcom/android/org/bouncycastle/jcajce/provider/asymmetric/dsa/BCDSAPublicKey;
+Lcom/android/org/conscrypt/OpenSSLRSAPublicKey;
+Lcom/android/org/conscrypt/OpenSSLX509Certificate;
+Lcom/android/org/kxml2/io/KXmlParser;
+Lcom/android/org/kxml2/io/KXmlSerializer;
 Lcom/android/server/BatteryService$LocalService;
 Lcom/android/server/BinaryTransparencyService$BinaryTransparencyServiceImpl$$ExternalSyntheticLambda0;
 Lcom/android/server/DeviceIdleController$LocalService;
@@ -4389,6 +4671,7 @@
 Lcom/android/server/job/JobSchedulerService$4;
 Lcom/android/server/job/controllers/BackgroundJobsController$2;
 Lcom/android/server/job/controllers/QuotaController$TempAllowlistTracker;
+Lcom/android/server/lights/LightsService$LightImpl;
 Lcom/android/server/net/NetworkManagementService$LocalService;
 Lcom/android/server/net/NetworkManagementService$NetdUnsolicitedEventListener;
 Lcom/android/server/net/NetworkPolicyManagerService$NetworkPolicyManagerInternalImpl;
@@ -4397,7 +4680,12 @@
 Lcom/android/server/pm/CrossProfileIntentResolver;
 Lcom/android/server/pm/PackageManagerService$IPackageManagerImpl;
 Lcom/android/server/pm/PackageManagerService$PackageManagerInternalImpl;
+Lcom/android/server/pm/PackageSetting;
 Lcom/android/server/pm/UserManagerService$LocalService;
+Lcom/android/server/pm/local/PackageManagerLocalImpl$UnfilteredSnapshotImpl;
+Lcom/android/server/pm/local/PackageManagerLocalImpl;
+Lcom/android/server/pm/pkg/PackageUserStateImpl;
+Lcom/android/server/pm/pkg/SharedLibraryWrapper;
 Lcom/android/server/pm/resolution/ComponentResolver$ActivityIntentResolver;
 Lcom/android/server/pm/resolution/ComponentResolver$ProviderIntentResolver;
 Lcom/android/server/pm/resolution/ComponentResolver$ReceiverIntentResolver;
@@ -4407,7 +4695,6 @@
 Lcom/android/server/power/PowerManagerService$LocalService;
 Lcom/android/server/power/stats/BatteryStatsImpl$1;
 Lcom/android/server/power/stats/BatteryStatsImpl$ControllerActivityCounterImpl;
-Lcom/android/server/power/stats/BatteryStatsImpl$DualTimer;
 Lcom/android/server/power/stats/BatteryStatsImpl$LongSamplingCounter;
 Lcom/android/server/power/stats/BatteryStatsImpl$TimeMultiStateCounter;
 Lcom/android/server/power/stats/BatteryStatsImpl$Uid$Sensor;
@@ -4422,3 +4709,88 @@
 Lcom/android/server/wm/ActivityTaskManagerService$LocalService;
 Lcom/android/server/wm/WindowManagerService$LocalService;
 Lcom/android/server/wm/WindowState;
+Ljava/lang/ThreadLocal$SuppliedThreadLocal;
+Ljava/lang/UNIXProcess$ProcessPipeOutputStream;
+Ljava/lang/UNIXProcess;
+Ljava/nio/HeapByteBuffer;
+Ljava/nio/HeapCharBuffer;
+Ljava/security/MessageDigest$Delegate;
+Ljava/time/Clock$SystemClock;
+Ljava/util/ArrayDeque$DeqIterator;
+Ljava/util/ArrayDeque$DescendingIterator;
+Ljava/util/ArrayList$Itr;
+Ljava/util/ArrayList$SubList$1;
+Ljava/util/ArrayList$SubList;
+Ljava/util/Arrays$ArrayItr;
+Ljava/util/Arrays$ArrayList;
+Ljava/util/Collections$1;
+Ljava/util/Collections$EmptyIterator;
+Ljava/util/Collections$EmptyList;
+Ljava/util/Collections$EmptyMap;
+Ljava/util/Collections$EmptySet;
+Ljava/util/Collections$SetFromMap;
+Ljava/util/Collections$SingletonList;
+Ljava/util/Collections$SynchronizedMap;
+Ljava/util/Collections$SynchronizedRandomAccessList;
+Ljava/util/Collections$SynchronizedSet;
+Ljava/util/Collections$UnmodifiableCollection$1;
+Ljava/util/Collections$UnmodifiableCollection;
+Ljava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$1;
+Ljava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$UnmodifiableEntry;
+Ljava/util/Collections$UnmodifiableMap$UnmodifiableEntrySet;
+Ljava/util/Collections$UnmodifiableMap;
+Ljava/util/Collections$UnmodifiableRandomAccessList;
+Ljava/util/Collections$UnmodifiableSet;
+Ljava/util/Comparator$$ExternalSyntheticLambda0;
+Ljava/util/GregorianCalendar;
+Ljava/util/HashMap$EntryIterator;
+Ljava/util/HashMap$EntrySet;
+Ljava/util/HashMap$KeyIterator;
+Ljava/util/HashMap$KeySet;
+Ljava/util/HashMap$Node;
+Ljava/util/HashMap$ValueIterator;
+Ljava/util/HashMap$Values;
+Ljava/util/ImmutableCollections$List12;
+Ljava/util/ImmutableCollections$ListItr;
+Ljava/util/ImmutableCollections$ListN;
+Ljava/util/ImmutableCollections$MapN;
+Ljava/util/ImmutableCollections$Set12;
+Ljava/util/ImmutableCollections$SetN;
+Ljava/util/LinkedHashMap$Entry;
+Ljava/util/LinkedHashMap$LinkedEntryIterator;
+Ljava/util/LinkedHashMap$LinkedEntrySet;
+Ljava/util/LinkedHashMap$LinkedKeyIterator;
+Ljava/util/LinkedHashMap$LinkedKeySet;
+Ljava/util/LinkedHashMap$LinkedValueIterator;
+Ljava/util/LinkedHashMap$LinkedValues;
+Ljava/util/LinkedList$DescendingIterator;
+Ljava/util/LinkedList$ListItr;
+Ljava/util/PriorityQueue$Itr;
+Ljava/util/TreeMap$EntryIterator;
+Ljava/util/TreeMap$EntrySet;
+Ljava/util/TreeMap$KeyIterator;
+Ljava/util/TreeMap$NavigableSubMap$SubMapKeyIterator;
+Ljava/util/TreeMap$TreeMapEntry;
+Ljava/util/TreeMap$ValueIterator;
+Ljava/util/TreeMap$Values;
+Ljava/util/WeakHashMap$KeyIterator;
+Ljava/util/WeakHashMap$KeySet;
+Ljava/util/concurrent/ConcurrentHashMap$EntryIterator;
+Ljava/util/concurrent/ConcurrentHashMap$EntrySetView;
+Ljava/util/concurrent/ConcurrentHashMap$KeyIterator;
+Ljava/util/concurrent/ConcurrentHashMap$MapEntry;
+Ljava/util/concurrent/ConcurrentHashMap$ValueIterator;
+Ljava/util/concurrent/ConcurrentHashMap$ValuesView;
+Ljava/util/concurrent/ConcurrentLinkedQueue$Itr;
+Ljava/util/concurrent/CopyOnWriteArrayList$COWIterator;
+Ljava/util/concurrent/Executors$AutoShutdownDelegatedExecutorService;
+Ljava/util/concurrent/Executors$DelegatedScheduledExecutorService;
+Ljava/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask;
+Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject;
+Ljava/util/stream/ReferencePipeline$2;
+Ljava/util/stream/ReferencePipeline$3;
+Ljava/util/stream/ReferencePipeline$4;
+Ljava/util/stream/ReferencePipeline$Head;
+Ljava/util/zip/GZIPInputStream;
+Llibcore/util/ZoneInfo;
+Lsun/nio/fs/UnixPath;
diff --git a/services/backup/java/com/android/server/backup/fullbackup/PerformFullTransportBackupTask.java b/services/backup/java/com/android/server/backup/fullbackup/PerformFullTransportBackupTask.java
index bd34f33..c182c26 100644
--- a/services/backup/java/com/android/server/backup/fullbackup/PerformFullTransportBackupTask.java
+++ b/services/backup/java/com/android/server/backup/fullbackup/PerformFullTransportBackupTask.java
@@ -149,7 +149,6 @@
 
     OperationStorage mOperationStorage;
     List<PackageInfo> mPackages;
-    PackageInfo mCurrentPackage;
     boolean mUpdateSchedule;
     CountDownLatch mLatch;
     FullBackupJob mJob;             // if a scheduled job needs to be finished afterwards
@@ -207,10 +206,9 @@
         for (String pkg : whichPackages) {
             try {
                 PackageManager pm = backupManagerService.getPackageManager();
-                PackageInfo info = pm.getPackageInfoAsUser(pkg,
+                PackageInfo packageInfo = pm.getPackageInfoAsUser(pkg,
                         PackageManager.GET_SIGNING_CERTIFICATES, mUserId);
-                mCurrentPackage = info;
-                if (!mBackupEligibilityRules.appIsEligibleForBackup(info.applicationInfo)) {
+                if (!mBackupEligibilityRules.appIsEligibleForBackup(packageInfo.applicationInfo)) {
                     // Cull any packages that have indicated that backups are not permitted,
                     // that run as system-domain uids but do not define their own backup agents,
                     // as well as any explicit mention of the 'special' shared-storage agent
@@ -220,13 +218,13 @@
                     }
                     mBackupManagerMonitorEventSender.monitorEvent(
                             BackupManagerMonitor.LOG_EVENT_ID_PACKAGE_INELIGIBLE,
-                            mCurrentPackage,
+                            packageInfo,
                             BackupManagerMonitor.LOG_EVENT_CATEGORY_BACKUP_MANAGER_POLICY,
-                            null);
+                            /* extras= */ null);
                     BackupObserverUtils.sendBackupOnPackageResult(mBackupObserver, pkg,
                             BackupManager.ERROR_BACKUP_NOT_ALLOWED);
                     continue;
-                } else if (!mBackupEligibilityRules.appGetsFullBackup(info)) {
+                } else if (!mBackupEligibilityRules.appGetsFullBackup(packageInfo)) {
                     // Cull any packages that are found in the queue but now aren't supposed
                     // to get full-data backup operations.
                     if (DEBUG) {
@@ -235,13 +233,13 @@
                     }
                     mBackupManagerMonitorEventSender.monitorEvent(
                             BackupManagerMonitor.LOG_EVENT_ID_PACKAGE_KEY_VALUE_PARTICIPANT,
-                            mCurrentPackage,
+                            packageInfo,
                             BackupManagerMonitor.LOG_EVENT_CATEGORY_BACKUP_MANAGER_POLICY,
-                            null);
+                            /* extras= */ null);
                     BackupObserverUtils.sendBackupOnPackageResult(mBackupObserver, pkg,
                             BackupManager.ERROR_BACKUP_NOT_ALLOWED);
                     continue;
-                } else if (mBackupEligibilityRules.appIsStopped(info.applicationInfo)) {
+                } else if (mBackupEligibilityRules.appIsStopped(packageInfo.applicationInfo)) {
                     // Cull any packages in the 'stopped' state: they've either just been
                     // installed or have explicitly been force-stopped by the user.  In both
                     // cases we do not want to launch them for backup.
@@ -250,21 +248,21 @@
                     }
                     mBackupManagerMonitorEventSender.monitorEvent(
                             BackupManagerMonitor.LOG_EVENT_ID_PACKAGE_STOPPED,
-                            mCurrentPackage,
+                            packageInfo,
                             BackupManagerMonitor.LOG_EVENT_CATEGORY_BACKUP_MANAGER_POLICY,
-                            null);
+                            /* extras= */ null);
                     BackupObserverUtils.sendBackupOnPackageResult(mBackupObserver, pkg,
                             BackupManager.ERROR_BACKUP_NOT_ALLOWED);
                     continue;
                 }
-                mPackages.add(info);
+                mPackages.add(packageInfo);
             } catch (NameNotFoundException e) {
                 Slog.i(TAG, "Requested package " + pkg + " not found; ignoring");
                 mBackupManagerMonitorEventSender.monitorEvent(
                         BackupManagerMonitor.LOG_EVENT_ID_PACKAGE_NOT_FOUND,
-                        mCurrentPackage,
+                        /* pkg= */ null,
                         BackupManagerMonitor.LOG_EVENT_CATEGORY_BACKUP_MANAGER_POLICY,
-                        null);
+                        /* extras= */ null);
             }
         }
 
@@ -352,10 +350,11 @@
                 } else {
                     monitoringEvent = BackupManagerMonitor.LOG_EVENT_ID_DEVICE_NOT_PROVISIONED;
                 }
-                mBackupManagerMonitorEventSender
-                        .monitorEvent(monitoringEvent, null,
-                                BackupManagerMonitor.LOG_EVENT_CATEGORY_BACKUP_MANAGER_POLICY,
-                                null);
+                mBackupManagerMonitorEventSender.monitorEvent(
+                        monitoringEvent,
+                        /* pkg= */ null,
+                        BackupManagerMonitor.LOG_EVENT_CATEGORY_BACKUP_MANAGER_POLICY,
+                        /* extras= */ null);
                 mUpdateSchedule = false;
                 backupRunStatus = BackupManager.ERROR_BACKUP_NOT_ALLOWED;
                 return;
@@ -367,8 +366,9 @@
                 backupRunStatus = BackupManager.ERROR_TRANSPORT_ABORTED;
                 mBackupManagerMonitorEventSender.monitorEvent(
                         BackupManagerMonitor.LOG_EVENT_ID_PACKAGE_TRANSPORT_NOT_PRESENT,
-                        mCurrentPackage, BackupManagerMonitor.LOG_EVENT_CATEGORY_TRANSPORT,
-                        null);
+                        /* pkg= */ null,
+                        BackupManagerMonitor.LOG_EVENT_CATEGORY_TRANSPORT,
+                        /* extras= */ null);
                 return;
             }
 
@@ -461,9 +461,10 @@
                         }
                         mBackupManagerMonitorEventSender.monitorEvent(
                                 BackupManagerMonitor.LOG_EVENT_ID_ERROR_PREFLIGHT,
-                                mCurrentPackage,
+                                currentPackage,
                                 BackupManagerMonitor.LOG_EVENT_CATEGORY_BACKUP_MANAGER_POLICY,
-                                mBackupManagerMonitorEventSender.putMonitoringExtra(null,
+                                BackupManagerMonitorEventSender.putMonitoringExtra(
+                                        /* extras= */ null,
                                         BackupManagerMonitor.EXTRA_LOG_PREFLIGHT_ERROR,
                                         preflightResult));
                         backupPackageStatus = (int) preflightResult;
@@ -496,9 +497,9 @@
                                     + ": " + totalRead + " of " + quota);
                             mBackupManagerMonitorEventSender.monitorEvent(
                                     BackupManagerMonitor.LOG_EVENT_ID_QUOTA_HIT_PREFLIGHT,
-                                    mCurrentPackage,
+                                    currentPackage,
                                     BackupManagerMonitor.LOG_EVENT_CATEGORY_TRANSPORT,
-                                    null);
+                                    /* extras= */ null);
                             mBackupRunner.sendQuotaExceeded(totalRead, quota);
                         }
                     }
@@ -645,9 +646,9 @@
             Slog.w(TAG, "Exception trying full transport backup", e);
             mBackupManagerMonitorEventSender.monitorEvent(
                     BackupManagerMonitor.LOG_EVENT_ID_EXCEPTION_FULL_BACKUP,
-                    mCurrentPackage,
+                    /* pkg= */ null,
                     BackupManagerMonitor.LOG_EVENT_CATEGORY_BACKUP_MANAGER_POLICY,
-                    mBackupManagerMonitorEventSender.putMonitoringExtra(null,
+                    BackupManagerMonitorEventSender.putMonitoringExtra(/* extras= */ null,
                             BackupManagerMonitor.EXTRA_LOG_EXCEPTION_FULL_BACKUP,
                             Log.getStackTraceString(e)));
 
@@ -966,9 +967,6 @@
             }
         }
 
-
-        // BackupRestoreTask interface: specifically, timeout detection
-
         @Override
         public void execute() { /* intentionally empty */ }
 
@@ -981,7 +979,9 @@
 
             mBackupManagerMonitorEventSender.monitorEvent(
                     BackupManagerMonitor.LOG_EVENT_ID_FULL_BACKUP_CANCEL,
-                    mCurrentPackage, BackupManagerMonitor.LOG_EVENT_CATEGORY_AGENT, null);
+                    mTarget,
+                    BackupManagerMonitor.LOG_EVENT_CATEGORY_AGENT,
+                    /* extras= */ null);
             mIsCancelled = true;
             // Cancel tasks spun off by this task.
             mUserBackupManagerService.handleCancel(mEphemeralToken, cancelAll);
diff --git a/services/backup/java/com/android/server/backup/utils/BackupManagerMonitorEventSender.java b/services/backup/java/com/android/server/backup/utils/BackupManagerMonitorEventSender.java
index c4519b1..33668a6 100644
--- a/services/backup/java/com/android/server/backup/utils/BackupManagerMonitorEventSender.java
+++ b/services/backup/java/com/android/server/backup/utils/BackupManagerMonitorEventSender.java
@@ -71,6 +71,7 @@
         mMonitor = monitor;
     }
 
+    @Nullable
     public IBackupManagerMonitor getMonitor() {
         return mMonitor;
     }
@@ -87,9 +88,9 @@
      */
     public void monitorEvent(
             int id,
-            PackageInfo pkg,
+            @Nullable PackageInfo pkg,
             int category,
-            Bundle extras) {
+            @Nullable Bundle extras) {
         try {
             Bundle bundle = new Bundle();
             bundle.putInt(BackupManagerMonitor.EXTRA_LOG_EVENT_ID, id);
diff --git a/services/core/java/com/android/server/StorageManagerService.java b/services/core/java/com/android/server/StorageManagerService.java
index b6fe0ad..e46bbe2 100644
--- a/services/core/java/com/android/server/StorageManagerService.java
+++ b/services/core/java/com/android/server/StorageManagerService.java
@@ -160,6 +160,7 @@
 import com.android.server.pm.Installer;
 import com.android.server.pm.UserManagerInternal;
 import com.android.server.storage.AppFuseBridge;
+import com.android.server.storage.ImmutableVolumeInfo;
 import com.android.server.storage.StorageSessionController;
 import com.android.server.storage.StorageSessionController.ExternalStorageServiceException;
 import com.android.server.storage.WatchedVolumeInfo;
@@ -777,7 +778,7 @@
                     break;
                 }
                 case H_VOLUME_UNMOUNT: {
-                    final WatchedVolumeInfo vol = (WatchedVolumeInfo) msg.obj;
+                    final ImmutableVolumeInfo vol = (ImmutableVolumeInfo) msg.obj;
                     unmount(vol);
                     break;
                 }
@@ -898,8 +899,14 @@
                         for (int i = 0; i < size; i++) {
                             final WatchedVolumeInfo vol = mVolumes.valueAt(i);
                             if (vol.getMountUserId() == userId) {
+                                // Capture the volume before we set mount user id to null,
+                                // so that StorageSessionController remove the session from
+                                // the correct user (old mount user id)
+                                final ImmutableVolumeInfo volToUnmount
+                                        = vol.getClonedImmutableVolumeInfo();
                                 vol.setMountUserId(UserHandle.USER_NULL);
-                                mHandler.obtainMessage(H_VOLUME_UNMOUNT, vol).sendToTarget();
+                                mHandler.obtainMessage(H_VOLUME_UNMOUNT, volToUnmount)
+                                        .sendToTarget();
                             }
                         }
                     }
@@ -1295,7 +1302,12 @@
     }
 
     private void maybeRemountVolumes(int userId) {
-        List<WatchedVolumeInfo> volumesToRemount = new ArrayList<>();
+        // We need to keep 2 lists
+        // 1. List of volumes before we set the mount user Id so that
+        // StorageSessionController is able to remove the session from the correct user (old one)
+        // 2. List of volumes to mount which should have the up to date info
+        List<ImmutableVolumeInfo> volumesToUnmount = new ArrayList<>();
+        List<WatchedVolumeInfo> volumesToMount = new ArrayList<>();
         synchronized (mLock) {
             for (int i = 0; i < mVolumes.size(); i++) {
                 final WatchedVolumeInfo vol = mVolumes.valueAt(i);
@@ -1303,16 +1315,19 @@
                         && vol.getMountUserId() != mCurrentUserId) {
                     // If there's a visible secondary volume mounted,
                     // we need to update the currentUserId and remount
+                    // But capture the volume with the old user id first to use it in unmounting
+                    volumesToUnmount.add(vol.getClonedImmutableVolumeInfo());
                     vol.setMountUserId(mCurrentUserId);
-                    volumesToRemount.add(vol);
+                    volumesToMount.add(vol);
                 }
             }
         }
 
-        for (WatchedVolumeInfo vol : volumesToRemount) {
-            Slog.i(TAG, "Remounting volume for user: " + userId + ". Volume: " + vol);
-            mHandler.obtainMessage(H_VOLUME_UNMOUNT, vol).sendToTarget();
-            mHandler.obtainMessage(H_VOLUME_MOUNT, vol).sendToTarget();
+        for (int i = 0; i < volumesToMount.size(); i++) {
+            Slog.i(TAG, "Remounting volume for user: " + userId + ". Volume: "
+                    + volumesToUnmount.get(i));
+            mHandler.obtainMessage(H_VOLUME_UNMOUNT, volumesToUnmount.get(i)).sendToTarget();
+            mHandler.obtainMessage(H_VOLUME_MOUNT, volumesToMount.get(i)).sendToTarget();
         }
     }
 
@@ -2430,10 +2445,10 @@
         super.unmount_enforcePermission();
 
         final WatchedVolumeInfo vol = findVolumeByIdOrThrow(volId);
-        unmount(vol);
+        unmount(vol.getClonedImmutableVolumeInfo());
     }
 
-    private void unmount(WatchedVolumeInfo vol) {
+    private void unmount(ImmutableVolumeInfo vol) {
         try {
             try {
                 if (vol.getType() == VolumeInfo.TYPE_PRIVATE) {
@@ -2444,7 +2459,7 @@
             }
             extendWatchdogTimeout("#unmount might be slow");
             mVold.unmount(vol.getId());
-            mStorageSessionController.onVolumeUnmount(vol.getImmutableVolumeInfo());
+            mStorageSessionController.onVolumeUnmount(vol);
         } catch (Exception e) {
             Slog.wtf(TAG, e);
         }
diff --git a/services/core/java/com/android/server/SystemTimeZone.java b/services/core/java/com/android/server/SystemTimeZone.java
index dd07081..c8810f6 100644
--- a/services/core/java/com/android/server/SystemTimeZone.java
+++ b/services/core/java/com/android/server/SystemTimeZone.java
@@ -133,6 +133,7 @@
         boolean timeZoneChanged = false;
         synchronized (SystemTimeZone.class) {
             String currentTimeZoneId = getTimeZoneId();
+            @TimeZoneConfidence int currentConfidence = getTimeZoneConfidence();
             if (currentTimeZoneId == null || !currentTimeZoneId.equals(timeZoneId)) {
                 SystemProperties.set(TIME_ZONE_SYSTEM_PROPERTY, timeZoneId);
                 if (DEBUG) {
@@ -145,6 +146,8 @@
                 String logMsg = "Time zone or confidence set: "
                         + " (new) timeZoneId=" + timeZoneId
                         + ", (new) confidence=" + confidence
+                        + ", (old) timeZoneId=" + currentTimeZoneId
+                        + ", (old) confidence=" + currentConfidence
                         + ", logInfo=" + logInfo;
                 addDebugLogEntry(logMsg);
             }
diff --git a/services/core/java/com/android/server/TelephonyRegistry.java b/services/core/java/com/android/server/TelephonyRegistry.java
index bd7a0ac..b75b7ddf 100644
--- a/services/core/java/com/android/server/TelephonyRegistry.java
+++ b/services/core/java/com/android/server/TelephonyRegistry.java
@@ -2816,13 +2816,11 @@
         if (!checkNotifyPermission("notifyEmergencyNumberList()")) {
             return;
         }
-        if (Flags.enforceTelephonyFeatureMappingForPublicApis()) {
-            if (!mContext.getPackageManager().hasSystemFeature(
-                    PackageManager.FEATURE_TELEPHONY_CALLING)) {
-                // TelephonyManager.getEmergencyNumberList() throws an exception if
-                // FEATURE_TELEPHONY_CALLING is not defined.
-                return;
-            }
+        if (!mContext.getPackageManager().hasSystemFeature(
+                PackageManager.FEATURE_TELEPHONY_CALLING)) {
+            // TelephonyManager.getEmergencyNumberList() throws an exception if
+            // FEATURE_TELEPHONY_CALLING is not defined.
+            return;
         }
 
         synchronized (mRecords) {
diff --git a/services/core/java/com/android/server/UiModeManagerService.java b/services/core/java/com/android/server/UiModeManagerService.java
index 8eda176..296f7cf 100644
--- a/services/core/java/com/android/server/UiModeManagerService.java
+++ b/services/core/java/com/android/server/UiModeManagerService.java
@@ -907,7 +907,7 @@
                     throw new IllegalArgumentException("Unknown mode: " + mode);
             }
 
-            enforceCurrentUserIfVisibleBackgroundEnabled(mCurrentUser);
+            enforceCurrentUserIfVisibleBackgroundEnabled();
 
             final int user = UserHandle.getCallingUserId();
             final long ident = Binder.clearCallingIdentity();
@@ -970,7 +970,7 @@
                 @AttentionModeThemeOverlayType int attentionModeThemeOverlayType) {
             setAttentionModeThemeOverlay_enforcePermission();
 
-            enforceCurrentUserIfVisibleBackgroundEnabled(mCurrentUser);
+            enforceCurrentUserIfVisibleBackgroundEnabled();
 
             synchronized (mLock) {
                 if (mAttentionModeThemeOverlay != attentionModeThemeOverlayType) {
@@ -1070,7 +1070,7 @@
                 return false;
             }
 
-            enforceCurrentUserIfVisibleBackgroundEnabled(mCurrentUser);
+            enforceCurrentUserIfVisibleBackgroundEnabled();
 
             // Store the last requested bedtime night mode state so that we don't need to notify
             // anyone if the user decides to switch to the night mode to bedtime.
@@ -1124,7 +1124,7 @@
                 return;
             }
 
-            enforceCurrentUserIfVisibleBackgroundEnabled(mCurrentUser);
+            enforceCurrentUserIfVisibleBackgroundEnabled();
 
             final int user = UserHandle.getCallingUserId();
             final long ident = Binder.clearCallingIdentity();
@@ -1155,7 +1155,7 @@
                 return;
             }
 
-            enforceCurrentUserIfVisibleBackgroundEnabled(mCurrentUser);
+            enforceCurrentUserIfVisibleBackgroundEnabled();
 
             final int user = UserHandle.getCallingUserId();
             final long ident = Binder.clearCallingIdentity();
@@ -1178,7 +1178,7 @@
             assertLegit(callingPackage);
             assertSingleProjectionType(projectionType);
             enforceProjectionTypePermissions(projectionType);
-            enforceCurrentUserIfVisibleBackgroundEnabled(mCurrentUser);
+            enforceCurrentUserIfVisibleBackgroundEnabled();
 
             synchronized (mLock) {
                 if (mProjectionHolders == null) {
@@ -1224,7 +1224,7 @@
             assertLegit(callingPackage);
             assertSingleProjectionType(projectionType);
             enforceProjectionTypePermissions(projectionType);
-            enforceCurrentUserIfVisibleBackgroundEnabled(mCurrentUser);
+            enforceCurrentUserIfVisibleBackgroundEnabled();
 
             return releaseProjectionUnchecked(projectionType, callingPackage);
         }
@@ -1266,7 +1266,7 @@
                 return;
             }
 
-            enforceCurrentUserIfVisibleBackgroundEnabled(mCurrentUser);
+            enforceCurrentUserIfVisibleBackgroundEnabled();
 
             synchronized (mLock) {
                 if (mProjectionListeners == null) {
diff --git a/services/core/java/com/android/server/am/ActiveServices.java b/services/core/java/com/android/server/am/ActiveServices.java
index 125824c..4187ee2 100644
--- a/services/core/java/com/android/server/am/ActiveServices.java
+++ b/services/core/java/com/android/server/am/ActiveServices.java
@@ -387,6 +387,15 @@
     @Overridable
     public static final long FGS_SAW_RESTRICTIONS = 319471980L;
 
+    /**
+     * Allows system to manage foreground state of service with type
+     * <li>{@link android.content.pm.ServiceInfo#FOREGROUND_SERVICE_TYPE_MEDIA_PLAYBACK}</li>
+     */
+    @ChangeId
+    @EnabledSince(targetSdkVersion = VERSION_CODES.VANILLA_ICE_CREAM)
+    @Overridable
+    public static final long MEDIA_FGS_STATE_TRANSITION = 281762171L;
+
     final ActivityManagerService mAm;
 
     // Maximum number of services that we allow to start in the background
@@ -9341,20 +9350,32 @@
                         == ServiceInfo.FOREGROUND_SERVICE_TYPE_NONE
                         && sr.foregroundId == notificationId) {
                     // check if service is explicitly requested by app to not be in foreground.
-                    if (sr.systemRequestedFgToBg) {
-                        Slog.d(TAG,
-                                "System initiated service transition to foreground "
-                                        + "for package "
-                                        + packageName);
-                        setServiceForegroundInnerLocked(sr, sr.foregroundId,
-                                sr.foregroundNoti, /* flags */ 0,
-                                ServiceInfo.FOREGROUND_SERVICE_TYPE_MEDIA_PLAYBACK,
-                                /* callingUidStart */ 0, /* systemRequestedTransition */ true);
+                    if (sr.systemRequestedFgToBg && CompatChanges.isChangeEnabled(
+                            MEDIA_FGS_STATE_TRANSITION, sr.appInfo.uid)) {
+                        if (DEBUG_FOREGROUND_SERVICE) {
+                            Slog.d(TAG,
+                                    "System initiated service transition to foreground "
+                                            + "for package "
+                                            + packageName);
+                        }
+                        try {
+                            setServiceForegroundInnerLocked(sr, sr.foregroundId,
+                                    sr.foregroundNoti, /* flags */ 0,
+                                    ServiceInfo.FOREGROUND_SERVICE_TYPE_MEDIA_PLAYBACK,
+                                    /* callingUidStart */ 0, /* systemRequestedTransition */ true);
+                        } catch (Exception e) {
+                            Slog.w(TAG,
+                                    "Exception in system initiated foreground service transition "
+                                            + "for package " + packageName
+                                            + ":" + e.toString());
+                        }
                     } else {
-                        Slog.d(TAG,
-                                "Ignoring system initiated foreground service transition for "
-                                        + "package"
-                                        + packageName);
+                        if (DEBUG_FOREGROUND_SERVICE) {
+                            Slog.d(TAG,
+                                    "Ignoring system initiated foreground service transition for "
+                                            + "package "
+                                            + packageName);
+                        }
                     }
                 }
             }
@@ -9388,14 +9409,32 @@
                 if (sr.foregroundServiceType
                         == ServiceInfo.FOREGROUND_SERVICE_TYPE_MEDIA_PLAYBACK
                         && sr.foregroundId == notificationId) {
-                    Slog.d(TAG,
-                            "System initiated transition of foreground service(type:media) to bg "
-                                    + "for package"
-                                    + packageName);
-                    setServiceForegroundInnerLocked(sr, /* id */ 0,
-                            /* notification */ null, /* flags */ 0,
-                            /* foregroundServiceType */ 0, /* callingUidStart */ 0,
-                            /* systemRequestedTransition */ true);
+                    if (CompatChanges.isChangeEnabled(MEDIA_FGS_STATE_TRANSITION, sr.appInfo.uid)) {
+                        if (DEBUG_FOREGROUND_SERVICE) {
+                            Slog.d(TAG,
+                                    "System initiated transition of foreground service"
+                                            + "(type:media) to"
+                                            + " bg "
+                                            + "for package "
+                                            + packageName);
+                        }
+                        try {
+                            setServiceForegroundInnerLocked(sr, /* id */ 0,
+                                    /* notification */ null, /* flags */ 0,
+                                    /* foregroundServiceType */ 0, /* callingUidStart */ 0,
+                                    /* systemRequestedTransition */ true);
+                        } catch (Exception e) {
+                            Slog.wtf(TAG,
+                                    "Exception in system initiated background service transition "
+                                            + "for package " + packageName
+                                            + ":" + e.toString());
+                        }
+                    } else {
+                        if (DEBUG_FOREGROUND_SERVICE) {
+                            Slog.d(TAG, "Ignoring system initiated transition of foreground"
+                                    + " service(type:media)to bg for package " + packageName);
+                        }
+                    }
                 }
             }
         }
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java
index 8b701f0..b0b34d0 100644
--- a/services/core/java/com/android/server/am/ActivityManagerService.java
+++ b/services/core/java/com/android/server/am/ActivityManagerService.java
@@ -19471,7 +19471,7 @@
     /**
      * @hide
      */
-    @EnforcePermission("android.permission.INTERACT_ACROSS_USERS_FULL")
+    @EnforcePermission(INTERACT_ACROSS_USERS_FULL)
     public IBinder refreshIntentCreatorToken(Intent intent) {
         refreshIntentCreatorToken_enforcePermission();
         IBinder binder = intent.getCreatorToken();
diff --git a/services/core/java/com/android/server/am/BroadcastQueueImpl.java b/services/core/java/com/android/server/am/BroadcastQueueImpl.java
index 36035bd..78beb18 100644
--- a/services/core/java/com/android/server/am/BroadcastQueueImpl.java
+++ b/services/core/java/com/android/server/am/BroadcastQueueImpl.java
@@ -832,7 +832,9 @@
 
             // If this receiver is going to be skipped, skip it now itself and don't even enqueue
             // it.
-            final String skipReason = mSkipPolicy.shouldSkipMessage(r, receiver);
+            final String skipReason = Flags.avoidNoteOpAtEnqueue()
+                    ? mSkipPolicy.shouldSkipAtEnqueueMessage(r, receiver)
+                    : mSkipPolicy.shouldSkipMessage(r, receiver);
             if (skipReason != null) {
                 setDeliveryState(null, null, r, i, receiver, BroadcastRecord.DELIVERY_SKIPPED,
                         "skipped by policy at enqueue: " + skipReason);
diff --git a/services/core/java/com/android/server/am/BroadcastSkipPolicy.java b/services/core/java/com/android/server/am/BroadcastSkipPolicy.java
index d2af84c..b0d5994 100644
--- a/services/core/java/com/android/server/am/BroadcastSkipPolicy.java
+++ b/services/core/java/com/android/server/am/BroadcastSkipPolicy.java
@@ -71,10 +71,20 @@
      *         {@code null} if it can proceed.
      */
     public @Nullable String shouldSkipMessage(@NonNull BroadcastRecord r, @NonNull Object target) {
+        return shouldSkipMessage(r, target, false /* preflight */);
+    }
+
+    public @Nullable String shouldSkipAtEnqueueMessage(@NonNull BroadcastRecord r,
+            @NonNull Object target) {
+        return shouldSkipMessage(r, target, true /* preflight */);
+    }
+
+    private @Nullable String shouldSkipMessage(@NonNull BroadcastRecord r, @NonNull Object target,
+            boolean preflight) {
         if (target instanceof BroadcastFilter) {
-            return shouldSkipMessage(r, (BroadcastFilter) target);
+            return shouldSkipMessage(r, (BroadcastFilter) target, preflight);
         } else {
-            return shouldSkipMessage(r, (ResolveInfo) target);
+            return shouldSkipMessage(r, (ResolveInfo) target, preflight);
         }
     }
 
@@ -86,7 +96,7 @@
      *         {@code null} if it can proceed.
      */
     private @Nullable String shouldSkipMessage(@NonNull BroadcastRecord r,
-            @NonNull ResolveInfo info) {
+            @NonNull ResolveInfo info, boolean preflight) {
         final BroadcastOptions brOptions = r.options;
         final ComponentName component = new ComponentName(
                 info.activityInfo.applicationInfo.packageName,
@@ -134,15 +144,23 @@
                         + " requires " + info.activityInfo.permission;
             }
         } else if (info.activityInfo.permission != null) {
-            final int opCode = AppOpsManager.permissionToOpCode(info.activityInfo.permission);
-            if (opCode != AppOpsManager.OP_NONE && mService.getAppOpsManager().noteOpNoThrow(opCode,
-                    r.callingUid, r.callerPackage, r.callerFeatureId,
-                    "Broadcast delivered to " + info.activityInfo.name)
-                    != AppOpsManager.MODE_ALLOWED) {
-                return "Appop Denial: broadcasting "
-                        + broadcastDescription(r, component)
-                        + " requires appop " + AppOpsManager.permissionToOp(
-                                info.activityInfo.permission);
+            final String op = AppOpsManager.permissionToOp(info.activityInfo.permission);
+            if (op != null) {
+                final int mode;
+                if (preflight) {
+                    mode = mService.getAppOpsManager().checkOpNoThrow(op,
+                            r.callingUid, r.callerPackage, r.callerFeatureId);
+                } else {
+                    mode = mService.getAppOpsManager().noteOpNoThrow(op,
+                            r.callingUid, r.callerPackage, r.callerFeatureId,
+                            "Broadcast delivered to " + info.activityInfo.name);
+                }
+                if (mode != AppOpsManager.MODE_ALLOWED) {
+                    return "Appop Denial: broadcasting "
+                            + broadcastDescription(r, component)
+                            + " requires appop " + AppOpsManager.permissionToOp(
+                                    info.activityInfo.permission);
+                }
             }
         }
 
@@ -250,8 +268,8 @@
                     perm = PackageManager.PERMISSION_DENIED;
                 }
 
-                int appOp = AppOpsManager.permissionToOpCode(excludedPermission);
-                if (appOp != AppOpsManager.OP_NONE) {
+                final String appOp = AppOpsManager.permissionToOp(excludedPermission);
+                if (appOp != null) {
                     // When there is an app op associated with the permission,
                     // skip when both the permission and the app op are
                     // granted.
@@ -259,7 +277,7 @@
                                 mService.getAppOpsManager().checkOpNoThrow(appOp,
                                 info.activityInfo.applicationInfo.uid,
                                 info.activityInfo.packageName)
-                            == AppOpsManager.MODE_ALLOWED)) {
+                                        == AppOpsManager.MODE_ALLOWED)) {
                         return "Skipping delivery to " + info.activityInfo.packageName
                                 + " due to excluded permission " + excludedPermission;
                     }
@@ -292,9 +310,10 @@
                     createAttributionSourcesForResolveInfo(info);
             for (int i = 0; i < r.requiredPermissions.length; i++) {
                 String requiredPermission = r.requiredPermissions[i];
-                perm = hasPermissionForDataDelivery(
+                perm = hasPermission(
                         requiredPermission,
                         "Broadcast delivered to " + info.activityInfo.name,
+                        preflight,
                         attributionSources)
                                 ? PackageManager.PERMISSION_GRANTED
                                 : PackageManager.PERMISSION_DENIED;
@@ -308,10 +327,14 @@
                 }
             }
         }
-        if (r.appOp != AppOpsManager.OP_NONE) {
-            if (!noteOpForManifestReceiver(r.appOp, r, info, component)) {
+        if (r.appOp != AppOpsManager.OP_NONE && AppOpsManager.isValidOp(r.appOp)) {
+            final String op = AppOpsManager.opToPublicName(r.appOp);
+            final boolean appOpAllowed = preflight
+                    ? checkOpForManifestReceiver(r.appOp, op, r, info, component)
+                    : noteOpForManifestReceiver(r.appOp, op, r, info, component);
+            if (!appOpAllowed) {
                 return "Skipping delivery to " + info.activityInfo.packageName
-                        + " due to required appop " + r.appOp;
+                        + " due to required appop " + AppOpsManager.opToName(r.appOp);
             }
         }
 
@@ -338,7 +361,7 @@
      *         {@code null} if it can proceed.
      */
     private @Nullable String shouldSkipMessage(@NonNull BroadcastRecord r,
-            @NonNull BroadcastFilter filter) {
+            @NonNull BroadcastFilter filter, boolean preflight) {
         if (r.options != null && !r.options.testRequireCompatChange(filter.owningUid)) {
             return "Compat change filtered: broadcasting " + r.intent.toString()
                     + " to uid " + filter.owningUid + " due to compat change "
@@ -372,18 +395,25 @@
                         + " requires " + filter.requiredPermission
                         + " due to registered receiver " + filter;
             } else {
-                final int opCode = AppOpsManager.permissionToOpCode(filter.requiredPermission);
-                if (opCode != AppOpsManager.OP_NONE
-                        && mService.getAppOpsManager().noteOpNoThrow(opCode, r.callingUid,
-                        r.callerPackage, r.callerFeatureId, "Broadcast sent to protected receiver")
-                        != AppOpsManager.MODE_ALLOWED) {
-                    return "Appop Denial: broadcasting "
-                            + r.intent.toString()
-                            + " from " + r.callerPackage + " (pid="
-                            + r.callingPid + ", uid=" + r.callingUid + ")"
-                            + " requires appop " + AppOpsManager.permissionToOp(
-                                    filter.requiredPermission)
-                            + " due to registered receiver " + filter;
+                final String op = AppOpsManager.permissionToOp(filter.requiredPermission);
+                if (op != null) {
+                    final int mode;
+                    if (preflight) {
+                        mode = mService.getAppOpsManager().checkOpNoThrow(op,
+                                r.callingUid, r.callerPackage, r.callerFeatureId);
+                    } else {
+                        mode = mService.getAppOpsManager().noteOpNoThrow(op, r.callingUid,
+                                r.callerPackage, r.callerFeatureId,
+                                "Broadcast sent to protected receiver");
+                    }
+                    if (mode != AppOpsManager.MODE_ALLOWED) {
+                        return "Appop Denial: broadcasting "
+                                + r.intent
+                                + " from " + r.callerPackage + " (pid="
+                                + r.callingPid + ", uid=" + r.callingUid + ")"
+                                + " requires appop " + op
+                                + " due to registered receiver " + filter;
+                    }
                 }
             }
         }
@@ -433,9 +463,10 @@
                             .build();
             for (int i = 0; i < r.requiredPermissions.length; i++) {
                 String requiredPermission = r.requiredPermissions[i];
-                final int perm = hasPermissionForDataDelivery(
+                final int perm = hasPermission(
                         requiredPermission,
                         "Broadcast delivered to registered receiver " + filter.receiverId,
+                        preflight,
                         attributionSource)
                                 ? PackageManager.PERMISSION_GRANTED
                                 : PackageManager.PERMISSION_DENIED;
@@ -471,8 +502,8 @@
                 final int perm = checkComponentPermission(excludedPermission,
                         filter.receiverList.pid, filter.receiverList.uid, -1, true);
 
-                int appOp = AppOpsManager.permissionToOpCode(excludedPermission);
-                if (appOp != AppOpsManager.OP_NONE) {
+                final String appOp = AppOpsManager.permissionToOp(excludedPermission);
+                if (appOp != null) {
                     // When there is an app op associated with the permission,
                     // skip when both the permission and the app op are
                     // granted.
@@ -480,14 +511,13 @@
                             mService.getAppOpsManager().checkOpNoThrow(appOp,
                                     filter.receiverList.uid,
                                     filter.packageName)
-                                    == AppOpsManager.MODE_ALLOWED)) {
+                                        == AppOpsManager.MODE_ALLOWED)) {
                         return "Appop Denial: receiving "
-                                + r.intent.toString()
+                                + r.intent
                                 + " to " + filter.receiverList.app
                                 + " (pid=" + filter.receiverList.pid
                                 + ", uid=" + filter.receiverList.uid + ")"
-                                + " excludes appop " + AppOpsManager.permissionToOp(
-                                excludedPermission)
+                                + " excludes appop " + appOp
                                 + " due to sender " + r.callerPackage
                                 + " (uid " + r.callingUid + ")";
                     }
@@ -496,7 +526,7 @@
                     // skip when permission is granted.
                     if (perm == PackageManager.PERMISSION_GRANTED) {
                         return "Permission Denial: receiving "
-                                + r.intent.toString()
+                                + r.intent
                                 + " to " + filter.receiverList.app
                                 + " (pid=" + filter.receiverList.pid
                                 + ", uid=" + filter.receiverList.uid + ")"
@@ -523,19 +553,27 @@
         }
 
         // If the broadcast also requires an app op check that as well.
-        if (r.appOp != AppOpsManager.OP_NONE
-                && mService.getAppOpsManager().noteOpNoThrow(r.appOp,
-                filter.receiverList.uid, filter.packageName, filter.featureId,
-                "Broadcast delivered to registered receiver " + filter.receiverId)
-                != AppOpsManager.MODE_ALLOWED) {
-            return "Appop Denial: receiving "
-                    + r.intent.toString()
-                    + " to " + filter.receiverList.app
-                    + " (pid=" + filter.receiverList.pid
-                    + ", uid=" + filter.receiverList.uid + ")"
-                    + " requires appop " + AppOpsManager.opToName(r.appOp)
-                    + " due to sender " + r.callerPackage
-                    + " (uid " + r.callingUid + ")";
+        if (r.appOp != AppOpsManager.OP_NONE && AppOpsManager.isValidOp(r.appOp)) {
+            final String op = AppOpsManager.opToPublicName(r.appOp);
+            final int mode;
+            if (preflight) {
+                mode = mService.getAppOpsManager().checkOpNoThrow(op,
+                        filter.receiverList.uid, filter.packageName, filter.featureId);
+            } else {
+                mode = mService.getAppOpsManager().noteOpNoThrow(op,
+                        filter.receiverList.uid, filter.packageName, filter.featureId,
+                        "Broadcast delivered to registered receiver " + filter.receiverId);
+            }
+            if (mode != AppOpsManager.MODE_ALLOWED) {
+                return "Appop Denial: receiving "
+                        + r.intent
+                        + " to " + filter.receiverList.app
+                        + " (pid=" + filter.receiverList.pid
+                        + ", uid=" + filter.receiverList.uid + ")"
+                        + " requires appop " + AppOpsManager.opToName(r.appOp)
+                        + " due to sender " + r.callerPackage
+                        + " (uid " + r.callingUid + ")";
+            }
         }
 
         // Ensure that broadcasts are only sent to other apps if they are explicitly marked as
@@ -572,14 +610,14 @@
                 + ", uid=" + r.callingUid + ") to " + component.flattenToShortString();
     }
 
-    private boolean noteOpForManifestReceiver(int appOp, BroadcastRecord r, ResolveInfo info,
-            ComponentName component) {
+    private boolean noteOpForManifestReceiver(int opCode, String appOp, BroadcastRecord r,
+            ResolveInfo info, ComponentName component) {
         if (ArrayUtils.isEmpty(info.activityInfo.attributionTags)) {
-            return noteOpForManifestReceiverInner(appOp, r, info, component, null);
+            return noteOpForManifestReceiverInner(opCode, appOp, r, info, component, null);
         } else {
             // Attribution tags provided, noteOp each tag
             for (String tag : info.activityInfo.attributionTags) {
-                if (!noteOpForManifestReceiverInner(appOp, r, info, component, tag)) {
+                if (!noteOpForManifestReceiverInner(opCode, appOp, r, info, component, tag)) {
                     return false;
                 }
             }
@@ -587,8 +625,8 @@
         }
     }
 
-    private boolean noteOpForManifestReceiverInner(int appOp, BroadcastRecord r, ResolveInfo info,
-            ComponentName component, String tag) {
+    private boolean noteOpForManifestReceiverInner(int opCode, String appOp, BroadcastRecord r,
+            ResolveInfo info, ComponentName component, String tag) {
         if (mService.getAppOpsManager().noteOpNoThrow(appOp,
                     info.activityInfo.applicationInfo.uid,
                     info.activityInfo.packageName,
@@ -598,7 +636,37 @@
             Slog.w(TAG, "Appop Denial: receiving "
                     + r.intent + " to "
                     + component.flattenToShortString()
-                    + " requires appop " + AppOpsManager.opToName(appOp)
+                    + " requires appop " + AppOpsManager.opToName(opCode)
+                    + " due to sender " + r.callerPackage
+                    + " (uid " + r.callingUid + ")");
+            return false;
+        }
+        return true;
+    }
+
+    private boolean checkOpForManifestReceiver(int opCode, String appOp, BroadcastRecord r,
+            ResolveInfo info, ComponentName component) {
+        if (ArrayUtils.isEmpty(info.activityInfo.attributionTags)) {
+            return checkOpForManifestReceiverInner(opCode, appOp, r, info, component, null);
+        } else {
+            // Attribution tags provided, noteOp each tag
+            for (String tag : info.activityInfo.attributionTags) {
+                if (!checkOpForManifestReceiverInner(opCode, appOp, r, info, component, tag)) {
+                    return false;
+                }
+            }
+            return true;
+        }
+    }
+
+    private boolean checkOpForManifestReceiverInner(int opCode, String appOp, BroadcastRecord r,
+            ResolveInfo info, ComponentName component, String tag) {
+        if (mService.getAppOpsManager().checkOpNoThrow(appOp, info.activityInfo.applicationInfo.uid,
+                info.activityInfo.packageName, tag) != AppOpsManager.MODE_ALLOWED) {
+            Slog.w(TAG, "Appop Denial: receiving "
+                    + r.intent + " to "
+                    + component.flattenToShortString()
+                    + " requires appop " + AppOpsManager.opToName(opCode)
                     + " due to sender " + r.callerPackage
                     + " (uid " + r.callingUid + ")");
             return false;
@@ -694,9 +762,10 @@
         return mPermissionManager;
     }
 
-    private boolean hasPermissionForDataDelivery(
+    private boolean hasPermission(
             @NonNull String permission,
             @NonNull String message,
+            boolean preflight,
             @NonNull AttributionSource... attributionSources) {
         final PermissionManager permissionManager = getPermissionManager();
         if (permissionManager == null) {
@@ -704,9 +773,14 @@
         }
 
         for (AttributionSource attributionSource : attributionSources) {
-            final int permissionCheckResult =
-                    permissionManager.checkPermissionForDataDelivery(
-                            permission, attributionSource, message);
+            final int permissionCheckResult;
+            if (preflight) {
+                permissionCheckResult = permissionManager.checkPermissionForPreflight(
+                        permission, attributionSource);
+            } else {
+                permissionCheckResult = permissionManager.checkPermissionForDataDelivery(
+                        permission, attributionSource, message);
+            }
             if (permissionCheckResult != PackageManager.PERMISSION_GRANTED) {
                 return false;
             }
diff --git a/services/core/java/com/android/server/am/SettingsToPropertiesMapper.java b/services/core/java/com/android/server/am/SettingsToPropertiesMapper.java
index f1007e7..0954c49 100644
--- a/services/core/java/com/android/server/am/SettingsToPropertiesMapper.java
+++ b/services/core/java/com/android/server/am/SettingsToPropertiesMapper.java
@@ -238,6 +238,8 @@
         "pixel_connectivity_gps",
         "pixel_continuity",
         "pixel_display",
+        "pixel_fingerprint",
+        "pixel_gsc",
         "pixel_perf",
         "pixel_sensai",
         "pixel_sensors",
@@ -245,6 +247,7 @@
         "pixel_system_sw_video",
         "pixel_video_sw",
         "pixel_watch",
+        "pixel_wifi",
         "platform_compat",
         "platform_security",
         "pixel_watch_debug_trace",
diff --git a/services/core/java/com/android/server/am/broadcasts_flags.aconfig b/services/core/java/com/android/server/am/broadcasts_flags.aconfig
index 7f169db..68e21a3 100644
--- a/services/core/java/com/android/server/am/broadcasts_flags.aconfig
+++ b/services/core/java/com/android/server/am/broadcasts_flags.aconfig
@@ -15,4 +15,15 @@
     description: "Limit the scope of receiver priorities to within a process"
     is_fixed_read_only: true
     bug: "369487976"
+}
+
+flag {
+    name: "avoid_note_op_at_enqueue"
+    namespace: "backstage_power"
+    description: "Avoid triggering noteOp while enqueueing a broadcast"
+    is_fixed_read_only: true
+    bug: "268016162"
+    metadata {
+        purpose: PURPOSE_BUGFIX
+    }
 }
\ No newline at end of file
diff --git a/services/core/java/com/android/server/audio/AudioService.java b/services/core/java/com/android/server/audio/AudioService.java
index 4e84733..0f1228f 100644
--- a/services/core/java/com/android/server/audio/AudioService.java
+++ b/services/core/java/com/android/server/audio/AudioService.java
@@ -1164,9 +1164,11 @@
     @GuardedBy("mAccessibilityServiceUidsLock")
     private int[] mAccessibilityServiceUids;
 
-    // Uid of the active input method service to check if caller is the one or not.
-    private int mInputMethodServiceUid = android.os.Process.INVALID_UID;
+    // Input Method
     private final Object mInputMethodServiceUidLock = new Object();
+    // Uid of the active input method service to check if caller is the one or not.
+    @GuardedBy("mInputMethodServiceUidLock")
+    private int mInputMethodServiceUid = android.os.Process.INVALID_UID;
 
     private int mEncodedSurroundMode;
     private String mEnabledSurroundFormats;
@@ -8030,11 +8032,11 @@
             } else if (deviceSet.contains(AudioSystem.DEVICE_OUT_SPDIF)) {
                 return AudioSystem.DEVICE_OUT_SPDIF;
             } else {
-                // At this point, deviceSet should contain exactly one A2DP device;
-                // regardless, return the first A2DP device in numeric order.
-                // If there is no A2DP device, this falls through to log an error.
+                // At this point, deviceSet should contain exactly one removable device;
+                // regardless, return the first removable device in numeric order.
+                // If there is no removable device, this falls through to log an error.
                 for (int deviceType : deviceSet) {
-                    if (AudioSystem.DEVICE_OUT_ALL_A2DP_SET.contains(deviceType)) {
+                    if (AudioSystem.DEVICE_OUT_PICK_FOR_VOLUME_SET.contains(deviceType)) {
                         return deviceType;
                     }
                 }
@@ -11405,7 +11407,7 @@
 
     /** see {@link AudioManager#getFocusDuckedUidsForTest()} */
     @Override
-    @EnforcePermission("android.permission.QUERY_AUDIO_STATE")
+    @EnforcePermission(QUERY_AUDIO_STATE)
     public @NonNull List<Integer> getFocusDuckedUidsForTest() {
         super.getFocusDuckedUidsForTest_enforcePermission();
         return mPlaybackMonitor.getFocusDuckedUids();
@@ -11432,7 +11434,7 @@
      * @see AudioManager#getFocusFadeOutDurationForTest()
      * @return the fade out duration, in ms
      */
-    @EnforcePermission("android.permission.QUERY_AUDIO_STATE")
+    @EnforcePermission(QUERY_AUDIO_STATE)
     public long getFocusFadeOutDurationForTest() {
         super.getFocusFadeOutDurationForTest_enforcePermission();
         return mMediaFocusControl.getFocusFadeOutDurationForTest();
@@ -11445,7 +11447,7 @@
      * @return the time gap after a fade out completion on focus loss, and fade in start, in ms
      */
     @Override
-    @EnforcePermission("android.permission.QUERY_AUDIO_STATE")
+    @EnforcePermission(QUERY_AUDIO_STATE)
     public long getFocusUnmuteDelayAfterFadeOutForTest() {
         super.getFocusUnmuteDelayAfterFadeOutForTest_enforcePermission();
         return mMediaFocusControl.getFocusUnmuteDelayAfterFadeOutForTest();
diff --git a/services/core/java/com/android/server/display/LocalDisplayAdapter.java b/services/core/java/com/android/server/display/LocalDisplayAdapter.java
index 324f95a..551202c 100644
--- a/services/core/java/com/android/server/display/LocalDisplayAdapter.java
+++ b/services/core/java/com/android/server/display/LocalDisplayAdapter.java
@@ -51,7 +51,6 @@
 import android.view.SurfaceControl;
 
 import com.android.internal.R;
-import com.android.internal.annotations.KeepForWeakReference;
 import com.android.internal.annotations.VisibleForTesting;
 import com.android.internal.display.BrightnessSynchronizer;
 import com.android.internal.util.function.pooled.PooledLambda;
@@ -1052,7 +1051,9 @@
 
                     void handleHdrSdrNitsChanged(float displayNits, float sdrNits) {
                         final float newHdrSdrRatio;
-                        if (displayNits != INVALID_NITS && sdrNits != INVALID_NITS) {
+                        if (displayNits != INVALID_NITS && sdrNits != INVALID_NITS
+                            && (mBacklightAdapter.mUseSurfaceControlBrightness ||
+                                mBacklightAdapter.mForceSurfaceControl)) {
                             // Ensure the ratio stays >= 1.0f as values below that are nonsensical
                             newHdrSdrRatio = Math.max(1.f, displayNits / sdrNits);
                         } else {
@@ -1548,9 +1549,7 @@
     }
 
     public static class Injector {
-        // Ensure the callback is kept to preserve native weak reference lifecycle semantics.
         @SuppressWarnings("unused")
-        @KeepForWeakReference
         private ProxyDisplayEventReceiver mReceiver;
         public void setDisplayEventListenerLocked(Looper looper, DisplayEventListener listener) {
             mReceiver = new ProxyDisplayEventReceiver(looper, listener);
diff --git a/services/core/java/com/android/server/display/color/OWNERS b/services/core/java/com/android/server/display/color/OWNERS
index 27adf12..8f5a9a0 100644
--- a/services/core/java/com/android/server/display/color/OWNERS
+++ b/services/core/java/com/android/server/display/color/OWNERS
@@ -1,4 +1,3 @@
 christyfranks@google.com
-justinklaassen@google.com
 
-per-file DisplayTransformManager.java=michaelwr@google.com
\ No newline at end of file
+per-file DisplayTransformManager.java=michaelwr@google.com
diff --git a/services/core/java/com/android/server/dreams/DreamManagerService.java b/services/core/java/com/android/server/dreams/DreamManagerService.java
index 2af74f6..144caea 100644
--- a/services/core/java/com/android/server/dreams/DreamManagerService.java
+++ b/services/core/java/com/android/server/dreams/DreamManagerService.java
@@ -569,8 +569,7 @@
     }
 
     private void requestDreamInternal() {
-        if (isDreamingInternal() && !dreamIsFrontmost() && mController.bringDreamToFront()
-                && !isDozingInternal()) {
+        if (isDreamingInternal() && !dreamIsFrontmost() && mController.bringDreamToFront()) {
             return;
         }
 
@@ -1366,6 +1365,21 @@
             }
         }
 
+        @Override
+        public void setScreensaverEnabled(boolean enabled) {
+            checkPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS);
+            final UserHandle userHandle = getCallingUserHandle();
+            final long ident = Binder.clearCallingIdentity();
+            try {
+                Settings.Secure.putIntForUser(mContext.getContentResolver(),
+                        Settings.Secure.SCREENSAVER_ENABLED, enabled ? 1 : 0,
+                        userHandle.getIdentifier());
+                mPowerManagerInternal.updateSettings();
+            } finally {
+                Binder.restoreCallingIdentity(ident);
+            }
+        }
+
         boolean canLaunchDreamActivity(String dreamPackageName, String packageName,
                 int callingUid) {
             if (dreamPackageName == null || packageName == null) {
diff --git a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceSource.java b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceSource.java
index 6157402..69a2a1c 100644
--- a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceSource.java
+++ b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceSource.java
@@ -197,6 +197,8 @@
         boolean wasActiveSource = isActiveSource();
         super.setActiveSource(logicalAddress, physicalAddress, caller);
         if (wasActiveSource && !isActiveSource()) {
+            // Prevent focus stealing when losing active source.
+            removeAction(ActiveSourceAction.class);
             onActiveSourceLost();
         }
     }
diff --git a/services/core/java/com/android/server/hdmi/SystemAudioAction.java b/services/core/java/com/android/server/hdmi/SystemAudioAction.java
index f14cda1..11b2805 100644
--- a/services/core/java/com/android/server/hdmi/SystemAudioAction.java
+++ b/services/core/java/com/android/server/hdmi/SystemAudioAction.java
@@ -96,8 +96,10 @@
             public void onSendCompleted(int error) {
                 if (error != SendMessageResult.SUCCESS) {
                     HdmiLogger.debug("Failed to send <System Audio Mode Request>:" + error);
-                    setSystemAudioMode(false);
-                    finishWithCallback(HdmiControlManager.RESULT_COMMUNICATION_FAILED);
+                    if (error == SendMessageResult.FAIL) {
+                        setSystemAudioMode(false);
+                        finishWithCallback(HdmiControlManager.RESULT_COMMUNICATION_FAILED);
+                    }
                 }
             }
         });
diff --git a/services/core/java/com/android/server/input/InputDataStore.java b/services/core/java/com/android/server/input/InputDataStore.java
index 834f815..6ed50b6 100644
--- a/services/core/java/com/android/server/input/InputDataStore.java
+++ b/services/core/java/com/android/server/input/InputDataStore.java
@@ -89,6 +89,10 @@
             final InputStream inputStream = mInputGestureFileInjector.openRead(userId);
             inputGestureDataList = readInputGesturesXml(inputStream, false);
             inputStream.close();
+        } catch (FileNotFoundException exception) {
+            // There are valid reasons for the file to be missing, such as shortcuts having not
+            // been registered by the user.
+            return List.of();
         } catch (IOException exception) {
             // In case we are unable to read from the file on disk or another IO operation error,
             // fail gracefully.
diff --git a/services/core/java/com/android/server/input/InputGestureManager.java b/services/core/java/com/android/server/input/InputGestureManager.java
index d71c8a1..7f85384 100644
--- a/services/core/java/com/android/server/input/InputGestureManager.java
+++ b/services/core/java/com/android/server/input/InputGestureManager.java
@@ -87,20 +87,7 @@
             createKeyTrigger(KeyEvent.KEYCODE_V, KeyEvent.META_CTRL_ON),
             createKeyTrigger(KeyEvent.KEYCODE_X, KeyEvent.META_CTRL_ON),
             createKeyTrigger(KeyEvent.KEYCODE_Z, KeyEvent.META_CTRL_ON),
-            createKeyTrigger(KeyEvent.KEYCODE_Y, KeyEvent.META_CTRL_ON),
-            // Used for magnification viewport control.
-            createKeyTrigger(KeyEvent.KEYCODE_MINUS,
-                    KeyEvent.META_META_ON | KeyEvent.META_ALT_ON),
-            createKeyTrigger(KeyEvent.KEYCODE_EQUALS,
-                    KeyEvent.META_META_ON | KeyEvent.META_ALT_ON),
-            createKeyTrigger(KeyEvent.KEYCODE_DPAD_LEFT,
-                    KeyEvent.META_META_ON | KeyEvent.META_ALT_ON),
-            createKeyTrigger(KeyEvent.KEYCODE_DPAD_RIGHT,
-                    KeyEvent.META_META_ON | KeyEvent.META_ALT_ON),
-            createKeyTrigger(KeyEvent.KEYCODE_DPAD_UP,
-                    KeyEvent.META_META_ON | KeyEvent.META_ALT_ON),
-            createKeyTrigger(KeyEvent.KEYCODE_DPAD_DOWN,
-                    KeyEvent.META_META_ON | KeyEvent.META_ALT_ON)
+            createKeyTrigger(KeyEvent.KEYCODE_Y, KeyEvent.META_CTRL_ON)
     ));
 
     public InputGestureManager(Context context) {
diff --git a/services/core/java/com/android/server/input/KeyGestureController.java b/services/core/java/com/android/server/input/KeyGestureController.java
index fba0b04..ef5babf 100644
--- a/services/core/java/com/android/server/input/KeyGestureController.java
+++ b/services/core/java/com/android/server/input/KeyGestureController.java
@@ -35,6 +35,7 @@
 import android.content.pm.PackageManager;
 import android.content.res.Resources;
 import android.database.ContentObserver;
+import android.hardware.display.DisplayManager;
 import android.hardware.input.AidlInputGestureData;
 import android.hardware.input.AidlKeyGestureEvent;
 import android.hardware.input.AppLaunchData;
@@ -57,6 +58,7 @@
 import android.util.Log;
 import android.util.Slog;
 import android.util.SparseArray;
+import android.view.Display;
 import android.view.InputDevice;
 import android.view.KeyCharacterMap;
 import android.view.KeyEvent;
@@ -127,6 +129,7 @@
     private final SettingsObserver mSettingsObserver;
     private final AppLaunchShortcutManager mAppLaunchShortcutManager;
     private final InputGestureManager mInputGestureManager;
+    private final DisplayManager mDisplayManager;
     @GuardedBy("mInputDataStore")
     private final InputDataStore mInputDataStore;
     private static final Object mUserLock = new Object();
@@ -194,6 +197,7 @@
         mSettingsObserver = new SettingsObserver(mHandler);
         mAppLaunchShortcutManager = new AppLaunchShortcutManager(mContext);
         mInputGestureManager = new InputGestureManager(mContext);
+        mDisplayManager = Objects.requireNonNull(mContext.getSystemService(DisplayManager.class));
         mInputDataStore = inputDataStore;
         mUserManagerInternal = LocalServices.getService(UserManagerInternal.class);
         initBehaviors();
@@ -246,12 +250,6 @@
                     new KeyCombinationManager.TwoKeysCombinationRule(KeyEvent.KEYCODE_VOLUME_DOWN,
                             KeyEvent.KEYCODE_POWER) {
                         @Override
-                        public boolean preCondition() {
-                            return isKeyGestureSupported(
-                                    KeyGestureEvent.KEY_GESTURE_TYPE_SCREENSHOT_CHORD);
-                        }
-
-                        @Override
                         public void execute() {
                             handleMultiKeyGesture(
                                     new int[]{KeyEvent.KEYCODE_VOLUME_DOWN, KeyEvent.KEYCODE_POWER},
@@ -274,12 +272,6 @@
                         new KeyCombinationManager.TwoKeysCombinationRule(KeyEvent.KEYCODE_POWER,
                                 KeyEvent.KEYCODE_STEM_PRIMARY) {
                             @Override
-                            public boolean preCondition() {
-                                return isKeyGestureSupported(
-                                        KeyGestureEvent.KEY_GESTURE_TYPE_SCREENSHOT_CHORD);
-                            }
-
-                            @Override
                             public void execute() {
                                 handleMultiKeyGesture(new int[]{KeyEvent.KEYCODE_POWER,
                                                 KeyEvent.KEYCODE_STEM_PRIMARY},
@@ -333,9 +325,6 @@
                         KeyEvent.KEYCODE_POWER) {
                     @Override
                     public boolean preCondition() {
-                        if (!isKeyGestureSupported(getGestureType())) {
-                            return false;
-                        }
                         switch (mPowerVolUpBehavior) {
                             case POWER_VOLUME_UP_BEHAVIOR_MUTE:
                                 return mRingerToggleChord != Settings.Secure.VOLUME_HUSH_OFF;
@@ -423,12 +412,6 @@
                     new KeyCombinationManager.TwoKeysCombinationRule(KeyEvent.KEYCODE_BACK,
                             KeyEvent.KEYCODE_DPAD_CENTER) {
                         @Override
-                        public boolean preCondition() {
-                            return isKeyGestureSupported(
-                                    KeyGestureEvent.KEY_GESTURE_TYPE_TV_TRIGGER_BUG_REPORT);
-                        }
-
-                        @Override
                         public void execute() {
                             handleMultiKeyGesture(
                                     new int[]{KeyEvent.KEYCODE_BACK, KeyEvent.KEYCODE_DPAD_CENTER},
@@ -468,10 +451,11 @@
         if (mVisibleBackgroundUsersEnabled && shouldIgnoreKeyEventForVisibleBackgroundUser(event)) {
             return false;
         }
-        final boolean interactive = (policyFlags & FLAG_INTERACTIVE) != 0;
         if (InputSettings.doesKeyGestureEventHandlerSupportMultiKeyGestures()
                 && (event.getFlags() & KeyEvent.FLAG_FALLBACK) == 0) {
-            return mKeyCombinationManager.interceptKey(event, interactive);
+            final boolean interactive = (policyFlags & FLAG_INTERACTIVE) != 0;
+            final boolean isDefaultDisplayOn = isDefaultDisplayOn();
+            return mKeyCombinationManager.interceptKey(event, interactive && isDefaultDisplayOn);
         }
         return false;
     }
@@ -1038,6 +1022,14 @@
         mIoHandler.obtainMessage(MSG_LOAD_CUSTOM_GESTURES, userId).sendToTarget();
     }
 
+    private boolean isDefaultDisplayOn() {
+        Display defaultDisplay = mDisplayManager.getDisplay(Display.DEFAULT_DISPLAY);
+        if (defaultDisplay == null) {
+            return false;
+        }
+        return Display.isOnState(defaultDisplay.getState());
+    }
+
     @MainThread
     private void notifyKeyGestureEvent(AidlKeyGestureEvent event) {
         InputDevice device = getInputDevice(event.deviceId);
diff --git a/services/core/java/com/android/server/inputmethod/InputMethodBindingController.java b/services/core/java/com/android/server/inputmethod/InputMethodBindingController.java
index 4f3aa06..280f3b7 100644
--- a/services/core/java/com/android/server/inputmethod/InputMethodBindingController.java
+++ b/services/core/java/com/android/server/inputmethod/InputMethodBindingController.java
@@ -120,12 +120,21 @@
      * Binding flags for establishing connection to the {@link InputMethodService}.
      */
     @VisibleForTesting
-    static final int IME_CONNECTION_BIND_FLAGS =
-            Context.BIND_AUTO_CREATE
+    static final int IME_CONNECTION_BIND_FLAGS;
+    static {
+        if (android.view.inputmethod.Flags.lowerImeOomImportance()) {
+            IME_CONNECTION_BIND_FLAGS = Context.BIND_AUTO_CREATE
+                    | Context.BIND_ALMOST_PERCEPTIBLE
+                    | Context.BIND_IMPORTANT_BACKGROUND
+                    | Context.BIND_SCHEDULE_LIKE_TOP_APP;
+        } else {
+            IME_CONNECTION_BIND_FLAGS = Context.BIND_AUTO_CREATE
                     | Context.BIND_NOT_VISIBLE
                     | Context.BIND_NOT_FOREGROUND
                     | Context.BIND_IMPORTANT_BACKGROUND
                     | Context.BIND_SCHEDULE_LIKE_TOP_APP;
+        }
+    }
 
     private final int mImeConnectionBindFlags;
 
diff --git a/services/core/java/com/android/server/inputmethod/OWNERS b/services/core/java/com/android/server/inputmethod/OWNERS
index e507c6b..9d8aef9 100644
--- a/services/core/java/com/android/server/inputmethod/OWNERS
+++ b/services/core/java/com/android/server/inputmethod/OWNERS
@@ -1,7 +1,6 @@
 set noparent
 
 roosa@google.com
-yukawa@google.com
 tarandeep@google.com
 fstern@google.com
 cosminbaies@google.com
diff --git a/services/core/java/com/android/server/integrity/OWNERS b/services/core/java/com/android/server/integrity/OWNERS
index 33561fd..352724a 100644
--- a/services/core/java/com/android/server/integrity/OWNERS
+++ b/services/core/java/com/android/server/integrity/OWNERS
@@ -1,5 +1,4 @@
 omernebil@google.com
 khelmy@google.com
 mdchurchill@google.com
-sturla@google.com
 
diff --git a/services/core/java/com/android/server/locales/LocaleManagerService.java b/services/core/java/com/android/server/locales/LocaleManagerService.java
index 7e80cbc..0944a54 100644
--- a/services/core/java/com/android/server/locales/LocaleManagerService.java
+++ b/services/core/java/com/android/server/locales/LocaleManagerService.java
@@ -48,7 +48,6 @@
 import android.util.Slog;
 import android.util.Xml;
 
-import com.android.internal.annotations.KeepForWeakReference;
 import com.android.internal.annotations.VisibleForTesting;
 import com.android.internal.content.PackageMonitor;
 import com.android.internal.util.FrameworkStatsLog;
@@ -101,7 +100,6 @@
 
     private LocaleManagerBackupHelper mBackupHelper;
 
-    @KeepForWeakReference
     private final PackageMonitor mPackageMonitor;
 
     private final Object mWriteLock = new Object();
diff --git a/services/core/java/com/android/server/location/contexthub/ContextHubEndpointBroker.java b/services/core/java/com/android/server/location/contexthub/ContextHubEndpointBroker.java
index 940bcb4..f40d0dd 100644
--- a/services/core/java/com/android/server/location/contexthub/ContextHubEndpointBroker.java
+++ b/services/core/java/com/android/server/location/contexthub/ContextHubEndpointBroker.java
@@ -43,7 +43,10 @@
 import com.android.internal.annotations.GuardedBy;
 
 import java.util.Collection;
+import java.util.HashSet;
 import java.util.Optional;
+import java.util.Set;
+import java.util.function.Consumer;
 
 /**
  * A class that represents a broker for the endpoint registered by the client app. This class
@@ -111,6 +114,11 @@
 
         private final boolean mRemoteInitiated;
 
+        /**
+         * The set of seq # for pending reliable messages started by this endpoint for this session.
+         */
+        private final Set<Integer> mPendingSequenceNumbers = new HashSet<>();
+
         SessionInfo(HubEndpointInfo remoteEndpointInfo, boolean remoteInitiated) {
             mRemoteEndpointInfo = remoteEndpointInfo;
             mRemoteInitiated = remoteInitiated;
@@ -131,6 +139,24 @@
         public boolean isActive() {
             return mSessionState == SessionState.ACTIVE;
         }
+
+        public boolean isReliableMessagePending(int sequenceNumber) {
+            return mPendingSequenceNumbers.contains(sequenceNumber);
+        }
+
+        public void setReliableMessagePending(int sequenceNumber) {
+            mPendingSequenceNumbers.add(sequenceNumber);
+        }
+
+        public void setReliableMessageCompleted(int sequenceNumber) {
+            mPendingSequenceNumbers.remove(sequenceNumber);
+        }
+
+        public void forEachPendingReliableMessage(Consumer<Integer> consumer) {
+            for (int sequenceNumber : mPendingSequenceNumbers) {
+                consumer.accept(sequenceNumber);
+            }
+        }
     }
 
     /** A map between a session ID which maps to its current state. */
@@ -208,10 +234,7 @@
             try {
                 mSessionInfoMap.put(sessionId, new SessionInfo(destination, false));
                 mHubInterface.openEndpointSession(
-                        sessionId,
-                        halEndpointInfo.id,
-                        mHalEndpointInfo.id,
-                        serviceDescriptor);
+                        sessionId, halEndpointInfo.id, mHalEndpointInfo.id, serviceDescriptor);
             } catch (RemoteException | IllegalArgumentException | UnsupportedOperationException e) {
                 Log.e(TAG, "Exception while calling HAL openEndpointSession", e);
                 cleanupSessionResources(sessionId);
@@ -286,34 +309,42 @@
     public void sendMessage(
             int sessionId, HubMessage message, IContextHubTransactionCallback callback) {
         super.sendMessage_enforcePermission();
-        Message halMessage = ContextHubServiceUtil.createHalMessage(message);
-        if (!isSessionActive(sessionId)) {
-            throw new SecurityException(
-                    "sendMessage called on inactive session (id= " + sessionId + ")");
-        }
-
-        if (callback == null) {
-            try {
-                mHubInterface.sendMessageToEndpoint(sessionId, halMessage);
-            } catch (RemoteException e) {
-                Log.w(TAG, "Exception while sending message on session " + sessionId, e);
+        synchronized (mOpenSessionLock) {
+            SessionInfo info = mSessionInfoMap.get(sessionId);
+            if (info == null) {
+                throw new IllegalArgumentException(
+                        "sendMessage for invalid session id=" + sessionId);
             }
-        } else {
-            ContextHubServiceTransaction transaction =
-                    mTransactionManager.createSessionMessageTransaction(
-                            mHubInterface, sessionId, halMessage, mPackageName, callback);
-            try {
-                mTransactionManager.addTransaction(transaction);
-            } catch (IllegalStateException e) {
-                Log.e(
-                        TAG,
-                        "Unable to add a transaction in sendMessageToEndpoint "
-                                + "(session ID = "
-                                + sessionId
-                                + ")",
-                        e);
-                transaction.onTransactionComplete(
-                        ContextHubTransaction.RESULT_FAILED_SERVICE_INTERNAL_FAILURE);
+            if (!info.isActive()) {
+                throw new SecurityException(
+                        "sendMessage called on inactive session (id= " + sessionId + ")");
+            }
+
+            Message halMessage = ContextHubServiceUtil.createHalMessage(message);
+            if (callback == null) {
+                try {
+                    mHubInterface.sendMessageToEndpoint(sessionId, halMessage);
+                } catch (RemoteException e) {
+                    Log.w(TAG, "Exception while sending message on session " + sessionId, e);
+                }
+            } else {
+                ContextHubServiceTransaction transaction =
+                        mTransactionManager.createSessionMessageTransaction(
+                                mHubInterface, sessionId, halMessage, mPackageName, callback);
+                try {
+                    mTransactionManager.addTransaction(transaction);
+                    info.setReliableMessagePending(transaction.getMessageSequenceNumber());
+                } catch (IllegalStateException e) {
+                    Log.e(
+                            TAG,
+                            "Unable to add a transaction in sendMessageToEndpoint "
+                                    + "(session ID = "
+                                    + sessionId
+                                    + ")",
+                            e);
+                    transaction.onTransactionComplete(
+                            ContextHubTransaction.RESULT_FAILED_SERVICE_INTERNAL_FAILURE);
+                }
             }
         }
     }
@@ -393,7 +424,9 @@
                 int id = mSessionInfoMap.keyAt(i);
                 int count = i + 1;
                 sb.append(
-                        "  " + count + ". id="
+                        "  "
+                                + count
+                                + ". id="
                                 + id
                                 + ", remote:"
                                 + mSessionInfoMap.get(id).getRemoteEndpointInfo());
@@ -461,13 +494,24 @@
     /* package */ void onMessageReceived(int sessionId, HubMessage message) {
         byte code = onMessageReceivedInternal(sessionId, message);
         if (code != ErrorCode.OK && message.isResponseRequired()) {
-            sendMessageDeliveryStatus(
-                    sessionId, message.getMessageSequenceNumber(), code);
+            sendMessageDeliveryStatus(sessionId, message.getMessageSequenceNumber(), code);
         }
     }
 
     /* package */ void onMessageDeliveryStatusReceived(
             int sessionId, int sequenceNumber, byte errorCode) {
+        synchronized (mOpenSessionLock) {
+            SessionInfo info = mSessionInfoMap.get(sessionId);
+            if (info == null || !info.isActive()) {
+                Log.w(TAG, "Received delivery status for invalid session: id=" + sessionId);
+                return;
+            }
+            if (!info.isReliableMessagePending(sequenceNumber)) {
+                Log.w(TAG, "Received delivery status for unknown seq: " + sequenceNumber);
+                return;
+            }
+            info.setReliableMessageCompleted(sequenceNumber);
+        }
         mTransactionManager.onMessageDeliveryResponse(sequenceNumber, errorCode == ErrorCode.OK);
     }
 
@@ -492,7 +536,6 @@
                 onCloseEndpointSession(id, Reason.HUB_RESET);
             }
         }
-        // TODO(b/390029594): Cancel any ongoing reliable communication transactions
     }
 
     private Optional<Byte> onEndpointSessionOpenRequestInternal(
@@ -515,9 +558,11 @@
             mSessionInfoMap.put(sessionId, new SessionInfo(initiator, true));
         }
 
-        boolean success = invokeCallback(
-                (consumer) ->
-                        consumer.onSessionOpenRequest(sessionId, initiator, serviceDescriptor));
+        boolean success =
+                invokeCallback(
+                        (consumer) ->
+                                consumer.onSessionOpenRequest(
+                                        sessionId, initiator, serviceDescriptor));
         return success ? Optional.empty() : Optional.of(Reason.UNSPECIFIED);
     }
 
@@ -590,8 +635,15 @@
     private boolean cleanupSessionResources(int sessionId) {
         synchronized (mOpenSessionLock) {
             SessionInfo info = mSessionInfoMap.get(sessionId);
-            if (info != null && !info.isRemoteInitiated()) {
-                mEndpointManager.returnSessionId(sessionId);
+            if (info != null) {
+                if (!info.isRemoteInitiated()) {
+                    mEndpointManager.returnSessionId(sessionId);
+                }
+                info.forEachPendingReliableMessage(
+                        (sequenceNumber) -> {
+                            mTransactionManager.onMessageDeliveryResponse(
+                                    sequenceNumber, /* success= */ false);
+                        });
                 mSessionInfoMap.remove(sessionId);
             }
             return info != null;
@@ -646,10 +698,7 @@
                         try {
                             mWakeLock.release();
                         } catch (RuntimeException e) {
-                            Log.e(
-                                    TAG,
-                                    "Releasing the wakelock for all acquisitions fails - ",
-                                    e);
+                            Log.e(TAG, "Releasing the wakelock for all acquisitions fails - ", e);
                             break;
                         }
                     }
diff --git a/services/core/java/com/android/server/location/contexthub/ContextHubTransactionManager.java b/services/core/java/com/android/server/location/contexthub/ContextHubTransactionManager.java
index a430a82..6a1db02 100644
--- a/services/core/java/com/android/server/location/contexthub/ContextHubTransactionManager.java
+++ b/services/core/java/com/android/server/location/contexthub/ContextHubTransactionManager.java
@@ -29,6 +29,7 @@
 import android.util.Log;
 
 import com.android.internal.annotations.GuardedBy;
+import com.android.internal.annotations.VisibleForTesting;
 
 import java.time.Duration;
 import java.util.ArrayDeque;
@@ -165,52 +166,61 @@
     /**
      * Creates a transaction for loading a nanoapp.
      *
-     * @param contextHubId       the ID of the hub to load the nanoapp to
-     * @param nanoAppBinary      the binary of the nanoapp to load
+     * @param contextHubId the ID of the hub to load the nanoapp to
+     * @param nanoAppBinary the binary of the nanoapp to load
      * @param onCompleteCallback the client on complete callback
      * @return the generated transaction
      */
     /* package */ ContextHubServiceTransaction createLoadTransaction(
-            int contextHubId, NanoAppBinary nanoAppBinary,
-            IContextHubTransactionCallback onCompleteCallback, String packageName) {
+            int contextHubId,
+            NanoAppBinary nanoAppBinary,
+            IContextHubTransactionCallback onCompleteCallback,
+            String packageName) {
         return new ContextHubServiceTransaction(
-                mNextAvailableId.getAndIncrement(), ContextHubTransaction.TYPE_LOAD_NANOAPP,
-                nanoAppBinary.getNanoAppId(), packageName) {
+                mNextAvailableId.getAndIncrement(),
+                ContextHubTransaction.TYPE_LOAD_NANOAPP,
+                nanoAppBinary.getNanoAppId(),
+                packageName) {
             @Override
-                /* package */ int onTransact() {
+            /* package */ int onTransact() {
                 try {
                     return mContextHubProxy.loadNanoapp(
                             contextHubId, nanoAppBinary, this.getTransactionId());
                 } catch (RemoteException e) {
-                    Log.e(TAG, "RemoteException while trying to load nanoapp with ID 0x" +
-                            Long.toHexString(nanoAppBinary.getNanoAppId()), e);
+                    Log.e(
+                            TAG,
+                            "RemoteException while trying to load nanoapp with ID 0x"
+                                    + Long.toHexString(nanoAppBinary.getNanoAppId()),
+                            e);
                     return ContextHubTransaction.RESULT_FAILED_UNKNOWN;
                 }
             }
 
             @Override
-                /* package */ void onTransactionComplete(@ContextHubTransaction.Result int result) {
+            /* package */ void onTransactionComplete(@ContextHubTransaction.Result int result) {
                 ContextHubStatsLog.write(
                         ContextHubStatsLog.CHRE_CODE_DOWNLOAD_TRANSACTED,
                         nanoAppBinary.getNanoAppId(),
                         nanoAppBinary.getNanoAppVersion(),
                         ContextHubStatsLog
-                            .CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_TYPE__TYPE_LOAD,
+                                .CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_TYPE__TYPE_LOAD,
                         toStatsTransactionResult(result));
 
-                ContextHubEventLogger.getInstance().logNanoappLoad(
-                        contextHubId,
-                        nanoAppBinary.getNanoAppId(),
-                        nanoAppBinary.getNanoAppVersion(),
-                        nanoAppBinary.getBinary().length,
-                        result == ContextHubTransaction.RESULT_SUCCESS);
+                ContextHubEventLogger.getInstance()
+                        .logNanoappLoad(
+                                contextHubId,
+                                nanoAppBinary.getNanoAppId(),
+                                nanoAppBinary.getNanoAppVersion(),
+                                nanoAppBinary.getBinary().length,
+                                result == ContextHubTransaction.RESULT_SUCCESS);
 
                 if (result == ContextHubTransaction.RESULT_SUCCESS) {
                     // NOTE: The legacy JNI code used to do a query right after a load success
                     // to synchronize the service cache. Instead store the binary that was
                     // requested to load to update the cache later without doing a query.
                     mNanoAppStateManager.addNanoAppInstance(
-                            contextHubId, nanoAppBinary.getNanoAppId(),
+                            contextHubId,
+                            nanoAppBinary.getNanoAppId(),
                             nanoAppBinary.getNanoAppVersion());
                 }
                 try {
@@ -228,42 +238,51 @@
     /**
      * Creates a transaction for unloading a nanoapp.
      *
-     * @param contextHubId       the ID of the hub to unload the nanoapp from
-     * @param nanoAppId          the ID of the nanoapp to unload
+     * @param contextHubId the ID of the hub to unload the nanoapp from
+     * @param nanoAppId the ID of the nanoapp to unload
      * @param onCompleteCallback the client on complete callback
      * @return the generated transaction
      */
     /* package */ ContextHubServiceTransaction createUnloadTransaction(
-            int contextHubId, long nanoAppId, IContextHubTransactionCallback onCompleteCallback,
+            int contextHubId,
+            long nanoAppId,
+            IContextHubTransactionCallback onCompleteCallback,
             String packageName) {
         return new ContextHubServiceTransaction(
-                mNextAvailableId.getAndIncrement(), ContextHubTransaction.TYPE_UNLOAD_NANOAPP,
-                nanoAppId, packageName) {
+                mNextAvailableId.getAndIncrement(),
+                ContextHubTransaction.TYPE_UNLOAD_NANOAPP,
+                nanoAppId,
+                packageName) {
             @Override
-                /* package */ int onTransact() {
+            /* package */ int onTransact() {
                 try {
                     return mContextHubProxy.unloadNanoapp(
                             contextHubId, nanoAppId, this.getTransactionId());
                 } catch (RemoteException e) {
-                    Log.e(TAG, "RemoteException while trying to unload nanoapp with ID 0x" +
-                            Long.toHexString(nanoAppId), e);
+                    Log.e(
+                            TAG,
+                            "RemoteException while trying to unload nanoapp with ID 0x"
+                                    + Long.toHexString(nanoAppId),
+                            e);
                     return ContextHubTransaction.RESULT_FAILED_UNKNOWN;
                 }
             }
 
             @Override
-                /* package */ void onTransactionComplete(@ContextHubTransaction.Result int result) {
+            /* package */ void onTransactionComplete(@ContextHubTransaction.Result int result) {
                 ContextHubStatsLog.write(
-                        ContextHubStatsLog.CHRE_CODE_DOWNLOAD_TRANSACTED, nanoAppId,
+                        ContextHubStatsLog.CHRE_CODE_DOWNLOAD_TRANSACTED,
+                        nanoAppId,
                         0 /* nanoappVersion */,
                         ContextHubStatsLog
-                            .CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_TYPE__TYPE_UNLOAD,
+                                .CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_TYPE__TYPE_UNLOAD,
                         toStatsTransactionResult(result));
 
-                ContextHubEventLogger.getInstance().logNanoappUnload(
-                        contextHubId,
-                        nanoAppId,
-                        result == ContextHubTransaction.RESULT_SUCCESS);
+                ContextHubEventLogger.getInstance()
+                        .logNanoappUnload(
+                                contextHubId,
+                                nanoAppId,
+                                result == ContextHubTransaction.RESULT_SUCCESS);
 
                 if (result == ContextHubTransaction.RESULT_SUCCESS) {
                     mNanoAppStateManager.removeNanoAppInstance(contextHubId, nanoAppId);
@@ -283,31 +302,37 @@
     /**
      * Creates a transaction for enabling a nanoapp.
      *
-     * @param contextHubId       the ID of the hub to enable the nanoapp on
-     * @param nanoAppId          the ID of the nanoapp to enable
+     * @param contextHubId the ID of the hub to enable the nanoapp on
+     * @param nanoAppId the ID of the nanoapp to enable
      * @param onCompleteCallback the client on complete callback
      * @return the generated transaction
      */
     /* package */ ContextHubServiceTransaction createEnableTransaction(
-            int contextHubId, long nanoAppId, IContextHubTransactionCallback onCompleteCallback,
+            int contextHubId,
+            long nanoAppId,
+            IContextHubTransactionCallback onCompleteCallback,
             String packageName) {
         return new ContextHubServiceTransaction(
-                mNextAvailableId.getAndIncrement(), ContextHubTransaction.TYPE_ENABLE_NANOAPP,
+                mNextAvailableId.getAndIncrement(),
+                ContextHubTransaction.TYPE_ENABLE_NANOAPP,
                 packageName) {
             @Override
-                /* package */ int onTransact() {
+            /* package */ int onTransact() {
                 try {
                     return mContextHubProxy.enableNanoapp(
                             contextHubId, nanoAppId, this.getTransactionId());
                 } catch (RemoteException e) {
-                    Log.e(TAG, "RemoteException while trying to enable nanoapp with ID 0x" +
-                            Long.toHexString(nanoAppId), e);
+                    Log.e(
+                            TAG,
+                            "RemoteException while trying to enable nanoapp with ID 0x"
+                                    + Long.toHexString(nanoAppId),
+                            e);
                     return ContextHubTransaction.RESULT_FAILED_UNKNOWN;
                 }
             }
 
             @Override
-                /* package */ void onTransactionComplete(@ContextHubTransaction.Result int result) {
+            /* package */ void onTransactionComplete(@ContextHubTransaction.Result int result) {
                 try {
                     onCompleteCallback.onTransactionComplete(result);
                 } catch (RemoteException e) {
@@ -320,31 +345,37 @@
     /**
      * Creates a transaction for disabling a nanoapp.
      *
-     * @param contextHubId       the ID of the hub to disable the nanoapp on
-     * @param nanoAppId          the ID of the nanoapp to disable
+     * @param contextHubId the ID of the hub to disable the nanoapp on
+     * @param nanoAppId the ID of the nanoapp to disable
      * @param onCompleteCallback the client on complete callback
      * @return the generated transaction
      */
     /* package */ ContextHubServiceTransaction createDisableTransaction(
-            int contextHubId, long nanoAppId, IContextHubTransactionCallback onCompleteCallback,
+            int contextHubId,
+            long nanoAppId,
+            IContextHubTransactionCallback onCompleteCallback,
             String packageName) {
         return new ContextHubServiceTransaction(
-                mNextAvailableId.getAndIncrement(), ContextHubTransaction.TYPE_DISABLE_NANOAPP,
+                mNextAvailableId.getAndIncrement(),
+                ContextHubTransaction.TYPE_DISABLE_NANOAPP,
                 packageName) {
             @Override
-                /* package */ int onTransact() {
+            /* package */ int onTransact() {
                 try {
                     return mContextHubProxy.disableNanoapp(
                             contextHubId, nanoAppId, this.getTransactionId());
                 } catch (RemoteException e) {
-                    Log.e(TAG, "RemoteException while trying to disable nanoapp with ID 0x" +
-                            Long.toHexString(nanoAppId), e);
+                    Log.e(
+                            TAG,
+                            "RemoteException while trying to disable nanoapp with ID 0x"
+                                    + Long.toHexString(nanoAppId),
+                            e);
                     return ContextHubTransaction.RESULT_FAILED_UNKNOWN;
                 }
             }
 
             @Override
-                /* package */ void onTransactionComplete(@ContextHubTransaction.Result int result) {
+            /* package */ void onTransactionComplete(@ContextHubTransaction.Result int result) {
                 try {
                     onCompleteCallback.onTransactionComplete(result);
                 } catch (RemoteException e) {
@@ -447,18 +478,20 @@
     /**
      * Creates a transaction for querying for a list of nanoapps.
      *
-     * @param contextHubId       the ID of the hub to query
+     * @param contextHubId the ID of the hub to query
      * @param onCompleteCallback the client on complete callback
      * @return the generated transaction
      */
     /* package */ ContextHubServiceTransaction createQueryTransaction(
-            int contextHubId, IContextHubTransactionCallback onCompleteCallback,
+            int contextHubId,
+            IContextHubTransactionCallback onCompleteCallback,
             String packageName) {
         return new ContextHubServiceTransaction(
-                mNextAvailableId.getAndIncrement(), ContextHubTransaction.TYPE_QUERY_NANOAPPS,
+                mNextAvailableId.getAndIncrement(),
+                ContextHubTransaction.TYPE_QUERY_NANOAPPS,
                 packageName) {
             @Override
-                /* package */ int onTransact() {
+            /* package */ int onTransact() {
                 try {
                     return mContextHubProxy.queryNanoapps(contextHubId);
                 } catch (RemoteException e) {
@@ -468,12 +501,12 @@
             }
 
             @Override
-                /* package */ void onTransactionComplete(@ContextHubTransaction.Result int result) {
+            /* package */ void onTransactionComplete(@ContextHubTransaction.Result int result) {
                 onQueryResponse(result, Collections.emptyList());
             }
 
             @Override
-                /* package */ void onQueryResponse(
+            /* package */ void onQueryResponse(
                     @ContextHubTransaction.Result int result, List<NanoAppState> nanoAppStateList) {
                 try {
                     onCompleteCallback.onQueryResponse(result, nanoAppStateList);
@@ -539,6 +572,14 @@
         }
     }
 
+    @VisibleForTesting
+    /* package */
+    int numReliableMessageTransactionPending() {
+        synchronized (mReliableMessageLock) {
+            return mReliableMessageTransactionMap.size();
+        }
+    }
+
     /**
      * Handles a transaction response from a Context Hub.
      *
@@ -585,18 +626,21 @@
     void onMessageDeliveryResponse(int messageSequenceNumber, boolean success) {
         if (!Flags.reliableMessageRetrySupportService()) {
             TransactionAcceptConditions conditions =
-                    transaction -> transaction.getTransactionType()
-                            == ContextHubTransaction.TYPE_RELIABLE_MESSAGE
-                    && transaction.getMessageSequenceNumber()
-                            == messageSequenceNumber;
+                    transaction ->
+                            transaction.getTransactionType()
+                                            == ContextHubTransaction.TYPE_RELIABLE_MESSAGE
+                                    && transaction.getMessageSequenceNumber()
+                                            == messageSequenceNumber;
             ContextHubServiceTransaction transaction = getTransactionAndHandleNext(conditions);
             if (transaction == null) {
-                Log.w(TAG, "Received unexpected message delivery response (expected"
-                        + " message sequence number = "
-                        + messageSequenceNumber
-                        + ", received messageSequenceNumber = "
-                        + messageSequenceNumber
-                        + ")");
+                Log.w(
+                        TAG,
+                        "Received unexpected message delivery response (expected"
+                                + " message sequence number = "
+                                + messageSequenceNumber
+                                + ", received messageSequenceNumber = "
+                                + messageSequenceNumber
+                                + ")");
                 return;
             }
 
@@ -640,8 +684,10 @@
      */
     /* package */
     void onQueryResponse(List<NanoAppState> nanoAppStateList) {
-        TransactionAcceptConditions conditions = transaction ->
-                transaction.getTransactionType() == ContextHubTransaction.TYPE_QUERY_NANOAPPS;
+        TransactionAcceptConditions conditions =
+                transaction ->
+                        transaction.getTransactionType()
+                                == ContextHubTransaction.TYPE_QUERY_NANOAPPS;
         ContextHubServiceTransaction transaction = getTransactionAndHandleNext(conditions);
         if (transaction == null) {
             Log.w(TAG, "Received unexpected query response");
@@ -968,24 +1014,33 @@
     private int toStatsTransactionResult(@ContextHubTransaction.Result int result) {
         switch (result) {
             case ContextHubTransaction.RESULT_SUCCESS:
-                return ContextHubStatsLog.CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_SUCCESS;
+                return ContextHubStatsLog
+                        .CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_SUCCESS;
             case ContextHubTransaction.RESULT_FAILED_BAD_PARAMS:
-                return ContextHubStatsLog.CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_FAILED_BAD_PARAMS;
+                return ContextHubStatsLog
+                        .CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_FAILED_BAD_PARAMS;
             case ContextHubTransaction.RESULT_FAILED_UNINITIALIZED:
-                return ContextHubStatsLog.CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_FAILED_UNINITIALIZED;
+                return ContextHubStatsLog
+                        .CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_FAILED_UNINITIALIZED;
             case ContextHubTransaction.RESULT_FAILED_BUSY:
-                return ContextHubStatsLog.CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_FAILED_BUSY;
+                return ContextHubStatsLog
+                        .CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_FAILED_BUSY;
             case ContextHubTransaction.RESULT_FAILED_AT_HUB:
-                return ContextHubStatsLog.CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_FAILED_AT_HUB;
+                return ContextHubStatsLog
+                        .CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_FAILED_AT_HUB;
             case ContextHubTransaction.RESULT_FAILED_TIMEOUT:
-                return ContextHubStatsLog.CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_FAILED_TIMEOUT;
+                return ContextHubStatsLog
+                        .CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_FAILED_TIMEOUT;
             case ContextHubTransaction.RESULT_FAILED_SERVICE_INTERNAL_FAILURE:
-                return ContextHubStatsLog.CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_FAILED_SERVICE_INTERNAL_FAILURE;
+                return ContextHubStatsLog
+                        .CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_FAILED_SERVICE_INTERNAL_FAILURE;
             case ContextHubTransaction.RESULT_FAILED_HAL_UNAVAILABLE:
-                return ContextHubStatsLog.CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_FAILED_HAL_UNAVAILABLE;
+                return ContextHubStatsLog
+                        .CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_FAILED_HAL_UNAVAILABLE;
             case ContextHubTransaction.RESULT_FAILED_UNKNOWN:
             default: /* fall through */
-                return ContextHubStatsLog.CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_FAILED_UNKNOWN;
+                return ContextHubStatsLog
+                        .CHRE_CODE_DOWNLOAD_TRANSACTED__TRANSACTION_RESULT__TRANSACTION_RESULT_FAILED_UNKNOWN;
         }
     }
 
diff --git a/services/core/java/com/android/server/net/watchlist/WatchlistReportDbHelper.java b/services/core/java/com/android/server/net/watchlist/WatchlistReportDbHelper.java
index 7a96195..9937049 100644
--- a/services/core/java/com/android/server/net/watchlist/WatchlistReportDbHelper.java
+++ b/services/core/java/com/android/server/net/watchlist/WatchlistReportDbHelper.java
@@ -21,6 +21,7 @@
 import android.content.Context;
 import android.database.Cursor;
 import android.database.sqlite.SQLiteDatabase;
+import android.database.sqlite.SQLiteDatabaseCorruptException;
 import android.database.sqlite.SQLiteException;
 import android.database.sqlite.SQLiteOpenHelper;
 import android.os.Environment;
@@ -204,6 +205,11 @@
             return false;
         }
         final String clause = WhiteListReportContract.TIMESTAMP + "< " + untilTimestamp;
-        return db.delete(WhiteListReportContract.TABLE, clause, null) != 0;
+        try {
+            return db.delete(WhiteListReportContract.TABLE, clause, null) != 0;
+        } catch (SQLiteDatabaseCorruptException e) {
+            Slog.e(TAG, "Error deleting records", e);
+            return false;
+        }
     }
 }
diff --git a/services/core/java/com/android/server/notification/ConditionProviders.java b/services/core/java/com/android/server/notification/ConditionProviders.java
index 3f2c222..dd52cce 100644
--- a/services/core/java/com/android/server/notification/ConditionProviders.java
+++ b/services/core/java/com/android/server/notification/ConditionProviders.java
@@ -46,6 +46,7 @@
 import java.io.PrintWriter;
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.List;
 
 public class ConditionProviders extends ManagedServices {
 
@@ -202,7 +203,14 @@
 
     @Override
     protected void loadDefaultsFromConfig() {
-        String defaultDndAccess = mContext.getResources().getString(
+        for (String dndPackage : getDefaultDndAccessPackages(mContext)) {
+            addDefaultComponentOrPackage(dndPackage);
+        }
+    }
+
+    static List<String> getDefaultDndAccessPackages(Context context) {
+        ArrayList<String> packages = new ArrayList<>();
+        String defaultDndAccess = context.getResources().getString(
                 R.string.config_defaultDndAccessPackages);
         if (defaultDndAccess != null) {
             String[] dnds = defaultDndAccess.split(ManagedServices.ENABLED_SERVICES_SEPARATOR);
@@ -210,9 +218,10 @@
                 if (TextUtils.isEmpty(dnds[i])) {
                     continue;
                 }
-                addDefaultComponentOrPackage(dnds[i]);
+                packages.add(dnds[i]);
             }
         }
+        return packages;
     }
 
     @Override
diff --git a/services/core/java/com/android/server/notification/PreferencesHelper.java b/services/core/java/com/android/server/notification/PreferencesHelper.java
index fff812c..0fc182f 100644
--- a/services/core/java/com/android/server/notification/PreferencesHelper.java
+++ b/services/core/java/com/android/server/notification/PreferencesHelper.java
@@ -42,7 +42,6 @@
 import static com.android.internal.util.FrameworkStatsLog.PACKAGE_NOTIFICATION_PREFERENCES__FSI_STATE__DENIED;
 import static com.android.internal.util.FrameworkStatsLog.PACKAGE_NOTIFICATION_PREFERENCES__FSI_STATE__GRANTED;
 import static com.android.internal.util.FrameworkStatsLog.PACKAGE_NOTIFICATION_PREFERENCES__FSI_STATE__NOT_REQUESTED;
-import static com.android.server.notification.PreferencesHelper.LockableAppFields.USER_LOCKED_BUBBLE;
 import static com.android.server.notification.PreferencesHelper.LockableAppFields.USER_LOCKED_PROMOTABLE;
 
 import android.annotation.FlaggedApi;
@@ -287,7 +286,7 @@
         if (!TAG_RANKING.equals(tag)) return;
 
         final int xmlVersion = parser.getAttributeInt(null, ATT_VERSION, -1);
-        boolean upgradeForBubbles = xmlVersion >= XML_VERSION_BUBBLES_UPGRADE;
+        boolean upgradeForBubbles = xmlVersion == XML_VERSION_BUBBLES_UPGRADE;
         boolean migrateToPermission = (xmlVersion < XML_VERSION_NOTIF_PERMISSION);
         if (mShowReviewPermissionsNotification
                 && (xmlVersion < XML_VERSION_REVIEW_PERMISSIONS_NOTIFICATION)) {
@@ -338,19 +337,15 @@
             }
             boolean skipWarningLogged = false;
             boolean skipGroupWarningLogged = false;
-            int bubblePref = parser.getAttributeInt(null, ATT_ALLOW_BUBBLE,
-                    DEFAULT_BUBBLE_PREFERENCE);
-            boolean bubbleLocked = (parser.getAttributeInt(null,
-                    ATT_APP_USER_LOCKED_FIELDS, DEFAULT_LOCKED_APP_FIELDS) & USER_LOCKED_BUBBLE)
-                    != 0;
-            if (!bubbleLocked
-                    && upgradeForBubbles
-                    && uid != UNKNOWN_UID
-                    && mAppOps.noteOpNoThrow(OP_SYSTEM_ALERT_WINDOW, uid, name, null,
-                    "check-notif-bubble") == AppOpsManager.MODE_ALLOWED) {
-                // User hasn't changed bubble pref & the app has SAW, so allow all bubbles.
-                bubblePref = BUBBLE_PREFERENCE_ALL;
+            boolean hasSAWPermission = false;
+            if (upgradeForBubbles && uid != UNKNOWN_UID) {
+                hasSAWPermission = mAppOps.noteOpNoThrow(
+                        OP_SYSTEM_ALERT_WINDOW, uid, name, null,
+                        "check-notif-bubble") == AppOpsManager.MODE_ALLOWED;
             }
+            int bubblePref = hasSAWPermission
+                    ? BUBBLE_PREFERENCE_ALL
+                    : parser.getAttributeInt(null, ATT_ALLOW_BUBBLE, DEFAULT_BUBBLE_PREFERENCE);
             int appImportance = parser.getAttributeInt(null, ATT_IMPORTANCE, DEFAULT_IMPORTANCE);
 
             // when data is loaded from disk it's loaded as USER_ALL, but restored data that
diff --git a/services/core/java/com/android/server/notification/ZenConfigTrimmer.java b/services/core/java/com/android/server/notification/ZenConfigTrimmer.java
new file mode 100644
index 0000000..d65954d
--- /dev/null
+++ b/services/core/java/com/android/server/notification/ZenConfigTrimmer.java
@@ -0,0 +1,109 @@
+/*
+ * Copyright (C) 2025 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.server.notification;
+
+import android.content.Context;
+import android.os.Parcel;
+import android.service.notification.SystemZenRules;
+import android.service.notification.ZenModeConfig;
+import android.util.Slog;
+
+import java.util.ArrayList;
+import java.util.Comparator;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+
+class ZenConfigTrimmer {
+
+    private static final String TAG = "ZenConfigTrimmer";
+    private static final int MAXIMUM_PARCELED_SIZE = 150_000; // bytes
+
+    private final HashSet<String> mTrustedPackages;
+
+    ZenConfigTrimmer(Context context) {
+        mTrustedPackages = new HashSet<>();
+        mTrustedPackages.add(SystemZenRules.PACKAGE_ANDROID);
+        mTrustedPackages.addAll(ConditionProviders.getDefaultDndAccessPackages(context));
+    }
+
+    void trimToMaximumSize(ZenModeConfig config) {
+        Map<String, PackageRules> rulesPerPackage = new HashMap<>();
+        for (ZenModeConfig.ZenRule rule : config.automaticRules.values()) {
+            PackageRules pkgRules = rulesPerPackage.computeIfAbsent(rule.pkg, PackageRules::new);
+            pkgRules.mRules.add(rule);
+        }
+
+        int totalSize = 0;
+        for (PackageRules pkgRules : rulesPerPackage.values()) {
+            totalSize += pkgRules.dataSize();
+        }
+
+        if (totalSize > MAXIMUM_PARCELED_SIZE) {
+            List<PackageRules> deletionCandidates = new ArrayList<>();
+            for (PackageRules pkgRules : rulesPerPackage.values()) {
+                if (!mTrustedPackages.contains(pkgRules.mPkg)) {
+                    deletionCandidates.add(pkgRules);
+                }
+            }
+            deletionCandidates.sort(Comparator.comparingInt(PackageRules::dataSize).reversed());
+
+            evictPackagesFromConfig(config, deletionCandidates, totalSize);
+        }
+    }
+
+    private static void evictPackagesFromConfig(ZenModeConfig config,
+            List<PackageRules> deletionCandidates, int currentSize) {
+        while (currentSize > MAXIMUM_PARCELED_SIZE && !deletionCandidates.isEmpty()) {
+            PackageRules rulesToDelete = deletionCandidates.removeFirst();
+            Slog.w(TAG, String.format("Evicting %s zen rules from package '%s' (%s bytes)",
+                    rulesToDelete.mRules.size(), rulesToDelete.mPkg, rulesToDelete.dataSize()));
+
+            for (ZenModeConfig.ZenRule rule : rulesToDelete.mRules) {
+                config.automaticRules.remove(rule.id);
+            }
+
+            currentSize -= rulesToDelete.dataSize();
+        }
+    }
+
+    private static class PackageRules {
+        private final String mPkg;
+        private final List<ZenModeConfig.ZenRule> mRules;
+        private int mParceledSize = -1;
+
+        PackageRules(String pkg) {
+            mPkg = pkg;
+            mRules = new ArrayList<>();
+        }
+
+        private int dataSize() {
+            if (mParceledSize >= 0) {
+                return mParceledSize;
+            }
+            Parcel parcel = Parcel.obtain();
+            try {
+                parcel.writeParcelableList(mRules, 0);
+                mParceledSize = parcel.dataSize();
+                return mParceledSize;
+            } finally {
+                parcel.recycle();
+            }
+        }
+    }
+}
diff --git a/services/core/java/com/android/server/notification/ZenModeHelper.java b/services/core/java/com/android/server/notification/ZenModeHelper.java
index 889df51..8b09c2a 100644
--- a/services/core/java/com/android/server/notification/ZenModeHelper.java
+++ b/services/core/java/com/android/server/notification/ZenModeHelper.java
@@ -48,6 +48,7 @@
 import static com.android.internal.util.FrameworkStatsLog.DND_MODE_RULE;
 import static com.android.internal.util.Preconditions.checkArgument;
 import static com.android.server.notification.Flags.preventZenDeviceEffectsWhileDriving;
+import static com.android.server.notification.Flags.limitZenConfigSize;
 
 import static java.util.Objects.requireNonNull;
 
@@ -192,6 +193,7 @@
     private final ConditionProviders.Config mServiceConfig;
     private final SystemUiSystemPropertiesFlags.FlagResolver mFlagResolver;
     private final ZenModeEventLogger mZenModeEventLogger;
+    private final ZenConfigTrimmer mConfigTrimmer;
 
     @VisibleForTesting protected int mZenMode;
     @VisibleForTesting protected NotificationManager.Policy mConsolidatedPolicy;
@@ -226,6 +228,7 @@
         mClock = clock;
         addCallback(mMetrics);
         mAppOps = context.getSystemService(AppOpsManager.class);
+        mConfigTrimmer = new ZenConfigTrimmer(mContext);
 
         mDefaultConfig = Flags.modesUi()
                 ? ZenModeConfig.getDefaultConfig()
@@ -2061,20 +2064,20 @@
                 Log.w(TAG, "Invalid config in setConfigLocked; " + config);
                 return false;
             }
+            if (limitZenConfigSize() && (origin == ORIGIN_APP || origin == ORIGIN_USER_IN_APP)) {
+                mConfigTrimmer.trimToMaximumSize(config);
+            }
+
             if (config.user != mUser) {
                 // simply store away for background users
-                synchronized (mConfigLock) {
-                    mConfigs.put(config.user, config);
-                }
+                mConfigs.put(config.user, config);
                 if (DEBUG) Log.d(TAG, "setConfigLocked: store config for user " + config.user);
                 return true;
             }
             // handle CPS backed conditions - danger! may modify config
             mConditions.evaluateConfig(config, null, false /*processSubscriptions*/);
 
-            synchronized (mConfigLock) {
-                mConfigs.put(config.user, config);
-            }
+            mConfigs.put(config.user, config);
             if (DEBUG) Log.d(TAG, "setConfigLocked reason=" + reason, new Throwable());
             ZenLog.traceConfig(origin, reason, triggeringComponent, mConfig, config, callingUid);
 
diff --git a/services/core/java/com/android/server/notification/flags.aconfig b/services/core/java/com/android/server/notification/flags.aconfig
index 76cd5c8..346d65a 100644
--- a/services/core/java/com/android/server/notification/flags.aconfig
+++ b/services/core/java/com/android/server/notification/flags.aconfig
@@ -212,6 +212,16 @@
 }
 
 flag {
+  name: "limit_zen_config_size"
+  namespace: "systemui"
+  description: "Enforce a maximum (serialized) size for the Zen configuration"
+  bug: "387498139"
+  metadata {
+    purpose: PURPOSE_BUGFIX
+  }
+}
+
+flag {
   name: "managed_services_concurrent_multiuser"
   namespace: "systemui"
   description: "Enables ManagedServices to support Concurrent multi user environment"
diff --git a/services/core/java/com/android/server/om/OverlayManagerService.java b/services/core/java/com/android/server/om/OverlayManagerService.java
index e613700..8d787fe 100644
--- a/services/core/java/com/android/server/om/OverlayManagerService.java
+++ b/services/core/java/com/android/server/om/OverlayManagerService.java
@@ -82,7 +82,6 @@
 import android.util.SparseArray;
 
 import com.android.internal.annotations.GuardedBy;
-import com.android.internal.annotations.KeepForWeakReference;
 import com.android.internal.content.PackageMonitor;
 import com.android.internal.content.om.OverlayConfig;
 import com.android.internal.util.ArrayUtils;
@@ -267,7 +266,6 @@
 
     private final OverlayActorEnforcer mActorEnforcer;
 
-    @KeepForWeakReference
     private final PackageMonitor mPackageMonitor = new OverlayManagerPackageMonitor();
 
     private int mPrevStartedUserId = -1;
diff --git a/services/core/java/com/android/server/om/OverlayManagerSettings.java b/services/core/java/com/android/server/om/OverlayManagerSettings.java
index 1ac9711..395d2e1 100644
--- a/services/core/java/com/android/server/om/OverlayManagerSettings.java
+++ b/services/core/java/com/android/server/om/OverlayManagerSettings.java
@@ -545,8 +545,8 @@
                     throw new XmlPullParserException("old version " + oldVersion + "; ignoring");
                 case 3:
                 case 4:
-                    // Upgrading from version 3 to 5 is not a breaking change so do not ignore the
-                    // overlay file.
+                    // Upgrading from versions 3 and 4 is not a breaking change, so do not
+                    // ignore the overlay file.
                     return;
                 default:
                     throw new XmlPullParserException("unrecognized version " + oldVersion);
diff --git a/services/core/java/com/android/server/pm/BackgroundInstallControlService.java b/services/core/java/com/android/server/pm/BackgroundInstallControlService.java
index 463989a..60d028b 100644
--- a/services/core/java/com/android/server/pm/BackgroundInstallControlService.java
+++ b/services/core/java/com/android/server/pm/BackgroundInstallControlService.java
@@ -390,10 +390,11 @@
                 .max(Comparator.comparingLong(PackageInstaller.SessionInfo::getCreatedMillis));
     }
 
-    // ADB sets installerPackageName to null, this creates a loophole to bypass BIC which will be
-    // addressed with b/265203007
     private boolean installedByAdb(String initiatingPackageName) {
-        if(PackageManagerServiceUtils.isInstalledByAdb(initiatingPackageName)) {
+        // GTS tests needs to adopt shell identity to install apps.
+        if(!SystemProperties.get("gts.transparency.bg-install-apps").isEmpty()) {
+            Slog.d(TAG, "handlePackageAdd: is GTS tests, skipping ADB check");
+        } else if(PackageManagerServiceUtils.isInstalledByAdb(initiatingPackageName)) {
             Slog.d(TAG, "handlePackageAdd: is installed by ADB, skipping");
             return true;
         }
diff --git a/services/core/java/com/android/server/pm/OWNERS b/services/core/java/com/android/server/pm/OWNERS
index 62b89f32..f98ec04 100644
--- a/services/core/java/com/android/server/pm/OWNERS
+++ b/services/core/java/com/android/server/pm/OWNERS
@@ -1,7 +1,6 @@
 hackbod@android.com
 hackbod@google.com
 jsharkey@android.com
-jsharkey@google.com
 narayan@google.com
 include /PACKAGE_MANAGER_OWNERS
 
diff --git a/services/core/java/com/android/server/pm/PackageInstallerSession.java b/services/core/java/com/android/server/pm/PackageInstallerSession.java
index 136cb12..635ef06 100644
--- a/services/core/java/com/android/server/pm/PackageInstallerSession.java
+++ b/services/core/java/com/android/server/pm/PackageInstallerSession.java
@@ -5189,7 +5189,9 @@
                     "Session " + sessionId + " is a parent of multi-package session and "
                             + "requestUserPreapproval on the parent session isn't supported.");
         }
-
+        if (statusReceiver == null) {
+            throw new IllegalArgumentException("Status receiver cannot be null.");
+        }
         synchronized (mLock) {
             assertPreparedAndNotSealedLocked("request of session " + sessionId);
             mPreapprovalDetails = details;
@@ -5542,6 +5544,10 @@
      */
     private static void sendOnUserActionRequired(Context context, IntentSender target,
             int sessionId, Intent intent) {
+        if (target == null) {
+            Slog.e(TAG, "Missing receiver for pending user action.");
+            return;
+        }
         final Intent fillIn = new Intent();
         fillIn.putExtra(PackageInstaller.EXTRA_SESSION_ID, sessionId);
         fillIn.putExtra(PackageInstaller.EXTRA_STATUS, PackageInstaller.STATUS_PENDING_USER_ACTION);
diff --git a/services/core/java/com/android/server/pm/UserManagerService.java b/services/core/java/com/android/server/pm/UserManagerService.java
index c7737e9..93837b3 100644
--- a/services/core/java/com/android/server/pm/UserManagerService.java
+++ b/services/core/java/com/android/server/pm/UserManagerService.java
@@ -2621,20 +2621,22 @@
      * Valid user is the current user or the system or in the same profile group as the current
      * user. Visible background users are not valid calling users.
      */
-    public static void enforceCurrentUserIfVisibleBackgroundEnabled(@UserIdInt int currentUserId) {
+    public static void enforceCurrentUserIfVisibleBackgroundEnabled() {
         if (!UserManager.isVisibleBackgroundUsersEnabled()) {
             return;
         }
         final int callingUserId = UserHandle.getCallingUserId();
-        if (DBG) {
-            Slog.d(LOG_TAG, "enforceValidCallingUser: callingUserId=" + callingUserId
-                    + " isSystemUser=" + (callingUserId == USER_SYSTEM)
-                    + " currentUserId=" + currentUserId
-                    + " callingPid=" + Binder.getCallingPid()
-                    + " callingUid=" + Binder.getCallingUid());
-        }
         final long ident = Binder.clearCallingIdentity();
         try {
+            final int currentUserId = ActivityManager.getCurrentUser();
+            if (DBG) {
+                Slog.d(LOG_TAG, "enforceCurrentUserIfVisibleBackgroundEnabled:"
+                        + " callingUserId=" + callingUserId
+                        + " isSystemUser=" + (callingUserId == USER_SYSTEM)
+                        + " currentUserId=" + currentUserId
+                        + " callingPid=" + Binder.getCallingPid()
+                        + " callingUid=" + Binder.getCallingUid());
+            }
             if (callingUserId != USER_SYSTEM && callingUserId != currentUserId
                     && !UserManagerService.getInstance()
                     .isSameProfileGroup(callingUserId, currentUserId)) {
@@ -2937,28 +2939,20 @@
 
         int flags = UserManager.SWITCHABILITY_STATUS_OK;
 
-        t.traceBegin("TM.isInCall");
-        final long identity = Binder.clearCallingIdentity();
-        try {
-            final TelecomManager telecomManager = mContext.getSystemService(TelecomManager.class);
-            if (com.android.internal.telephony.flags
-                    .Flags.enforceTelephonyFeatureMappingForPublicApis()) {
-                if (mContext.getPackageManager().hasSystemFeature(
-                        PackageManager.FEATURE_TELECOM)) {
-                    if (telecomManager != null && telecomManager.isInCall()) {
-                        flags |= UserManager.SWITCHABILITY_STATUS_USER_IN_CALL;
-                    }
-                }
-            } else {
+        if (mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_TELECOM)) {
+            t.traceBegin("TM.isInCall");
+            final long identity = Binder.clearCallingIdentity();
+            try {
+                final TelecomManager telecomManager = mContext.getSystemService(
+                        TelecomManager.class);
                 if (telecomManager != null && telecomManager.isInCall()) {
                     flags |= UserManager.SWITCHABILITY_STATUS_USER_IN_CALL;
                 }
+            } finally {
+                Binder.restoreCallingIdentity(identity);
             }
-        } finally {
-            Binder.restoreCallingIdentity(identity);
+            t.traceEnd();
         }
-        t.traceEnd();
-
         t.traceBegin("hasUserRestriction-DISALLOW_USER_SWITCH");
         if (mLocalService.hasUserRestriction(DISALLOW_USER_SWITCH, userId)) {
             flags |= UserManager.SWITCHABILITY_STATUS_USER_SWITCH_DISALLOWED;
@@ -5784,8 +5778,8 @@
         final boolean isRestricted = UserManager.isUserTypeRestricted(userType);
         final boolean isDemo = UserManager.isUserTypeDemo(userType);
         final boolean isManagedProfile = UserManager.isUserTypeManagedProfile(userType);
-        final boolean isCommunalProfile = UserManager.isUserTypeCommunalProfile(userType);
         final boolean isPrivateProfile = UserManager.isUserTypePrivateProfile(userType);
+        final boolean requiresProfileParent = userTypeDetails.isProfileParentRequired();
 
         final long ident = Binder.clearCallingIdentity();
         UserInfo userInfo;
@@ -5825,7 +5819,7 @@
                             UserManager.USER_OPERATION_ERROR_MAX_USERS);
                 }
                 // TODO(b/142482943): Perhaps let the following code apply to restricted users too.
-                if (isProfile && !isCommunalProfile &&
+                if (requiresProfileParent &&
                         !canAddMoreProfilesToUser(userType, parentId, false)) {
                     throwCheckedUserOperationException(
                             "Cannot add more profiles of type " + userType
diff --git a/services/core/java/com/android/server/pm/UserTypeDetails.java b/services/core/java/com/android/server/pm/UserTypeDetails.java
index 19410e5..c1f63f0 100644
--- a/services/core/java/com/android/server/pm/UserTypeDetails.java
+++ b/services/core/java/com/android/server/pm/UserTypeDetails.java
@@ -112,6 +112,9 @@
      */
     private final @Nullable List<DefaultCrossProfileIntentFilter> mDefaultCrossProfileIntentFilters;
 
+    /** Whether the {@link #isProfile() profile} requires having a parent (as most profiles do). */
+    private final boolean mProfileParentRequired;
+
 
     // Fields for profiles only, controlling the nature of their badges.
     // All badge information should be set if {@link #hasBadge()} is true.
@@ -174,7 +177,7 @@
 
     private UserTypeDetails(@NonNull String name, boolean enabled, int maxAllowed,
             @UserInfoFlag int baseType, @UserInfoFlag int defaultUserInfoPropertyFlags,
-            @Nullable int[] labels, int maxAllowedPerParent,
+            @Nullable int[] labels, int maxAllowedPerParent, boolean profileParentRequired,
             int iconBadge, int badgePlain, int badgeNoBackground,
             int statusBarIcon,
             @Nullable int[] badgeLabels, @Nullable int[] badgeColors,
@@ -195,6 +198,7 @@
         this.mDefaultSystemSettings = defaultSystemSettings;
         this.mDefaultSecureSettings = defaultSecureSettings;
         this.mDefaultCrossProfileIntentFilters = defaultCrossProfileIntentFilters;
+        this.mProfileParentRequired = profileParentRequired;
         this.mIconBadge = iconBadge;
         this.mBadgePlain = badgePlain;
         this.mBadgeNoBackground = badgeNoBackground;
@@ -249,6 +253,14 @@
     }
 
     /**
+     * Returns whether this type of {@link #isProfile() profile} requires having a parent.
+     * Inapplicable to non-profiles (and therefore inapplicable to restricted profiles).
+     */
+    public boolean isProfileParentRequired() {
+        return mProfileParentRequired;
+    }
+
+    /**
      * Returns the resource ID corresponding to the badgeIndexth label name where the badgeIndex is
      * expected to be the {@link UserInfo#profileBadge} of the user. If badgeIndex exceeds the
      * number of labels, returns the label for the highest index.
@@ -406,6 +418,7 @@
             UserRestrictionsUtils.dumpRestrictions(pw, restrictionsPrefix, mDefaultRestrictions);
         }
 
+        pw.print(prefix); pw.print("mProfileParentRequired: "); pw.println(mProfileParentRequired);
         pw.print(prefix); pw.print("mIconBadge: "); pw.println(mIconBadge);
         pw.print(prefix); pw.print("mBadgePlain: "); pw.println(mBadgePlain);
         pw.print(prefix); pw.print("mBadgeNoBackground: "); pw.println(mBadgeNoBackground);
@@ -438,6 +451,7 @@
         private @Nullable int[] mBadgeLabels = null;
         private @Nullable int[] mBadgeColors = null;
         private @Nullable int[] mDarkThemeBadgeColors = null;
+        private boolean mProfileParentRequired = false;
         private @DrawableRes int mIconBadge = Resources.ID_NULL;
         private @DrawableRes int mBadgePlain = Resources.ID_NULL;
         private @DrawableRes int mBadgeNoBackground = Resources.ID_NULL;
@@ -487,14 +501,17 @@
             return this;
         }
 
-        /**
-         * The badge colors when the badge is on a dark background.
-         */
+        /** The badge colors when the badge is on a dark background. */
         public Builder setDarkThemeBadgeColors(@ColorRes int ... darkThemeBadgeColors) {
             mDarkThemeBadgeColors = darkThemeBadgeColors;
             return this;
         }
 
+        public Builder setProfileParentRequired(boolean profileParentRequired) {
+            mProfileParentRequired = profileParentRequired;
+            return this;
+        }
+
         public Builder setIconBadge(@DrawableRes int badgeIcon) {
             mIconBadge = badgeIcon;
             return this;
@@ -541,9 +558,7 @@
             return this;
         }
 
-        /**
-         * Sets the accessibility label associated with the user
-         */
+        /** Sets the accessibility label associated with the user */
         public Builder setAccessibilityString(@StringRes int accessibilityString) {
             mAccessibilityString = accessibilityString;
             return this;
@@ -590,6 +605,8 @@
                                 || mDefaultCrossProfileIntentFilters.isEmpty(),
                         "UserTypeDetails %s has a non empty "
                                 + "defaultCrossProfileIntentFilters", mName);
+                Preconditions.checkArgument(!mProfileParentRequired,
+                        "UserTypeDetails %s requires a parent but isn't a profile", mName);
             }
             return new UserTypeDetails(
                     mName,
@@ -599,6 +616,7 @@
                     mDefaultUserInfoPropertyFlags,
                     mLabels,
                     mMaxAllowedPerParent,
+                    mProfileParentRequired,
                     mIconBadge,
                     mBadgePlain,
                     mBadgeNoBackground,
diff --git a/services/core/java/com/android/server/pm/UserTypeFactory.java b/services/core/java/com/android/server/pm/UserTypeFactory.java
index 2715025..58c5b1c 100644
--- a/services/core/java/com/android/server/pm/UserTypeFactory.java
+++ b/services/core/java/com/android/server/pm/UserTypeFactory.java
@@ -128,6 +128,7 @@
                 .setName(USER_TYPE_PROFILE_CLONE)
                 .setBaseType(FLAG_PROFILE)
                 .setMaxAllowedPerParent(1)
+                .setProfileParentRequired(true)
                 .setLabels(R.string.profile_label_clone)
                 .setIconBadge(com.android.internal.R.drawable.ic_clone_icon_badge)
                 .setBadgePlain(com.android.internal.R.drawable.ic_clone_badge)
@@ -177,6 +178,7 @@
                 .setBaseType(FLAG_PROFILE)
                 .setDefaultUserInfoPropertyFlags(FLAG_MANAGED_PROFILE)
                 .setMaxAllowedPerParent(1)
+                .setProfileParentRequired(true)
                 .setLabels(
                         R.string.profile_label_work,
                         R.string.profile_label_work_2,
@@ -226,6 +228,7 @@
                 .setName(USER_TYPE_PROFILE_TEST)
                 .setBaseType(FLAG_PROFILE)
                 .setMaxAllowedPerParent(2)
+                .setProfileParentRequired(true)
                 .setLabels(
                         R.string.profile_label_test,
                         R.string.profile_label_test,
@@ -259,6 +262,7 @@
                 .setName(USER_TYPE_PROFILE_COMMUNAL)
                 .setBaseType(FLAG_PROFILE)
                 .setMaxAllowed(1)
+                .setProfileParentRequired(false)
                 .setEnabled(UserManager.isCommunalProfileEnabled() ? 1 : 0)
                 .setLabels(R.string.profile_label_communal)
                 .setIconBadge(com.android.internal.R.drawable.ic_test_icon_badge_experiment)
@@ -295,6 +299,7 @@
         return new UserTypeDetails.Builder()
                 .setName(USER_TYPE_PROFILE_PRIVATE)
                 .setBaseType(FLAG_PROFILE)
+                .setProfileParentRequired(true)
                 .setMaxAllowedPerParent(1)
                 .setEnabled(UserManager.isPrivateProfileEnabled() ? 1 : 0)
                 .setLabels(R.string.profile_label_private)
@@ -387,6 +392,7 @@
                 .setBaseType(FLAG_FULL)
                 .setDefaultUserInfoPropertyFlags(FLAG_RESTRICTED)
                 .setMaxAllowed(UNLIMITED_NUMBER_OF_USERS)
+                .setProfileParentRequired(false) // they have a "parent", but not a profile parent
                 // NB: UserManagerService.createRestrictedProfile() applies hardcoded restrictions.
                 .setDefaultRestrictions(null);
     }
@@ -541,6 +547,8 @@
                     builder = new UserTypeDetails.Builder();
                     builder.setName(typeName);
                     builder.setBaseType(FLAG_PROFILE);
+                    // Custom parentless profiles are not yet supported.
+                    builder.setProfileParentRequired(true);
                     builders.put(typeName, builder);
                 } else {
                     throw new IllegalArgumentException("Creation of non-profile user type "
diff --git a/services/core/java/com/android/server/pm/dex/OWNERS b/services/core/java/com/android/server/pm/dex/OWNERS
index 5ca8ddd..70af4e7 100644
--- a/services/core/java/com/android/server/pm/dex/OWNERS
+++ b/services/core/java/com/android/server/pm/dex/OWNERS
@@ -1,4 +1,3 @@
-alanstokes@google.com
 jiakaiz@google.com
 ngeoffray@google.com
 mast@google.com
diff --git a/services/core/java/com/android/server/policy/KeyCombinationManager.java b/services/core/java/com/android/server/policy/KeyCombinationManager.java
index 1592ef3..1b98dd1 100644
--- a/services/core/java/com/android/server/policy/KeyCombinationManager.java
+++ b/services/core/java/com/android/server/policy/KeyCombinationManager.java
@@ -148,19 +148,19 @@
      * to a window.
      * Return true if any active rule could be triggered by the key event, otherwise false.
      */
-    public boolean interceptKey(KeyEvent event, boolean interactive) {
+    public boolean interceptKey(KeyEvent event, boolean isDefaultDisplayInteractive) {
         synchronized (mLock) {
-            return interceptKeyLocked(event, interactive);
+            return interceptKeyLocked(event, isDefaultDisplayInteractive);
         }
     }
 
-    private boolean interceptKeyLocked(KeyEvent event, boolean interactive) {
+    private boolean interceptKeyLocked(KeyEvent event, boolean isDefaultDisplayInteractive) {
         final boolean down = event.getAction() == KeyEvent.ACTION_DOWN;
         final int keyCode = event.getKeyCode();
         final int count = mActiveRules.size();
         final long eventTime = event.getEventTime();
 
-        if (interactive && down) {
+        if (isDefaultDisplayInteractive && down) {
             if (mDownTimes.size() > 0) {
                 if (count > 0
                         && eventTime > mDownTimes.valueAt(0) + COMBINE_KEY_DELAY_MILLIS) {
diff --git a/services/core/java/com/android/server/policy/PhoneWindowManager.java b/services/core/java/com/android/server/policy/PhoneWindowManager.java
index 980fb155..f27194a 100644
--- a/services/core/java/com/android/server/policy/PhoneWindowManager.java
+++ b/services/core/java/com/android/server/policy/PhoneWindowManager.java
@@ -1163,15 +1163,6 @@
         }
     }
 
-    private boolean shouldShowHub() {
-        final boolean hubEnabled = Settings.Secure.getIntForUser(
-                mContext.getContentResolver(), Settings.Secure.GLANCEABLE_HUB_ENABLED,
-                1, mCurrentUserId) == 1;
-
-        return mUserManagerInternal != null && mUserManagerInternal.isUserUnlocked(mCurrentUserId)
-                && hubEnabled && mDreamManagerInternal.dreamConditionActive();
-    }
-
     @VisibleForTesting
     void powerPress(long eventTime, int count, int displayId) {
         // SideFPS still needs to know about suppressed power buttons, in case it needs to block
@@ -1260,8 +1251,7 @@
                             mContext.getContentResolver(), Settings.Secure.GLANCEABLE_HUB_ENABLED,
                             1, mCurrentUserId) == 1;
 
-                    if ((mDreamManagerInternal != null && mDreamManagerInternal.isDreaming())
-                            || isKeyguardShowing()) {
+                    if (mDreamManagerInternal.isDreaming() || isKeyguardShowing()) {
                         // If the device is already dreaming or on keyguard, go to sleep.
                         sleepDefaultDisplayFromPowerButton(eventTime, 0);
                         break;
@@ -1271,10 +1261,9 @@
                     // show hub.
                     boolean keyguardAvailable = !mLockPatternUtils.isLockScreenDisabled(
                             mCurrentUserId);
-                    if (shouldShowHub() && keyguardAvailable) {
-                        // If the hub can be launched, send a message to keyguard. We do not know if
-                        // the hub is already running or not, keyguard handles turning screen off if
-                        // it is.
+                    if (mUserManagerInternal.isUserUnlocked(mCurrentUserId) && hubEnabled
+                            && keyguardAvailable && mDreamManagerInternal.dreamConditionActive()) {
+                        // If the hub can be launched, send a message to keyguard.
                         Bundle options = new Bundle();
                         options.putBoolean(EXTRA_TRIGGER_HUB, true);
                         lockNow(options);
@@ -1335,14 +1324,14 @@
      * @param isScreenOn Whether the screen is currently on.
      * @param noDreamAction The action to perform if dreaming is not possible.
      */
-    private boolean attemptToDreamFromShortPowerButtonPress(
+    private void attemptToDreamFromShortPowerButtonPress(
             boolean isScreenOn, Runnable noDreamAction) {
         if (mShortPressOnPowerBehavior != SHORT_PRESS_POWER_DREAM_OR_SLEEP
                 && mShortPressOnPowerBehavior != SHORT_PRESS_POWER_HUB_OR_DREAM_OR_SLEEP) {
             // If the power button behavior isn't one that should be able to trigger the dream, give
             // up.
             noDreamAction.run();
-            return false;
+            return;
         }
 
         final DreamManagerInternal dreamManagerInternal = getDreamManagerInternal();
@@ -1350,7 +1339,7 @@
             Slog.d(TAG, "Can't start dreaming when attempting to dream from short power"
                     + " press (isScreenOn=" + isScreenOn + ")");
             noDreamAction.run();
-            return false;
+            return;
         }
 
         synchronized (mLock) {
@@ -1361,8 +1350,6 @@
         }
 
         dreamManagerInternal.requestDream();
-
-        return true;
     }
 
     /**
@@ -2340,10 +2327,6 @@
         WindowWakeUpPolicy getWindowWakeUpPolicy() {
             return new WindowWakeUpPolicy(mContext);
         }
-
-        DreamManagerInternal getDreamManagerInternal() {
-            return LocalServices.getService(DreamManagerInternal.class);
-        }
     }
 
     /** {@inheritDoc} */
@@ -2362,7 +2345,7 @@
         mActivityTaskManagerInternal = LocalServices.getService(ActivityTaskManagerInternal.class);
         mInputManager = mContext.getSystemService(InputManager.class);
         mInputManagerInternal = LocalServices.getService(InputManagerInternal.class);
-        mDreamManagerInternal = injector.getDreamManagerInternal();
+        mDreamManagerInternal = LocalServices.getService(DreamManagerInternal.class);
         mPowerManagerInternal = LocalServices.getService(PowerManagerInternal.class);
         mAppOpsManager = mContext.getSystemService(AppOpsManager.class);
         mSensorPrivacyManager = mContext.getSystemService(SensorPrivacyManager.class);
@@ -4300,22 +4283,19 @@
                     case KeyGestureEvent.KEY_GESTURE_TYPE_CLOSE_ALL_DIALOGS:
                     case KeyGestureEvent.KEY_GESTURE_TYPE_LAUNCH_APPLICATION:
                     case KeyGestureEvent.KEY_GESTURE_TYPE_TOGGLE_DO_NOT_DISTURB:
-                        return true;
                     case KeyGestureEvent.KEY_GESTURE_TYPE_SCREENSHOT_CHORD:
                     case KeyGestureEvent.KEY_GESTURE_TYPE_RINGER_TOGGLE_CHORD:
                     case KeyGestureEvent.KEY_GESTURE_TYPE_GLOBAL_ACTIONS:
                     case KeyGestureEvent.KEY_GESTURE_TYPE_TV_TRIGGER_BUG_REPORT:
-                        return mDefaultDisplayPolicy.isAwake();
-                    case KeyGestureEvent.KEY_GESTURE_TYPE_ACCESSIBILITY_SHORTCUT_CHORD:
-                        return mDefaultDisplayPolicy.isAwake() && mAccessibilityShortcutController
-                                .isAccessibilityShortcutAvailable(isKeyguardLocked());
-                    case KeyGestureEvent.KEY_GESTURE_TYPE_TV_ACCESSIBILITY_SHORTCUT_CHORD:
-                        return mDefaultDisplayPolicy.isAwake() && mAccessibilityShortcutController
-                                .isAccessibilityShortcutAvailable(false);
                     case KeyGestureEvent.KEY_GESTURE_TYPE_TOGGLE_TALKBACK:
-                        return enableTalkbackAndMagnifierKeyGestures();
                     case KeyGestureEvent.KEY_GESTURE_TYPE_TOGGLE_VOICE_ACCESS:
-                        return enableVoiceAccessKeyGestures();
+                        return true;
+                    case KeyGestureEvent.KEY_GESTURE_TYPE_ACCESSIBILITY_SHORTCUT_CHORD:
+                        return mAccessibilityShortcutController.isAccessibilityShortcutAvailable(
+                                isKeyguardLocked());
+                    case KeyGestureEvent.KEY_GESTURE_TYPE_TV_ACCESSIBILITY_SHORTCUT_CHORD:
+                        return mAccessibilityShortcutController.isAccessibilityShortcutAvailable(
+                                false);
                     default:
                         return false;
                 }
@@ -6409,17 +6389,6 @@
                 event.getDisplayId(), event.getKeyCode(), "wakeUpFromWakeKey")) {
             return;
         }
-
-        if (!shouldShowHub()
-                && mShortPressOnPowerBehavior == SHORT_PRESS_POWER_HUB_OR_DREAM_OR_SLEEP
-                && event.getKeyCode() == KEYCODE_POWER
-                && attemptToDreamFromShortPowerButtonPress(false, () -> {})) {
-            // In the case that we should wake to dream and successfully initiate dreaming, do not
-            // continue waking up. Doing so will exit the dream state and cause UI to react
-            // accordingly.
-            return;
-        }
-
         wakeUpFromWakeKey(
                 event.getEventTime(),
                 event.getKeyCode(),
diff --git a/services/core/java/com/android/server/power/PowerManagerService.java b/services/core/java/com/android/server/power/PowerManagerService.java
index e3eced2..dd454cd 100644
--- a/services/core/java/com/android/server/power/PowerManagerService.java
+++ b/services/core/java/com/android/server/power/PowerManagerService.java
@@ -7445,6 +7445,13 @@
         public void setDevicePostured(boolean isPostured) {
             setDevicePosturedInternal(isPostured);
         }
+
+        @Override
+        public void updateSettings() {
+            synchronized (mLock) {
+                updateSettingsLocked();
+            }
+        }
     }
 
     /**
diff --git a/services/core/java/com/android/server/power/stats/BatteryHistoryDirectory.java b/services/core/java/com/android/server/power/stats/BatteryHistoryDirectory.java
index adf308a..5563f98 100644
--- a/services/core/java/com/android/server/power/stats/BatteryHistoryDirectory.java
+++ b/services/core/java/com/android/server/power/stats/BatteryHistoryDirectory.java
@@ -143,6 +143,7 @@
     /**
      * Returns the maximum storage size allocated to battery history.
      */
+    @Override
     public int getMaxHistorySize() {
         return mMaxHistorySize;
     }
@@ -250,6 +251,10 @@
         try (FileInputStream stream = file.openRead()) {
             byte[] header = new byte[FILE_FORMAT_BYTES];
             if (stream.read(header, 0, FILE_FORMAT_BYTES) == -1) {
+                if (file.getBaseFile().length() == 0) {
+                    return new byte[0];
+                }
+
                 Slog.e(TAG, "Invalid battery history file format " + file.getBaseFile());
                 deleteFragment(fragment);
                 return null;
diff --git a/services/core/java/com/android/server/power/stats/processor/AggregatedPowerStats.java b/services/core/java/com/android/server/power/stats/processor/AggregatedPowerStats.java
index 53894a1..f2bbdfc 100644
--- a/services/core/java/com/android/server/power/stats/processor/AggregatedPowerStats.java
+++ b/services/core/java/com/android/server/power/stats/processor/AggregatedPowerStats.java
@@ -120,16 +120,18 @@
      *                      {@link com.android.internal.os.MonotonicClock}
      * @param currentTime   current time in milliseconds, see {@link System#currentTimeMillis()}
      */
-    void addClockUpdate(long monotonicTime, @CurrentTimeMillisLong long currentTime) {
+    boolean addClockUpdate(long monotonicTime, @CurrentTimeMillisLong long currentTime) {
         ClockUpdate clockUpdate = new ClockUpdate();
         clockUpdate.monotonicTime = monotonicTime;
         clockUpdate.currentTime = currentTime;
         if (mClockUpdates.size() < MAX_CLOCK_UPDATES) {
             mClockUpdates.add(clockUpdate);
+            return true;
         } else {
             Slog.i(TAG, "Too many clock updates. Replacing the previous update with "
                     + DateFormat.format("yyyy-MM-dd-HH-mm-ss", currentTime));
             mClockUpdates.set(mClockUpdates.size() - 1, clockUpdate);
+            return false;
         }
     }
 
diff --git a/services/core/java/com/android/server/power/stats/processor/PhoneCallPowerStatsProcessor.java b/services/core/java/com/android/server/power/stats/processor/PhoneCallPowerStatsProcessor.java
index ad628e4..4344c32 100644
--- a/services/core/java/com/android/server/power/stats/processor/PhoneCallPowerStatsProcessor.java
+++ b/services/core/java/com/android/server/power/stats/processor/PhoneCallPowerStatsProcessor.java
@@ -39,6 +39,21 @@
         mTmpDeviceStats = new long[mDescriptor.statsArrayLength];
     }
 
+    private boolean unpackMobileRadioStatsDescriptor(PowerStats.Descriptor descriptor) {
+        if (descriptor == null) {
+            return false;
+        }
+
+        if (descriptor.equals(mMobileRadioStatsDescriptor)) {
+            return true;
+        }
+
+        mMobileRadioStatsDescriptor = descriptor;
+        mMobileRadioStatsLayout = new MobileRadioPowerStatsLayout(mMobileRadioStatsDescriptor);
+        mTmpMobileRadioDeviceStats = new long[mMobileRadioStatsDescriptor.statsArrayLength];
+        return true;
+    }
+
     @Override
     void finish(PowerComponentAggregatedPowerStats stats, long timestampMs) {
         stats.setPowerStatsDescriptor(mDescriptor);
@@ -50,16 +65,8 @@
             return;
         }
 
-        if (mMobileRadioStatsDescriptor == null) {
-            mMobileRadioStatsDescriptor = mobileRadioStats.getPowerStatsDescriptor();
-            if (mMobileRadioStatsDescriptor == null) {
-                return;
-            }
-
-            mMobileRadioStatsLayout =
-                    new MobileRadioPowerStatsLayout(
-                            mMobileRadioStatsDescriptor);
-            mTmpMobileRadioDeviceStats = new long[mMobileRadioStatsDescriptor.statsArrayLength];
+        if (!unpackMobileRadioStatsDescriptor(mobileRadioStats.getPowerStatsDescriptor())) {
+            return;
         }
 
         MultiStateStats.States[] deviceStateConfig =
diff --git a/services/core/java/com/android/server/power/stats/processor/PowerStatsAggregator.java b/services/core/java/com/android/server/power/stats/processor/PowerStatsAggregator.java
index 8461a54..b9862aa 100644
--- a/services/core/java/com/android/server/power/stats/processor/PowerStatsAggregator.java
+++ b/services/core/java/com/android/server/power/stats/processor/PowerStatsAggregator.java
@@ -98,14 +98,18 @@
 
                     if (!startedSession) {
                         mStats.start(item.time);
-                        mStats.addClockUpdate(item.time, item.currentTime);
+                        if (!mStats.addClockUpdate(item.time, item.currentTime)) {
+                            break;
+                        }
                         if (baseTime == UNINITIALIZED) {
                             baseTime = item.time;
                         }
                         startedSession = true;
                     } else if (item.cmd == BatteryStats.HistoryItem.CMD_CURRENT_TIME
                                || item.cmd == BatteryStats.HistoryItem.CMD_RESET) {
-                        mStats.addClockUpdate(item.time, item.currentTime);
+                        if (!mStats.addClockUpdate(item.time, item.currentTime)) {
+                            break;
+                        }
                     }
 
                     lastTime = item.time;
@@ -164,7 +168,9 @@
                                 consumer.accept(mStats);
                             }
                             mStats.reset();
-                            mStats.addClockUpdate(item.time, item.currentTime);
+                            if (!mStats.addClockUpdate(item.time, item.currentTime)) {
+                                break;
+                            }
                             baseTime = lastTime = item.time;
                         }
                         mStats.addPowerStats(item.powerStats, item.time);
diff --git a/services/core/java/com/android/server/security/advancedprotection/features/DisallowCellular2GAdvancedProtectionHook.java b/services/core/java/com/android/server/security/advancedprotection/features/DisallowCellular2GAdvancedProtectionHook.java
index acdea88..be26334 100644
--- a/services/core/java/com/android/server/security/advancedprotection/features/DisallowCellular2GAdvancedProtectionHook.java
+++ b/services/core/java/com/android/server/security/advancedprotection/features/DisallowCellular2GAdvancedProtectionHook.java
@@ -60,8 +60,7 @@
     private static boolean isEmbeddedSubscriptionVisible(SubscriptionInfo subInfo) {
         if (subInfo.isEmbedded()
                 && (subInfo.getProfileClass() == SubscriptionManager.PROFILE_CLASS_PROVISIONING
-                        || (com.android.internal.telephony.flags.Flags.oemEnabledSatelliteFlag()
-                                && subInfo.isOnlyNonTerrestrialNetwork()))) {
+                        || subInfo.isOnlyNonTerrestrialNetwork())) {
             return false;
         }
 
diff --git a/services/core/java/com/android/server/sensorprivacy/SensorPrivacyService.java b/services/core/java/com/android/server/sensorprivacy/SensorPrivacyService.java
index 16658e3..a64e38e 100644
--- a/services/core/java/com/android/server/sensorprivacy/SensorPrivacyService.java
+++ b/services/core/java/com/android/server/sensorprivacy/SensorPrivacyService.java
@@ -131,7 +131,6 @@
 
 import com.android.internal.R;
 import com.android.internal.annotations.GuardedBy;
-import com.android.internal.annotations.KeepForWeakReference;
 import com.android.internal.camera.flags.Flags;
 import com.android.internal.messages.nano.SystemMessageProto.SystemMessage;
 import com.android.internal.os.BackgroundThread;
@@ -2008,11 +2007,7 @@
     }
 
     private class CallStateHelper {
-        // TelephonyCallback instances are only weakly referenced when registered, so we need
-        // to ensure these fields are kept during optimization to preserve lifecycle semantics.
-        @KeepForWeakReference
         private final OutgoingEmergencyStateCallback mEmergencyStateCallback;
-        @KeepForWeakReference
         private final CallStateCallback mCallStateCallback;
 
         private boolean mIsInEmergencyCall;
diff --git a/services/core/java/com/android/server/statusbar/StatusBarManagerInternal.java b/services/core/java/com/android/server/statusbar/StatusBarManagerInternal.java
index fab19b6..1afbb34 100644
--- a/services/core/java/com/android/server/statusbar/StatusBarManagerInternal.java
+++ b/services/core/java/com/android/server/statusbar/StatusBarManagerInternal.java
@@ -160,8 +160,10 @@
      * @param displayId The changed display Id.
      * @param rootDisplayAreaId The changed display area Id.
      * @param isImmersiveMode {@code true} if the display area get into immersive mode.
+     * @param windowType The window type of the controlling window.
      */
-    void immersiveModeChanged(int displayId, int rootDisplayAreaId, boolean isImmersiveMode);
+    void immersiveModeChanged(int displayId, int rootDisplayAreaId, boolean isImmersiveMode,
+            int windowType);
 
     /**
      * Show a rotation suggestion that a user may approve to rotate the screen.
diff --git a/services/core/java/com/android/server/statusbar/StatusBarManagerService.java b/services/core/java/com/android/server/statusbar/StatusBarManagerService.java
index da9d016..798c794 100644
--- a/services/core/java/com/android/server/statusbar/StatusBarManagerService.java
+++ b/services/core/java/com/android/server/statusbar/StatusBarManagerService.java
@@ -732,7 +732,7 @@
 
         @Override
         public void immersiveModeChanged(int displayId, int rootDisplayAreaId,
-                boolean isImmersiveMode) {
+                boolean isImmersiveMode, int windowType) {
             if (mBar == null) {
                 return;
             }
@@ -746,7 +746,7 @@
             if (!CLIENT_TRANSIENT) {
                 // Only call from here when the client transient is not enabled.
                 try {
-                    mBar.immersiveModeChanged(rootDisplayAreaId, isImmersiveMode);
+                    mBar.immersiveModeChanged(rootDisplayAreaId, isImmersiveMode, windowType);
                 } catch (RemoteException ex) {
                 }
             }
diff --git a/services/core/java/com/android/server/storage/WatchedVolumeInfo.java b/services/core/java/com/android/server/storage/WatchedVolumeInfo.java
index 94e52cd..d4b20fb 100644
--- a/services/core/java/com/android/server/storage/WatchedVolumeInfo.java
+++ b/services/core/java/com/android/server/storage/WatchedVolumeInfo.java
@@ -68,6 +68,10 @@
         return ImmutableVolumeInfo.fromVolumeInfo(mVolumeInfo);
     }
 
+    public ImmutableVolumeInfo getClonedImmutableVolumeInfo() {
+        return ImmutableVolumeInfo.fromVolumeInfo(mVolumeInfo.clone());
+    }
+
     public StorageVolume buildStorageVolume(Context context, int userId, boolean reportUnmounted) {
         return mVolumeInfo.buildStorageVolume(context, userId, reportUnmounted);
     }
diff --git a/services/core/java/com/android/server/uri/OWNERS b/services/core/java/com/android/server/uri/OWNERS
index cdc07ed..6599db7 100644
--- a/services/core/java/com/android/server/uri/OWNERS
+++ b/services/core/java/com/android/server/uri/OWNERS
@@ -1,3 +1,2 @@
 jsharkey@android.com
-jsharkey@google.com
 varunshah@google.com
diff --git a/services/core/java/com/android/server/vibrator/VendorVibrationSession.java b/services/core/java/com/android/server/vibrator/VendorVibrationSession.java
index bda3d44..621a128 100644
--- a/services/core/java/com/android/server/vibrator/VendorVibrationSession.java
+++ b/services/core/java/com/android/server/vibrator/VendorVibrationSession.java
@@ -51,6 +51,7 @@
 final class VendorVibrationSession extends IVibrationSession.Stub
         implements VibrationSession, CancellationSignal.OnCancelListener, IBinder.DeathRecipient {
     private static final String TAG = "VendorVibrationSession";
+    private static final boolean DEBUG = false;
 
     /** Calls into VibratorManager functionality needed for playing an {@link ExternalVibration}. */
     interface VibratorManagerHooks {
@@ -73,8 +74,8 @@
     private final ICancellationSignal mCancellationSignal = CancellationSignal.createTransport();
     private final int[] mVibratorIds;
     private final long mCreateUptime;
-    private final long mCreateTime; // for debugging
-    private final IVibrationSessionCallback mCallback;
+    private final long mCreateTime;
+    private final VendorCallbackWrapper mCallback;
     private final CallerInfo mCallerInfo;
     private final VibratorManagerHooks mManagerHooks;
     private final DeviceAdapter mDeviceAdapter;
@@ -88,11 +89,11 @@
     @GuardedBy("mLock")
     private boolean mEndedByVendor;
     @GuardedBy("mLock")
-    private long mStartTime; // for debugging
+    private long mStartTime;
     @GuardedBy("mLock")
     private long mEndUptime;
     @GuardedBy("mLock")
-    private long mEndTime; // for debugging
+    private long mEndTime;
     @GuardedBy("mLock")
     private VibrationStepConductor mConductor;
 
@@ -103,7 +104,7 @@
         mCreateTime = System.currentTimeMillis();
         mVibratorIds = deviceAdapter.getAvailableVibratorIds();
         mHandler = handler;
-        mCallback = callback;
+        mCallback = new VendorCallbackWrapper(callback, handler);
         mCallerInfo = callerInfo;
         mManagerHooks = managerHooks;
         mDeviceAdapter = deviceAdapter;
@@ -119,7 +120,9 @@
 
     @Override
     public void finishSession() {
-        Slog.d(TAG, "Session finish requested, ending vibration session...");
+        if (DEBUG) {
+            Slog.d(TAG, "Session finish requested, ending vibration session...");
+        }
         // Do not abort session in HAL, wait for ongoing vibration requests to complete.
         // This might take a while to end the session, but it can be aborted by cancelSession.
         requestEndSession(Status.FINISHED, /* shouldAbort= */ false, /* isVendorRequest= */ true);
@@ -127,7 +130,9 @@
 
     @Override
     public void cancelSession() {
-        Slog.d(TAG, "Session cancel requested, aborting vibration session...");
+        if (DEBUG) {
+            Slog.d(TAG, "Session cancel requested, aborting vibration session...");
+        }
         // Always abort session in HAL while cancelling it.
         // This might be triggered after finishSession was already called.
         requestEndSession(Status.CANCELLED_BY_USER, /* shouldAbort= */ true,
@@ -156,7 +161,7 @@
 
     @Override
     public IBinder getCallerToken() {
-        return mCallback.asBinder();
+        return mCallback.getBinderToken();
     }
 
     @Override
@@ -176,36 +181,30 @@
 
     @Override
     public void onCancel() {
-        Slog.d(TAG, "Session cancellation signal received, aborting vibration session...");
+        if (DEBUG) {
+            Slog.d(TAG, "Session cancellation signal received, aborting vibration session...");
+        }
         requestEndSession(Status.CANCELLED_BY_USER, /* shouldAbort= */ true,
                 /* isVendorRequest= */ true);
     }
 
     @Override
     public void binderDied() {
-        Slog.d(TAG, "Session binder died, aborting vibration session...");
+        if (DEBUG) {
+            Slog.d(TAG, "Session binder died, aborting vibration session...");
+        }
         requestEndSession(Status.CANCELLED_BINDER_DIED, /* shouldAbort= */ true,
                 /* isVendorRequest= */ false);
     }
 
     @Override
     public boolean linkToDeath() {
-        try {
-            mCallback.asBinder().linkToDeath(this, 0);
-        } catch (RemoteException e) {
-            Slog.e(TAG, "Error linking session to token death", e);
-            return false;
-        }
-        return true;
+        return mCallback.linkToDeath(this);
     }
 
     @Override
     public void unlinkToDeath() {
-        try {
-            mCallback.asBinder().unlinkToDeath(this, 0);
-        } catch (NoSuchElementException e) {
-            Slog.wtf(TAG, "Failed to unlink session to token death", e);
-        }
+        mCallback.unlinkToDeath(this);
     }
 
     @Override
@@ -219,26 +218,37 @@
 
     @Override
     public void notifyVibratorCallback(int vibratorId, long vibrationId, long stepId) {
-        Slog.d(TAG, "Vibration callback received for vibration " + vibrationId + " step " + stepId
-                + " on vibrator " + vibratorId + ", ignoring...");
+        if (DEBUG) {
+            Slog.d(TAG, "Vibration callback received for vibration " + vibrationId
+                    + " step " + stepId + " on vibrator " + vibratorId + ", ignoring...");
+        }
     }
 
     @Override
     public void notifySyncedVibratorsCallback(long vibrationId) {
-        Slog.d(TAG, "Synced vibration callback received for vibration " + vibrationId
-                + ", ignoring...");
+        if (DEBUG) {
+            Slog.d(TAG, "Synced vibration callback received for vibration " + vibrationId
+                    + ", ignoring...");
+        }
     }
 
     @Override
     public void notifySessionCallback() {
-        Slog.d(TAG, "Session callback received, ending vibration session...");
+        if (DEBUG) {
+            Slog.d(TAG, "Session callback received, ending vibration session...");
+        }
         synchronized (mLock) {
             // If end was not requested then the HAL has cancelled the session.
-            maybeSetEndRequestLocked(Status.CANCELLED_BY_UNKNOWN_REASON,
+            notifyEndRequestLocked(Status.CANCELLED_BY_UNKNOWN_REASON,
                     /* isVendorRequest= */ false);
             maybeSetStatusToRequestedLocked();
             clearVibrationConductor();
-            mHandler.post(() -> mManagerHooks.onSessionReleased(mSessionId));
+            final Status endStatus = mStatus;
+            mHandler.post(() -> {
+                mManagerHooks.onSessionReleased(mSessionId);
+                // Only trigger client callback after session is released in the manager.
+                mCallback.notifyFinished(endStatus);
+            });
         }
     }
 
@@ -271,7 +281,7 @@
 
     public boolean isEnded() {
         synchronized (mLock) {
-            return mStatus != Status.RUNNING;
+            return mEndTime > 0;
         }
     }
 
@@ -297,19 +307,17 @@
                 // Session already ended, skip start callbacks.
                 isAlreadyEnded = true;
             } else {
+                if (DEBUG) {
+                    Slog.d(TAG, "Session started at the HAL");
+                }
                 mStartTime = System.currentTimeMillis();
-                // Run client callback in separate thread.
-                mHandler.post(() -> {
-                    try {
-                        mCallback.onStarted(this);
-                    } catch (RemoteException e) {
-                        Slog.e(TAG, "Error notifying vendor session started", e);
-                    }
-                });
+                mCallback.notifyStarted(this);
             }
         }
         if (isAlreadyEnded) {
-            Slog.d(TAG, "Session already ended after starting the HAL, aborting...");
+            if (DEBUG) {
+                Slog.d(TAG, "Session already ended after starting the HAL, aborting...");
+            }
             mHandler.post(() -> mManagerHooks.endSession(mSessionId, /* shouldAbort= */ true));
         }
     }
@@ -337,8 +345,10 @@
     public boolean maybeSetVibrationConductor(VibrationStepConductor conductor) {
         synchronized (mLock) {
             if (mConductor != null) {
-                Slog.d(TAG, "Session still dispatching previous vibration, new vibration "
-                        + conductor.getVibration().id + " ignored");
+                if (DEBUG) {
+                    Slog.d(TAG, "Session still dispatching previous vibration, new vibration "
+                            + conductor.getVibration().id + " ignored");
+                }
                 return false;
             }
             mConductor = conductor;
@@ -347,53 +357,45 @@
     }
 
     private void requestEndSession(Status status, boolean shouldAbort, boolean isVendorRequest) {
-        Slog.d(TAG, "Session end request received with status " + status);
-        boolean shouldTriggerSessionHook = false;
+        if (DEBUG) {
+            Slog.d(TAG, "Session end request received with status " + status);
+        }
         synchronized (mLock) {
-            maybeSetEndRequestLocked(status, isVendorRequest);
+            notifyEndRequestLocked(status, isVendorRequest);
             if (!isEnded() && isStarted()) {
                 // Trigger session hook even if it was already triggered, in case a second request
                 // is aborting the ongoing/ending session. This might cause it to end right away.
                 // Wait for HAL callback before setting the end status.
-                shouldTriggerSessionHook = true;
+                if (DEBUG) {
+                    Slog.d(TAG, "Requesting HAL session end with abort=" + shouldAbort);
+                }
+                mHandler.post(() ->  mManagerHooks.endSession(mSessionId, shouldAbort));
             } else {
-                // Session not active in the HAL, set end status right away.
+                // Session not active in the HAL, try to set end status right away.
                 maybeSetStatusToRequestedLocked();
+                // Use status used to end this session, which might be different from requested.
+                mCallback.notifyFinished(mStatus);
             }
         }
-        if (shouldTriggerSessionHook) {
-            Slog.d(TAG, "Requesting HAL session end with abort=" + shouldAbort);
-            mHandler.post(() ->  mManagerHooks.endSession(mSessionId, shouldAbort));
-        }
     }
 
     @GuardedBy("mLock")
-    private void maybeSetEndRequestLocked(Status status, boolean isVendorRequest) {
+    private void notifyEndRequestLocked(Status status, boolean isVendorRequest) {
         if (mEndStatusRequest != null) {
-            // End already requested, keep first requested status and time.
+            // End already requested, keep first requested status.
             return;
         }
-        Slog.d(TAG, "Session end request accepted for status " + status);
+        if (DEBUG) {
+            Slog.d(TAG, "Session end request accepted for status " + status);
+        }
         mEndStatusRequest = status;
         mEndedByVendor = isVendorRequest;
-        mEndTime = System.currentTimeMillis();
-        mEndUptime = SystemClock.uptimeMillis();
+        mCallback.notifyFinishing();
         if (mConductor != null) {
             // Vibration is being dispatched when session end was requested, cancel it.
             mConductor.notifyCancelled(new Vibration.EndInfo(status),
                     /* immediate= */ status != Status.FINISHED);
         }
-        if (isStarted()) {
-            // Only trigger "finishing" callback if session started.
-            // Run client callback in separate thread.
-            mHandler.post(() -> {
-                try {
-                    mCallback.onFinishing();
-                } catch (RemoteException e) {
-                    Slog.e(TAG, "Error notifying vendor session is finishing", e);
-                }
-            });
-        }
     }
 
     @GuardedBy("mLock")
@@ -406,40 +408,123 @@
             // No end status was requested, nothing to set.
             return;
         }
-        Slog.d(TAG, "Session end request applied for status " + mEndStatusRequest);
+        if (DEBUG) {
+            Slog.d(TAG, "Session end request applied for status " + mEndStatusRequest);
+        }
         mStatus = mEndStatusRequest;
-        // Run client callback in separate thread.
-        final Status endStatus = mStatus;
-        mHandler.post(() -> {
-            try {
-                mCallback.onFinished(toSessionStatus(endStatus));
-            } catch (RemoteException e) {
-                Slog.e(TAG, "Error notifying vendor session finished", e);
-            }
-        });
+        mEndTime = System.currentTimeMillis();
+        mEndUptime = SystemClock.uptimeMillis();
     }
 
-    @android.os.vibrator.VendorVibrationSession.Status
-    private static int toSessionStatus(Status status) {
-        // Exhaustive switch to cover all possible internal status.
-        return switch (status) {
-            case FINISHED
-                    -> android.os.vibrator.VendorVibrationSession.STATUS_SUCCESS;
-            case IGNORED_UNSUPPORTED
-                    -> STATUS_UNSUPPORTED;
-            case CANCELLED_BINDER_DIED, CANCELLED_BY_APP_OPS, CANCELLED_BY_USER,
-                 CANCELLED_SUPERSEDED, CANCELLED_BY_FOREGROUND_USER, CANCELLED_BY_SCREEN_OFF,
-                 CANCELLED_BY_SETTINGS_UPDATE, CANCELLED_BY_UNKNOWN_REASON
-                    -> android.os.vibrator.VendorVibrationSession.STATUS_CANCELED;
-            case IGNORED_APP_OPS, IGNORED_BACKGROUND, IGNORED_FOR_EXTERNAL, IGNORED_FOR_ONGOING,
-                 IGNORED_FOR_POWER, IGNORED_FOR_SETTINGS, IGNORED_FOR_HIGHER_IMPORTANCE,
-                 IGNORED_FOR_RINGER_MODE, IGNORED_FROM_VIRTUAL_DEVICE, IGNORED_SUPERSEDED,
-                 IGNORED_MISSING_PERMISSION, IGNORED_ON_WIRELESS_CHARGER
-                    -> android.os.vibrator.VendorVibrationSession.STATUS_IGNORED;
-            case UNKNOWN, IGNORED_ERROR_APP_OPS, IGNORED_ERROR_CANCELLING, IGNORED_ERROR_SCHEDULING,
-                 IGNORED_ERROR_TOKEN, FORWARDED_TO_INPUT_DEVICES, FINISHED_UNEXPECTED, RUNNING
-                    -> android.os.vibrator.VendorVibrationSession.STATUS_UNKNOWN_ERROR;
-        };
+    /**
+     * Wrapper class to handle client callbacks asynchronously.
+     *
+     * <p>This class is also responsible for link/unlink to the client process binder death, and for
+     * making sure the callbacks are only triggered once. The conversion between session status and
+     * the API status code is also defined here.
+     */
+    private static final class VendorCallbackWrapper {
+        private final IVibrationSessionCallback mCallback;
+        private final Handler mHandler;
+
+        private boolean mIsStarted;
+        private boolean mIsFinishing;
+        private boolean mIsFinished;
+
+        VendorCallbackWrapper(@NonNull IVibrationSessionCallback callback,
+                @NonNull Handler handler) {
+            mCallback = callback;
+            mHandler = handler;
+        }
+
+        synchronized IBinder getBinderToken() {
+            return mCallback.asBinder();
+        }
+
+        synchronized boolean linkToDeath(DeathRecipient recipient) {
+            try {
+                mCallback.asBinder().linkToDeath(recipient, 0);
+            } catch (RemoteException e) {
+                Slog.e(TAG, "Error linking session to token death", e);
+                return false;
+            }
+            return true;
+        }
+
+        synchronized void unlinkToDeath(DeathRecipient recipient) {
+            try {
+                mCallback.asBinder().unlinkToDeath(recipient, 0);
+            } catch (NoSuchElementException e) {
+                Slog.wtf(TAG, "Failed to unlink session to token death", e);
+            }
+        }
+
+        synchronized void notifyStarted(IVibrationSession session) {
+            if (mIsStarted) {
+                return;
+            }
+            mIsStarted = true;
+            mHandler.post(() -> {
+                try {
+                    mCallback.onStarted(session);
+                } catch (RemoteException e) {
+                    Slog.e(TAG, "Error notifying vendor session started", e);
+                }
+            });
+        }
+
+        synchronized void notifyFinishing() {
+            if (!mIsStarted || mIsFinishing || mIsFinished) {
+                // Ignore if never started or if already finishing or finished.
+                return;
+            }
+            mIsFinishing = true;
+            mHandler.post(() -> {
+                try {
+                    mCallback.onFinishing();
+                } catch (RemoteException e) {
+                    Slog.e(TAG, "Error notifying vendor session is finishing", e);
+                }
+            });
+        }
+
+        synchronized void notifyFinished(Status status) {
+            if (mIsFinished) {
+                return;
+            }
+            mIsFinished = true;
+            mHandler.post(() -> {
+                try {
+                    mCallback.onFinished(toSessionStatus(status));
+                } catch (RemoteException e) {
+                    Slog.e(TAG, "Error notifying vendor session finished", e);
+                }
+            });
+        }
+
+        @android.os.vibrator.VendorVibrationSession.Status
+        private static int toSessionStatus(Status status) {
+            // Exhaustive switch to cover all possible internal status.
+            return switch (status) {
+                case FINISHED
+                        -> android.os.vibrator.VendorVibrationSession.STATUS_SUCCESS;
+                case IGNORED_UNSUPPORTED
+                        -> STATUS_UNSUPPORTED;
+                case CANCELLED_BINDER_DIED, CANCELLED_BY_APP_OPS, CANCELLED_BY_USER,
+                     CANCELLED_SUPERSEDED, CANCELLED_BY_FOREGROUND_USER, CANCELLED_BY_SCREEN_OFF,
+                     CANCELLED_BY_SETTINGS_UPDATE, CANCELLED_BY_UNKNOWN_REASON
+                        -> android.os.vibrator.VendorVibrationSession.STATUS_CANCELED;
+                case IGNORED_APP_OPS, IGNORED_BACKGROUND, IGNORED_FOR_EXTERNAL, IGNORED_FOR_ONGOING,
+                     IGNORED_FOR_POWER, IGNORED_FOR_SETTINGS, IGNORED_FOR_HIGHER_IMPORTANCE,
+                     IGNORED_FOR_RINGER_MODE, IGNORED_FROM_VIRTUAL_DEVICE, IGNORED_SUPERSEDED,
+                     IGNORED_MISSING_PERMISSION, IGNORED_ON_WIRELESS_CHARGER
+                        -> android.os.vibrator.VendorVibrationSession.STATUS_IGNORED;
+                case UNKNOWN, IGNORED_ERROR_APP_OPS, IGNORED_ERROR_CANCELLING,
+                     IGNORED_ERROR_SCHEDULING, IGNORED_ERROR_TOKEN, FORWARDED_TO_INPUT_DEVICES,
+                     FINISHED_UNEXPECTED, RUNNING
+                        -> android.os.vibrator.VendorVibrationSession.STATUS_UNKNOWN_ERROR;
+            };
+        }
     }
 
     /**
@@ -499,7 +584,7 @@
         @Override
         public void logMetrics(VibratorFrameworkStatsLogger statsLogger) {
             if (mStartTime > 0) {
-                // Only log sessions that have started.
+                // Only log sessions that have started in the HAL.
                 statsLogger.logVibrationVendorSessionStarted(mCallerInfo.uid);
                 statsLogger.logVibrationVendorSessionVibrations(mCallerInfo.uid,
                         mVibrations.size());
diff --git a/services/core/java/com/android/server/vibrator/VibratorManagerService.java b/services/core/java/com/android/server/vibrator/VibratorManagerService.java
index 3f5fc33..ce91e63 100644
--- a/services/core/java/com/android/server/vibrator/VibratorManagerService.java
+++ b/services/core/java/com/android/server/vibrator/VibratorManagerService.java
@@ -1015,9 +1015,12 @@
                 updateAlwaysOnLocked(mAlwaysOnEffects.valueAt(i));
             }
 
-            // TODO(b/372241975): investigate why external vibrations were not handled here before
-            if (mCurrentSession == null
-                    || (mCurrentSession instanceof ExternalVibrationSession)) {
+            if (mCurrentSession == null) {
+                return;
+            }
+
+            if (!Flags.fixExternalVibrationSystemUpdateAware()
+                    && (mCurrentSession instanceof ExternalVibrationSession)) {
                 return;
             }
 
@@ -1025,7 +1028,7 @@
             if (inputDevicesChanged || (ignoreStatus != null)) {
                 if (DEBUG) {
                     Slog.d(TAG, "Canceling vibration because settings changed: "
-                            + (inputDevicesChanged ? "input devices changed" : ignoreStatus));
+                            + (ignoreStatus == null ? "input devices changed" : ignoreStatus));
                 }
                 mCurrentSession.requestEnd(Status.CANCELLED_BY_SETTINGS_UPDATE);
             }
@@ -2334,14 +2337,22 @@
     @GuardedBy("mLock")
     private void maybeClearCurrentAndNextSessionsLocked(
             Predicate<VibrationSession> shouldEndSessionPredicate, Status endStatus) {
-        // TODO(b/372241975): investigate why external vibrations were not handled here before
-        if (!(mNextSession instanceof ExternalVibrationSession)
-                && shouldEndSessionPredicate.test(mNextSession)) {
-            clearNextSessionLocked(endStatus);
-        }
-        if (!(mCurrentSession instanceof ExternalVibrationSession)
-                && shouldEndSessionPredicate.test(mCurrentSession)) {
-            mCurrentSession.requestEnd(endStatus);
+        if (Flags.fixExternalVibrationSystemUpdateAware()) {
+            if (shouldEndSessionPredicate.test(mNextSession)) {
+                clearNextSessionLocked(endStatus);
+            }
+            if (shouldEndSessionPredicate.test(mCurrentSession)) {
+                mCurrentSession.requestEnd(endStatus);
+            }
+        } else {
+            if (!(mNextSession instanceof ExternalVibrationSession)
+                    && shouldEndSessionPredicate.test(mNextSession)) {
+                clearNextSessionLocked(endStatus);
+            }
+            if (!(mCurrentSession instanceof ExternalVibrationSession)
+                    && shouldEndSessionPredicate.test(mCurrentSession)) {
+                mCurrentSession.requestEnd(endStatus);
+            }
         }
     }
 
@@ -2535,6 +2546,9 @@
                             Slog.d(TAG, "Stopping external vibration: " + vib);
                         }
                         mCurrentSession.requestEnd(Status.FINISHED);
+                    } else if (Build.IS_DEBUGGABLE) {
+                        Slog.wtf(TAG, "VibrationSession invalid on external vibration stop."
+                                + " currentSession=" + mCurrentSession + ", received=" + vib);
                     }
                 }
             } finally {
diff --git a/services/core/java/com/android/server/wm/AbsAppSnapshotController.java b/services/core/java/com/android/server/wm/AbsAppSnapshotController.java
index 90c2216..a731bf7 100644
--- a/services/core/java/com/android/server/wm/AbsAppSnapshotController.java
+++ b/services/core/java/com/android/server/wm/AbsAppSnapshotController.java
@@ -334,7 +334,7 @@
         builder.setId(System.currentTimeMillis());
         builder.setContentInsets(contentInsets);
         builder.setLetterboxInsets(letterboxInsets);
-        final boolean isWindowTranslucent = mainWindow.getAttrs().format != PixelFormat.OPAQUE;
+        final boolean isWindowTranslucent = mainWindow.mAttrs.format != PixelFormat.OPAQUE;
         final boolean isShowWallpaper = mainWindow.hasWallpaper();
         int pixelFormat = builder.getPixelFormat();
         if (pixelFormat == PixelFormat.UNKNOWN) {
@@ -432,7 +432,7 @@
         final ActivityManager.TaskDescription taskDescription = getTaskDescription(source);
         final int color = ColorUtils.setAlphaComponent(
                 taskDescription.getBackgroundColor(), 255);
-        final WindowManager.LayoutParams attrs = mainWindow.getAttrs();
+        final WindowManager.LayoutParams attrs = mainWindow.mAttrs;
         final Rect taskBounds = source.getBounds();
         final InsetsState insetsState = mainWindow.getInsetsStateWithVisibilityOverride();
         final Rect systemBarInsets = getSystemBarInsets(mainWindow.getFrame(), insetsState);
diff --git a/services/core/java/com/android/server/wm/ActivityClientController.java b/services/core/java/com/android/server/wm/ActivityClientController.java
index 05794cd..7ce52b1 100644
--- a/services/core/java/com/android/server/wm/ActivityClientController.java
+++ b/services/core/java/com/android/server/wm/ActivityClientController.java
@@ -1515,8 +1515,10 @@
                         r.mOverrideTaskTransition);
                 r.mTransitionController.setOverrideAnimation(
                         TransitionInfo.AnimationOptions.makeCustomAnimOptions(packageName,
-                                enterAnim, exitAnim, backgroundColor, r.mOverrideTaskTransition), r,
-                        null /* startCallback */, null /* finishCallback */);
+                                enterAnim, 0 /* changeResId */, exitAnim,
+                                r.mOverrideTaskTransition),
+                        r, null /* startCallback */, null /* finishCallback */);
+                r.mTransitionController.setOverrideBackgroundColor(backgroundColor);
             }
         }
         Binder.restoreCallingIdentity(origId);
diff --git a/services/core/java/com/android/server/wm/ActivityRecord.java b/services/core/java/com/android/server/wm/ActivityRecord.java
index 7b6d408f..d452d76 100644
--- a/services/core/java/com/android/server/wm/ActivityRecord.java
+++ b/services/core/java/com/android/server/wm/ActivityRecord.java
@@ -344,7 +344,6 @@
 
 import com.android.internal.R;
 import com.android.internal.annotations.GuardedBy;
-import com.android.internal.annotations.KeepForWeakReference;
 import com.android.internal.annotations.VisibleForTesting;
 import com.android.internal.app.ResolverActivity;
 import com.android.internal.content.ReferrerIntent;
@@ -433,9 +432,6 @@
     // next activity.
     private static final int PAUSE_TIMEOUT = 500;
 
-    // Ticks during which we check progress while waiting for an app to launch.
-    private static final int LAUNCH_TICK = 500;
-
     // How long we wait for the activity to tell us it has stopped before
     // giving up.  This is a good amount of time because we really need this
     // from the application in order to get its saved state. Once the stop
@@ -491,7 +487,6 @@
     long lastVisibleTime;         // last time this activity became visible
     long pauseTime;               // last time we started pausing the activity
     long mStoppedTime;            // last time we completely stopped the activity
-    long launchTickTime;          // base time for launch tick messages
     long topResumedStateLossTime; // last time we reported top resumed state loss to an activity
     // Last configuration reported to the activity in the client process.
     private final MergedConfiguration mLastReportedConfiguration;
@@ -858,8 +853,6 @@
 
     private RemoteCallbackList<IScreenCaptureObserver> mCaptureCallbacks;
 
-    // Ensure the field is kept during optimization to preserve downstream weak refs.
-    @KeepForWeakReference
     private final ColorDisplayService.ColorTransformController mColorTransformController =
             (matrix, translation) -> mWmService.mH.post(() -> {
                 synchronized (mWmService.mGlobalLock) {
@@ -940,24 +933,11 @@
                 if (!hasProcess()) {
                     return;
                 }
-                mAtmService.logAppTooSlow(app, pauseTime, "pausing " + ActivityRecord.this);
                 activityPaused(true);
             }
         }
     };
 
-    private final Runnable mLaunchTickRunnable = new Runnable() {
-        @Override
-        public void run() {
-            synchronized (mAtmService.mGlobalLock) {
-                if (continueLaunchTicking()) {
-                    mAtmService.logAppTooSlow(
-                            app, launchTickTime, "launching " + ActivityRecord.this);
-                }
-            }
-        }
-    };
-
     private final Runnable mDestroyTimeoutRunnable = new Runnable() {
         @Override
         public void run() {
@@ -2109,7 +2089,8 @@
         }
         try {
             return mAtmService.mContext.getPackageManager()
-                    .getProperty(PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED, packageName)
+                    .getPropertyAsUser(PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED, packageName,
+                            null /* className */, mUserId)
                     .getBoolean();
         } catch (PackageManager.NameNotFoundException e) {
             // No such property name.
@@ -2345,13 +2326,16 @@
             if (isActivityTypeHome()) {
                 // The snapshot of home is only used once because it won't be updated while screen
                 // is on (see {@link TaskSnapshotController#screenTurningOff}).
-                mWmService.mTaskSnapshotController.removeSnapshotCache(task.mTaskId);
                 final Transition transition = mTransitionController.getCollectingTransition();
                 if (transition != null && (transition.getFlags()
                         & WindowManager.TRANSIT_FLAG_KEYGUARD_GOING_AWAY_NO_ANIMATION) == 0) {
+                    mWmService.mTaskSnapshotController.removeSnapshotCache(task.mTaskId);
                     // Only use snapshot of home as starting window when unlocking directly.
                     return false;
                 }
+                // Add a reference before removing snapshot from cache.
+                snapshot.addReference(TaskSnapshot.REFERENCE_WRITE_TO_PARCEL);
+                mWmService.mTaskSnapshotController.removeSnapshotCache(task.mTaskId);
             }
             return createSnapshot(snapshot, typeParameter);
         }
@@ -2967,8 +2951,9 @@
         }
         try {
             return mAtmService.mContext.getPackageManager()
-                    .getProperty(PROPERTY_ALLOW_UNTRUSTED_ACTIVITY_EMBEDDING_STATE_SHARING,
-                            mActivityComponent)
+                    .getPropertyAsUser(PROPERTY_ALLOW_UNTRUSTED_ACTIVITY_EMBEDDING_STATE_SHARING,
+                            mActivityComponent.getPackageName(),
+                            mActivityComponent.getClassName(), mUserId)
                     .getBoolean();
         } catch (PackageManager.NameNotFoundException e) {
             // No such property name.
@@ -3076,7 +3061,7 @@
         if (win == null) {
             return;
         }
-        isOpaque = isOpaque & !PixelFormat.formatHasAlpha(win.getAttrs().format);
+        isOpaque = isOpaque & !PixelFormat.formatHasAlpha(win.mAttrs.format);
         win.mWinAnimator.setOpaqueLocked(isOpaque);
     }
 
@@ -3168,7 +3153,8 @@
             return true;
         }
         return !AppCompatResizeOverrides.allowRestrictedResizability(
-                wms.mContext.getPackageManager(), appInfo.packageName);
+                wms.mContext.getPackageManager(), appInfo.packageName,
+                UserHandle.getUserId(appInfo.uid));
     }
 
     boolean isResizeable() {
@@ -5089,8 +5075,8 @@
         switch (animationType) {
             case ANIM_CUSTOM:
                 options = AnimationOptions.makeCustomAnimOptions(pendingOptions.getPackageName(),
-                        pendingOptions.getCustomEnterResId(), pendingOptions.getCustomExitResId(),
-                        pendingOptions.getCustomBackgroundColor(),
+                        pendingOptions.getCustomEnterResId(), 0 /* changeResId */,
+                        pendingOptions.getCustomExitResId(),
                         pendingOptions.getOverrideTaskTransition());
                 startCallback = pendingOptions.getAnimationStartedListener();
                 finishCallback = pendingOptions.getAnimationFinishedListener();
@@ -5151,6 +5137,10 @@
             mTransitionController.setOverrideAnimation(options, this, startCallback,
                     finishCallback);
         }
+        final int backgroundColor = pendingOptions.getCustomBackgroundColor();
+        if (backgroundColor != 0) {
+            mTransitionController.setOverrideBackgroundColor(backgroundColor);
+        }
     }
 
     void clearAllDrawn() {
@@ -6015,12 +6005,6 @@
             setVisibility(false);
 
             switch (mState) {
-                case STOPPING:
-                case STOPPED:
-                    // Reset the flag indicating that an app can enter picture-in-picture once the
-                    // activity is hidden
-                    supportsEnterPipOnTaskSwitch = false;
-                    break;
                 case RESUMED:
                 case INITIALIZING:
                 case PAUSING:
@@ -6334,7 +6318,6 @@
         removePauseTimeout();
         removeStopTimeout();
         removeDestroyTimeout();
-        finishLaunchTickingLocked();
     }
 
     void stopIfPossible() {
@@ -6475,44 +6458,6 @@
         }
     }
 
-    void startLaunchTickingLocked() {
-        if (Build.IS_USER) {
-            return;
-        }
-        if (launchTickTime == 0) {
-            launchTickTime = SystemClock.uptimeMillis();
-            continueLaunchTicking();
-        }
-    }
-
-    private boolean continueLaunchTicking() {
-        if (launchTickTime == 0) {
-            return false;
-        }
-
-        final Task rootTask = getRootTask();
-        if (rootTask == null) {
-            return false;
-        }
-
-        rootTask.removeLaunchTickMessages();
-        mAtmService.mH.postDelayed(mLaunchTickRunnable, LAUNCH_TICK);
-        return true;
-    }
-
-    void removeLaunchTickRunnable() {
-        mAtmService.mH.removeCallbacks(mLaunchTickRunnable);
-    }
-
-    void finishLaunchTickingLocked() {
-        launchTickTime = 0;
-        final Task rootTask = getRootTask();
-        if (rootTask == null) {
-            return;
-        }
-        rootTask.removeLaunchTickMessages();
-    }
-
     void onFirstWindowDrawn(WindowState win) {
         firstWindowDrawn = true;
         // stop tracking
@@ -6600,7 +6545,6 @@
             mTaskSupervisor.reportActivityLaunched(false /* timeout */, this,
                     windowsDrawnDelayMs, launchState);
         }
-        finishLaunchTickingLocked();
         if (task != null) {
             setTaskHasBeenVisible();
         }
diff --git a/services/core/java/com/android/server/wm/ActivityStartInterceptor.java b/services/core/java/com/android/server/wm/ActivityStartInterceptor.java
index a318c4b..5cc186c 100644
--- a/services/core/java/com/android/server/wm/ActivityStartInterceptor.java
+++ b/services/core/java/com/android/server/wm/ActivityStartInterceptor.java
@@ -73,7 +73,6 @@
 import com.android.server.LocalServices;
 import com.android.server.am.ActivityManagerService;
 import com.android.server.wm.ActivityInterceptorCallback.ActivityInterceptResult;
-import com.android.window.flags.Flags;
 
 /**
  * A class that contains activity intercepting logic for {@link ActivityStarter#execute()}
@@ -504,43 +503,37 @@
         }
 
         boolean intercepted = false;
-        if (Flags.normalizeHomeIntent()) {
-            if (!ACTION_MAIN.equals(mIntent.getAction()) || (!mIntent.hasCategory(CATEGORY_HOME)
-                    && !mIntent.hasCategory(CATEGORY_SECONDARY_HOME))) {
-                // not a home intent
+        if (!ACTION_MAIN.equals(mIntent.getAction()) || (!mIntent.hasCategory(CATEGORY_HOME)
+                && !mIntent.hasCategory(CATEGORY_SECONDARY_HOME))) {
+            // not a home intent
+            return false;
+        }
+
+        if (mComponentSpecified) {
+            Slog.w(TAG, "Starting home with component specified, uid=" + mCallingUid);
+            if (mService.isCallerRecents(mCallingUid)
+                    || ActivityTaskManagerService.checkPermission(MANAGE_ACTIVITY_TASKS,
+                    mCallingPid, mCallingUid) == PERMISSION_GRANTED) {
+                // Allow home component specified from trusted callers.
                 return false;
             }
 
-            if (mComponentSpecified) {
-                Slog.w(TAG, "Starting home with component specified, uid=" + mCallingUid);
-                if (mService.isCallerRecents(mCallingUid)
-                        || ActivityTaskManagerService.checkPermission(MANAGE_ACTIVITY_TASKS,
-                                mCallingPid, mCallingUid) == PERMISSION_GRANTED) {
-                    // Allow home component specified from trusted callers.
-                    return false;
-                }
-
-                final ComponentName homeComponent = mIntent.getComponent();
-                final Intent homeIntent = mService.getHomeIntent();
-                final ActivityInfo aInfo = mService.mRootWindowContainer.resolveHomeActivity(
-                        mUserId, homeIntent);
-                if (!aInfo.getComponentName().equals(homeComponent)) {
-                    // Do nothing if the intent is not for the default home component.
-                    return false;
-                }
-            }
-
-            if (!ActivityRecord.isHomeIntent(mIntent) || mComponentSpecified) {
-                // This is not a standard home intent, make it so if possible.
-                normalizeHomeIntent();
-                intercepted = true;
-            }
-        } else {
-            if (!ActivityRecord.isHomeIntent(mIntent)) {
+            final ComponentName homeComponent = mIntent.getComponent();
+            final Intent homeIntent = mService.getHomeIntent();
+            final ActivityInfo aInfo = mService.mRootWindowContainer.resolveHomeActivity(
+                    mUserId, homeIntent);
+            if (!aInfo.getComponentName().equals(homeComponent)) {
+                // Do nothing if the intent is not for the default home component.
                 return false;
             }
         }
 
+        if (!ActivityRecord.isHomeIntent(mIntent) || mComponentSpecified) {
+            // This is not a standard home intent, make it so if possible.
+            normalizeHomeIntent();
+            intercepted = true;
+        }
+
         intercepted |= replaceToSecondaryHomeIntentIfNeeded();
         if (intercepted) {
             mCallingPid = mRealCallingPid;
diff --git a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java
index 6f83822..9c96566 100644
--- a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java
+++ b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java
@@ -96,7 +96,6 @@
 import static com.android.server.am.EventLogTags.writeBootProgressEnableScreen;
 import static com.android.server.am.EventLogTags.writeConfigurationChanged;
 import static com.android.server.am.StackTracesDumpHelper.ANR_TRACE_DIR;
-import static com.android.server.am.StackTracesDumpHelper.dumpStackTraces;
 import static com.android.server.wm.ActivityInterceptorCallback.MAINLINE_FIRST_ORDERED_ID;
 import static com.android.server.wm.ActivityInterceptorCallback.MAINLINE_LAST_ORDERED_ID;
 import static com.android.server.wm.ActivityInterceptorCallback.SYSTEM_FIRST_ORDERED_ID;
@@ -199,7 +198,6 @@
 import android.os.Build;
 import android.os.Bundle;
 import android.os.FactoryTest;
-import android.os.FileUtils;
 import android.os.Handler;
 import android.os.IBinder;
 import android.os.IUserManager;
@@ -213,7 +211,6 @@
 import android.os.RemoteCallback;
 import android.os.RemoteException;
 import android.os.ServiceManager;
-import android.os.StrictMode;
 import android.os.SystemClock;
 import android.os.SystemProperties;
 import android.os.Trace;
@@ -227,7 +224,6 @@
 import android.service.voice.VoiceInteractionManagerInternal;
 import android.sysprop.DisplayProperties;
 import android.telecom.TelecomManager;
-import android.text.format.TimeMigrationUtils;
 import android.util.ArrayMap;
 import android.util.ArraySet;
 import android.util.IntArray;
@@ -292,7 +288,6 @@
 import java.io.BufferedReader;
 import java.io.File;
 import java.io.FileDescriptor;
-import java.io.FileOutputStream;
 import java.io.FileReader;
 import java.io.IOException;
 import java.io.PrintWriter;
@@ -310,7 +305,6 @@
 import java.util.Date;
 import java.util.HashSet;
 import java.util.List;
-import java.util.Locale;
 import java.util.Map;
 import java.util.Objects;
 import java.util.Set;
@@ -5790,65 +5784,6 @@
         mLastANRState = sw.toString();
     }
 
-    void logAppTooSlow(WindowProcessController app, long startTime, String msg) {
-        if (true || Build.IS_USER) {
-            return;
-        }
-
-        StrictMode.ThreadPolicy oldPolicy = StrictMode.allowThreadDiskReads();
-        StrictMode.allowThreadDiskWrites();
-        try {
-            File tracesDir = new File("/data/anr");
-            File tracesFile = null;
-            try {
-                tracesFile = File.createTempFile("app_slow", null, tracesDir);
-
-                StringBuilder sb = new StringBuilder();
-                String timeString =
-                        TimeMigrationUtils.formatMillisWithFixedFormat(System.currentTimeMillis());
-                sb.append(timeString);
-                sb.append(": ");
-                TimeUtils.formatDuration(SystemClock.uptimeMillis() - startTime, sb);
-                sb.append(" since ");
-                sb.append(msg);
-                FileOutputStream fos = new FileOutputStream(tracesFile);
-                fos.write(sb.toString().getBytes());
-                if (app == null) {
-                    fos.write("\n*** No application process!".getBytes());
-                }
-                fos.close();
-                FileUtils.setPermissions(tracesFile.getPath(), 0666, -1, -1); // -rw-rw-rw-
-            } catch (IOException e) {
-                Slog.w(TAG, "Unable to prepare slow app traces file: " + tracesFile, e);
-                return;
-            }
-
-            if (app != null && app.getPid() > 0) {
-                ArrayList<Integer> firstPids = new ArrayList<Integer>();
-                firstPids.add(app.getPid());
-                dumpStackTraces(tracesFile.getAbsolutePath(), firstPids, null, null, null, null);
-            }
-
-            File lastTracesFile = null;
-            File curTracesFile = null;
-            for (int i = 9; i >= 0; i--) {
-                String name = String.format(Locale.US, "slow%02d.txt", i);
-                curTracesFile = new File(tracesDir, name);
-                if (curTracesFile.exists()) {
-                    if (lastTracesFile != null) {
-                        curTracesFile.renameTo(lastTracesFile);
-                    } else {
-                        curTracesFile.delete();
-                    }
-                }
-                lastTracesFile = curTracesFile;
-            }
-            tracesFile.renameTo(curTracesFile);
-        } finally {
-            StrictMode.setThreadPolicy(oldPolicy);
-        }
-    }
-
     boolean isAssociatedCompanionApp(int userId, int uid) {
         final Set<Integer> allUids = mCompanionAppUidsMap.get(userId);
         if (allUids == null) {
diff --git a/services/core/java/com/android/server/wm/ActivityTaskSupervisor.java b/services/core/java/com/android/server/wm/ActivityTaskSupervisor.java
index 463a92f..c45f7e8 100644
--- a/services/core/java/com/android/server/wm/ActivityTaskSupervisor.java
+++ b/services/core/java/com/android/server/wm/ActivityTaskSupervisor.java
@@ -840,8 +840,6 @@
         proc.pauseConfigurationDispatch();
 
         try {
-            // schedule launch ticks to collect information about slow apps.
-            r.startLaunchTickingLocked();
             r.lastLaunchTime = SystemClock.uptimeMillis();
             r.setProcess(proc);
 
@@ -1485,7 +1483,6 @@
             if (DEBUG_IDLE) Slog.d(TAG_IDLE, "activityIdleInternal: Callers="
                     + Debug.getCallers(4));
             mHandler.removeMessages(IDLE_TIMEOUT_MSG, r);
-            r.finishLaunchTickingLocked();
             if (fromTimeout) {
                 reportActivityLaunched(fromTimeout, r, INVALID_DELAY, -1 /* launchState */);
             }
@@ -2766,10 +2763,6 @@
                 case TOP_RESUMED_STATE_LOSS_TIMEOUT_MSG: {
                     final ActivityRecord r = (ActivityRecord) msg.obj;
                     Slog.w(TAG, "Activity top resumed state loss timeout for " + r);
-                    if (r.hasProcess()) {
-                        mService.logAppTooSlow(r.app, r.topResumedStateLossTime,
-                                "top state loss for " + r);
-                    }
                     handleTopResumedStateReleased(true /* timeout */);
                 } break;
                 default:
diff --git a/services/core/java/com/android/server/wm/AppCompatCameraOverrides.java b/services/core/java/com/android/server/wm/AppCompatCameraOverrides.java
index 5eed5470..cb82f48 100644
--- a/services/core/java/com/android/server/wm/AppCompatCameraOverrides.java
+++ b/services/core/java/com/android/server/wm/AppCompatCameraOverrides.java
@@ -18,6 +18,7 @@
 
 import static android.content.pm.ActivityInfo.OVERRIDE_CAMERA_COMPAT_DISABLE_FORCE_ROTATION;
 import static android.content.pm.ActivityInfo.OVERRIDE_CAMERA_COMPAT_DISABLE_REFRESH;
+import static android.content.pm.ActivityInfo.OVERRIDE_CAMERA_COMPAT_DISABLE_SIMULATE_REQUESTED_ORIENTATION;
 import static android.content.pm.ActivityInfo.OVERRIDE_CAMERA_COMPAT_ENABLE_FREEFORM_WINDOWING_TREATMENT;
 import static android.content.pm.ActivityInfo.OVERRIDE_CAMERA_COMPAT_ENABLE_REFRESH_VIA_PAUSE;
 import static android.content.pm.ActivityInfo.OVERRIDE_MIN_ASPECT_RATIO_ONLY_FOR_CAMERA;
@@ -183,9 +184,10 @@
 
     private boolean shouldEnableCameraCompatFreeformTreatmentForApp() {
         if (mCameraCompatAllowOrientationTreatmentOptProp != null) {
+            // OptProp is not-null iff the opt-out flag is on.
             return mCameraCompatAllowOrientationTreatmentOptProp
                     .shouldEnableWithOptOutOverrideAndProperty(isChangeEnabled(mActivityRecord,
-                            OVERRIDE_CAMERA_COMPAT_ENABLE_FREEFORM_WINDOWING_TREATMENT));
+                            OVERRIDE_CAMERA_COMPAT_DISABLE_SIMULATE_REQUESTED_ORIENTATION));
         } else {
             return isChangeEnabled(mActivityRecord,
                     OVERRIDE_CAMERA_COMPAT_ENABLE_FREEFORM_WINDOWING_TREATMENT);
diff --git a/services/core/java/com/android/server/wm/AppCompatController.java b/services/core/java/com/android/server/wm/AppCompatController.java
index fc50479..48f08e9 100644
--- a/services/core/java/com/android/server/wm/AppCompatController.java
+++ b/services/core/java/com/android/server/wm/AppCompatController.java
@@ -51,7 +51,7 @@
                         @NonNull ActivityRecord activityRecord) {
         final PackageManager packageManager = wmService.mContext.getPackageManager();
         final OptPropFactory optPropBuilder = new OptPropFactory(packageManager,
-                activityRecord.packageName);
+                activityRecord.packageName, activityRecord.mUserId);
         mDeviceStateQuery = new AppCompatDeviceStateQuery(activityRecord);
         mTransparentPolicy = new TransparentPolicy(activityRecord,
                 wmService.mAppCompatConfiguration);
diff --git a/services/core/java/com/android/server/wm/AppCompatLetterboxPolicy.java b/services/core/java/com/android/server/wm/AppCompatLetterboxPolicy.java
index 57811e2..6873270 100644
--- a/services/core/java/com/android/server/wm/AppCompatLetterboxPolicy.java
+++ b/services/core/java/com/android/server/wm/AppCompatLetterboxPolicy.java
@@ -223,7 +223,7 @@
                         // Check for FLAG_SHOW_WALLPAPER explicitly instead of using
                         // WindowContainer#showWallpaper because the later will return true when
                         // this activity is using blurred wallpaper for letterbox background.
-                        && (mainWindow.getAttrs().flags & FLAG_SHOW_WALLPAPER) == 0;
+                        && (mainWindow.mAttrs.flags & FLAG_SHOW_WALLPAPER) == 0;
 
         mLastShouldShowLetterboxUi = shouldShowLetterboxUi;
 
@@ -334,7 +334,7 @@
         if (w == null) {
             return true;
         }
-        final int type = w.getAttrs().type;
+        final int type = w.mAttrs.type;
         // Allow letterbox to be displayed early for base application or application starting
         // windows even if it is not on the top z order to prevent flickering when the
         // letterboxed window is brought to the top
diff --git a/services/core/java/com/android/server/wm/AppCompatResizeOverrides.java b/services/core/java/com/android/server/wm/AppCompatResizeOverrides.java
index fa53153..1546917 100644
--- a/services/core/java/com/android/server/wm/AppCompatResizeOverrides.java
+++ b/services/core/java/com/android/server/wm/AppCompatResizeOverrides.java
@@ -24,6 +24,7 @@
 import static com.android.server.wm.AppCompatUtils.isChangeEnabled;
 
 import android.annotation.NonNull;
+import android.annotation.UserIdInt;
 import android.content.pm.PackageManager;
 
 import com.android.server.wm.utils.OptPropFactory;
@@ -52,7 +53,8 @@
                 PROPERTY_COMPAT_ALLOW_RESIZEABLE_ACTIVITY_OVERRIDES);
         mAllowRestrictedResizability = AppCompatUtils.asLazy(() -> {
             // Application level.
-            if (allowRestrictedResizability(packageManager, mActivityRecord.packageName)) {
+            if (allowRestrictedResizability(packageManager, mActivityRecord.packageName,
+                    mActivityRecord.mUserId)) {
                 return true;
             }
             // Activity level.
@@ -68,10 +70,11 @@
         });
     }
 
-    static boolean allowRestrictedResizability(PackageManager pm, String packageName) {
+    static boolean allowRestrictedResizability(@NonNull PackageManager pm,
+            @NonNull String packageName, @UserIdInt int userId) {
         try {
-            return pm.getProperty(PROPERTY_COMPAT_ALLOW_RESTRICTED_RESIZABILITY, packageName)
-                    .getBoolean();
+            return pm.getPropertyAsUser(PROPERTY_COMPAT_ALLOW_RESTRICTED_RESIZABILITY, packageName,
+                            null /* className */, userId).getBoolean();
         } catch (PackageManager.NameNotFoundException e) {
             return false;
         }
diff --git a/services/core/java/com/android/server/wm/BackNavigationController.java b/services/core/java/com/android/server/wm/BackNavigationController.java
index d652ea1..e9d9ace 100644
--- a/services/core/java/com/android/server/wm/BackNavigationController.java
+++ b/services/core/java/com/android/server/wm/BackNavigationController.java
@@ -222,7 +222,7 @@
                     }
                 }
             }
-            final boolean canInterruptInView = (window.getAttrs().privateFlags
+            final boolean canInterruptInView = (window.mAttrs.privateFlags
                     & PRIVATE_FLAG_APP_PROGRESS_GENERATION_ALLOWED) != 0;
             infoBuilder.setAppProgressAllowed(canInterruptInView && !transferGestureToEmbedded
                     && callbackInfo.isAnimationCallback());
@@ -1552,7 +1552,7 @@
             }
 
             void createStartingSurface(@Nullable TaskSnapshot snapshot) {
-                if (Flags.deferPredictiveAnimationIfNoSnapshot() && snapshot == null) {
+                if (snapshot == null) {
                     return;
                 }
                 if (mAdaptors[0].mSwitchType == DIALOG_CLOSE) {
diff --git a/services/core/java/com/android/server/wm/BackgroundActivityStartController.java b/services/core/java/com/android/server/wm/BackgroundActivityStartController.java
index 119709e..f51e60c 100644
--- a/services/core/java/com/android/server/wm/BackgroundActivityStartController.java
+++ b/services/core/java/com/android/server/wm/BackgroundActivityStartController.java
@@ -279,16 +279,24 @@
         mSupervisor = supervisor;
     }
 
+    private ActivityTaskManagerService getService() {
+        return mService;
+    }
+
+    private ActivityTaskSupervisor getSupervisor() {
+        return mSupervisor;
+    }
+
     private boolean isHomeApp(int uid, @Nullable String packageName) {
-        if (mService.mHomeProcess != null) {
+        if (getService().mHomeProcess != null) {
             // Fast check
-            return uid == mService.mHomeProcess.mUid;
+            return uid == getService().mHomeProcess.mUid;
         }
         if (packageName == null) {
             return false;
         }
         ComponentName activity =
-                mService.getPackageManagerInternalLocked()
+                getService().getPackageManagerInternalLocked()
                         .getDefaultHomeActivity(UserHandle.getUserId(uid));
         return activity != null && packageName.equals(activity.getPackageName());
     }
@@ -342,7 +350,8 @@
             mAllowBalExemptionForSystemProcess = allowBalExemptionForSystemProcess;
             mOriginatingPendingIntent = originatingPendingIntent;
             mIntent = intent;
-            mRealCallingPackage = mService.getPackageNameIfUnique(realCallingUid, realCallingPid);
+            mRealCallingPackage = getService().getPackageNameIfUnique(realCallingUid,
+                    realCallingPid);
             mIsCallForResult = resultRecord != null;
             mCheckedOptions = checkedOptions;
             @BackgroundActivityStartMode int callerBackgroundActivityStartMode =
@@ -401,13 +410,13 @@
                                 checkedOptions, realCallingUid, mRealCallingPackage);
             }
 
-            mAppSwitchState = mService.getBalAppSwitchesState();
-            mCallingUidProcState = mService.mActiveUids.getUidState(callingUid);
+            mAppSwitchState = getService().getBalAppSwitchesState();
+            mCallingUidProcState = getService().mActiveUids.getUidState(callingUid);
             mIsCallingUidPersistentSystemProcess =
                     mCallingUidProcState <= ActivityManager.PROCESS_STATE_PERSISTENT_UI;
             mCallingUidHasVisibleActivity =
-                    mService.mVisibleActivityProcessTracker.hasVisibleActivity(callingUid);
-            mCallingUidHasNonAppVisibleWindow = mService.mActiveUids.hasNonAppVisibleWindow(
+                    getService().mVisibleActivityProcessTracker.hasVisibleActivity(callingUid);
+            mCallingUidHasNonAppVisibleWindow = getService().mActiveUids.hasNonAppVisibleWindow(
                     callingUid);
             if (realCallingUid == NO_PROCESS_UID) {
                 // no process provided
@@ -422,16 +431,17 @@
                 mRealCallingUidHasNonAppVisibleWindow = mCallingUidHasNonAppVisibleWindow;
                 // In the PendingIntent case callerApp is not passed in, so resolve it ourselves.
                 mRealCallerApp = callerApp == null
-                        ? mService.getProcessController(realCallingPid, realCallingUid)
+                        ? getService().getProcessController(realCallingPid, realCallingUid)
                         : callerApp;
                 mIsRealCallingUidPersistentSystemProcess = mIsCallingUidPersistentSystemProcess;
             } else {
-                mRealCallingUidProcState = mService.mActiveUids.getUidState(realCallingUid);
+                mRealCallingUidProcState = getService().mActiveUids.getUidState(realCallingUid);
                 mRealCallingUidHasVisibleActivity =
-                        mService.mVisibleActivityProcessTracker.hasVisibleActivity(realCallingUid);
+                        getService().mVisibleActivityProcessTracker.hasVisibleActivity(
+                                realCallingUid);
                 mRealCallingUidHasNonAppVisibleWindow =
-                        mService.mActiveUids.hasNonAppVisibleWindow(realCallingUid);
-                mRealCallerApp = mService.getProcessController(realCallingPid, realCallingUid);
+                        getService().mActiveUids.hasNonAppVisibleWindow(realCallingUid);
+                mRealCallerApp = getService().getProcessController(realCallingPid, realCallingUid);
                 mIsRealCallingUidPersistentSystemProcess =
                         mRealCallingUidProcState <= ActivityManager.PROCESS_STATE_PERSISTENT_UI;
             }
@@ -481,7 +491,7 @@
             if (uid == 0) {
                 return "root[debugOnly]";
             }
-            String name = mService.getPackageManagerInternalLocked().getNameForUid(uid);
+            String name = getService().getPackageManagerInternalLocked().getNameForUid(uid);
             if (name == null) {
                 name = "uid=" + uid;
             }
@@ -783,7 +793,7 @@
                     Process.getAppUidForSdkSandboxUid(state.mRealCallingUid);
             // realCallingSdkSandboxUidToAppUid should probably just be used instead (or in addition
             // to realCallingUid when calculating resultForRealCaller below.
-            if (mService.hasActiveVisibleWindow(realCallingSdkSandboxUidToAppUid)) {
+            if (getService().hasActiveVisibleWindow(realCallingSdkSandboxUidToAppUid)) {
                 state.setResultForRealCaller(new BalVerdict(BAL_ALLOW_SDK_SANDBOX,
                         /*background*/ false,
                         "uid in SDK sandbox has visible (non-toast) window"));
@@ -1000,37 +1010,45 @@
      * or {@link #BAL_BLOCK} if the launch should be blocked
      */
     BalVerdict checkBackgroundActivityStartAllowedByCaller(BalState state) {
+        boolean evaluateVisibleOnly = balAdditionalStartModes()
+                && state.mCheckedOptions.getPendingIntentCreatorBackgroundActivityStartMode()
+                == MODE_BACKGROUND_ACTIVITY_START_ALLOW_IF_VISIBLE;
+        if (evaluateVisibleOnly) {
+            return evaluateChain(state, mCheckCallerVisible, mCheckCallerNonAppVisible,
+                    mCheckCallerProcessAllowsForeground);
+        }
         if (state.isPendingIntent()) {
             // PendingIntents should mostly be allowed by the sender (real caller) or a permission
             // the creator of the PendingIntent has. Visibility should be the exceptional case, so
             // test it last (this does not change the result, just the bal code).
-            BalVerdict result = BalVerdict.BLOCK;
-            if (!(balAdditionalStartModes()
-                    && state.mCheckedOptions.getPendingIntentCreatorBackgroundActivityStartMode()
-                    == MODE_BACKGROUND_ACTIVITY_START_ALLOW_IF_VISIBLE)) {
-                result = checkBackgroundActivityStartAllowedByCallerInBackground(state);
-            }
-            if (result == BalVerdict.BLOCK) {
-                result = checkBackgroundActivityStartAllowedByCallerInForeground(state);
-
-            }
-            return result;
-        } else {
-            BalVerdict result = checkBackgroundActivityStartAllowedByCallerInForeground(state);
-            if (result == BalVerdict.BLOCK && !(balAdditionalStartModes()
-                    && state.mCheckedOptions.getPendingIntentCreatorBackgroundActivityStartMode()
-                    == MODE_BACKGROUND_ACTIVITY_START_ALLOW_IF_VISIBLE)) {
-                result = checkBackgroundActivityStartAllowedByCallerInBackground(state);
-            }
-            return result;
+            return evaluateChain(state, mCheckCallerIsAllowlistedUid,
+                    mCheckCallerIsAllowlistedComponent, mCheckCallerHasBackgroundPermission,
+                    mCheckCallerHasSawPermission, mCheckCallerHasBgStartAppOp,
+                    mCheckCallerProcessAllowsBackground, mCheckCallerVisible,
+                    mCheckCallerNonAppVisible, mCheckCallerProcessAllowsForeground);
         }
+        return evaluateChain(state, mCheckCallerVisible, mCheckCallerNonAppVisible,
+                mCheckCallerProcessAllowsForeground, mCheckCallerIsAllowlistedUid,
+                mCheckCallerIsAllowlistedComponent, mCheckCallerHasBackgroundPermission,
+                mCheckCallerHasSawPermission, mCheckCallerHasBgStartAppOp,
+                mCheckCallerProcessAllowsBackground);
     }
 
-    /**
-     * @return A code denoting which BAL rule allows an activity to be started,
-     * or {@link #BAL_BLOCK} if the launch should be blocked
-     */
-    BalVerdict checkBackgroundActivityStartAllowedByCallerInForeground(BalState state) {
+    interface BalExemptionCheck {
+        BalVerdict evaluate(BalState state);
+    }
+
+    private BalVerdict evaluateChain(BalState state, BalExemptionCheck... checks) {
+        for (BalExemptionCheck check : checks) {
+            BalVerdict verdict = check.evaluate(state);
+            if (verdict != BalVerdict.BLOCK) {
+                return verdict;
+            }
+        }
+        return BalVerdict.BLOCK;
+    }
+
+    private final BalExemptionCheck mCheckCallerVisible = state -> {
         // This is used to block background activity launch even if the app is still
         // visible to user after user clicking home button.
 
@@ -1044,21 +1062,19 @@
             return new BalVerdict(BAL_ALLOW_VISIBLE_WINDOW,
                     /*background*/ false, "callingUid has visible window");
         }
+        return BalVerdict.BLOCK;
+    };
+
+    private final BalExemptionCheck mCheckCallerNonAppVisible = state -> {
         if (state.mCallingUidHasNonAppVisibleWindow) {
             return new BalVerdict(BAL_ALLOW_NON_APP_VISIBLE_WINDOW,
                     /*background*/ false, "callingUid has non-app visible window "
-                    + mService.mActiveUids.getNonAppVisibleWindowDetails(state.mCallingUid));
+                    + getService().mActiveUids.getNonAppVisibleWindowDetails(state.mCallingUid));
         }
-        // Don't abort if the callerApp or other processes of that uid are considered to be in the
-        // foreground.
-        return checkProcessAllowsBal(state.mCallerApp, state, BAL_CHECK_FOREGROUND);
-    }
+        return BalVerdict.BLOCK;
+    };
 
-    /**
-     * @return A code denoting which BAL rule allows an activity to be started,
-     * or {@link #BAL_BLOCK} if the launch should be blocked
-     */
-    BalVerdict checkBackgroundActivityStartAllowedByCallerInBackground(BalState state) {
+    private final BalExemptionCheck mCheckCallerIsAllowlistedUid = state -> {
         // don't abort for the most important UIDs
         final int callingAppId = UserHandle.getAppId(state.mCallingUid);
         if (state.mCallingUid == Process.ROOT_UID
@@ -1066,9 +1082,12 @@
                 || callingAppId == Process.NFC_UID) {
             return new BalVerdict(
                     BAL_ALLOW_ALLOWLISTED_UID, /*background*/ false,
-                     "Important callingUid");
+                    "Important callingUid");
         }
+        return BalVerdict.BLOCK;
+    };
 
+    private final BalExemptionCheck mCheckCallerIsAllowlistedComponent = state -> {
         // Always allow home application to start activities.
         if (isHomeApp(state.mCallingUid, state.mCallingPackage)) {
             return new BalVerdict(BAL_ALLOW_ALLOWLISTED_COMPONENT,
@@ -1076,9 +1095,10 @@
                     "Home app");
         }
 
+        final int callingAppId = UserHandle.getAppId(state.mCallingUid);
         // IME should always be allowed to start activity, like IME settings.
         final WindowState imeWindow =
-                mService.mRootWindowContainer.getCurrentInputMethodWindow();
+                getService().mRootWindowContainer.getCurrentInputMethodWindow();
         if (imeWindow != null && callingAppId == imeWindow.mOwnerUid) {
             return new BalVerdict(BAL_ALLOW_ALLOWLISTED_COMPONENT,
                     /*background*/ false,
@@ -1091,71 +1111,88 @@
                     /*background*/ false, "callingUid is persistent system process");
         }
 
+        // don't abort if the caller has the same uid as the recents component
+        if (getSupervisor().mRecentTasks.isCallerRecents(state.mCallingUid)) {
+            return new BalVerdict(BAL_ALLOW_ALLOWLISTED_COMPONENT,
+                    /*background*/ true, "Recents Component");
+        }
+        // don't abort if the callingUid is the device owner
+        if (getService().isDeviceOwner(state.mCallingUid)) {
+            return new BalVerdict(BAL_ALLOW_ALLOWLISTED_COMPONENT,
+                    /*background*/ true, "Device Owner");
+        }
+        // don't abort if the callingUid is a affiliated profile owner
+        if (getService().isAffiliatedProfileOwner(state.mCallingUid)) {
+            return new BalVerdict(BAL_ALLOW_ALLOWLISTED_COMPONENT,
+                    /*background*/ true, "Affiliated Profile Owner");
+        }
+        // don't abort if the callingUid has companion device
+        final int callingUserId = UserHandle.getUserId(state.mCallingUid);
+        if (getService().isAssociatedCompanionApp(callingUserId, state.mCallingUid)) {
+            return new BalVerdict(BAL_ALLOW_ALLOWLISTED_COMPONENT,
+                    /*background*/ true, "Companion App");
+        }
+        return BalVerdict.BLOCK;
+    };
+
+    private final BalExemptionCheck mCheckCallerHasBackgroundPermission = state -> {
         // don't abort if the callingUid has START_ACTIVITIES_FROM_BACKGROUND permission
         if (hasBalPermission(state.mCallingUid, state.mCallingPid)) {
             return new BalVerdict(BAL_ALLOW_PERMISSION,
                     /*background*/ true,
                     "START_ACTIVITIES_FROM_BACKGROUND permission granted");
         }
-        // don't abort if the caller has the same uid as the recents component
-        if (mSupervisor.mRecentTasks.isCallerRecents(state.mCallingUid)) {
-            return new BalVerdict(BAL_ALLOW_ALLOWLISTED_COMPONENT,
-                    /*background*/ true, "Recents Component");
-        }
-        // don't abort if the callingUid is the device owner
-        if (mService.isDeviceOwner(state.mCallingUid)) {
-            return new BalVerdict(BAL_ALLOW_ALLOWLISTED_COMPONENT,
-                    /*background*/ true, "Device Owner");
-        }
-        // don't abort if the callingUid is a affiliated profile owner
-        if (mService.isAffiliatedProfileOwner(state.mCallingUid)) {
-            return new BalVerdict(BAL_ALLOW_ALLOWLISTED_COMPONENT,
-                    /*background*/ true, "Affiliated Profile Owner");
-        }
-        // don't abort if the callingUid has companion device
-        final int callingUserId = UserHandle.getUserId(state.mCallingUid);
-        if (mService.isAssociatedCompanionApp(callingUserId, state.mCallingUid)) {
-            return new BalVerdict(BAL_ALLOW_ALLOWLISTED_COMPONENT,
-                    /*background*/ true, "Companion App");
-        }
+        return BalVerdict.BLOCK;
+    };
+    private final BalExemptionCheck mCheckCallerHasSawPermission = state -> {
         // don't abort if the callingUid has SYSTEM_ALERT_WINDOW permission
-        if (mService.hasSystemAlertWindowPermission(state.mCallingUid, state.mCallingPid,
+        if (getService().hasSystemAlertWindowPermission(state.mCallingUid, state.mCallingPid,
                 state.mCallingPackage)) {
             return new BalVerdict(BAL_ALLOW_SAW_PERMISSION,
                     /*background*/ true, "SYSTEM_ALERT_WINDOW permission is granted");
         }
+        return BalVerdict.BLOCK;
+    };
+    private final BalExemptionCheck mCheckCallerHasBgStartAppOp = state -> {
         // don't abort if the callingUid and callingPackage have the
         // OP_SYSTEM_EXEMPT_FROM_ACTIVITY_BG_START_RESTRICTION appop
-        if (isSystemExemptFlagEnabled() && mService.getAppOpsManager().checkOpNoThrow(
+        if (isSystemExemptFlagEnabled() && getService().getAppOpsManager().checkOpNoThrow(
                 AppOpsManager.OP_SYSTEM_EXEMPT_FROM_ACTIVITY_BG_START_RESTRICTION,
                 state.mCallingUid, state.mCallingPackage) == AppOpsManager.MODE_ALLOWED) {
             return new BalVerdict(BAL_ALLOW_PERMISSION, /*background*/ true,
                     "OP_SYSTEM_EXEMPT_FROM_ACTIVITY_BG_START_RESTRICTION appop is granted");
         }
+        return BalVerdict.BLOCK;
+    };
 
-        // Don't abort if the callerApp or other processes of that uid are allowed in any way.
-        return checkProcessAllowsBal(state.mCallerApp, state, BAL_CHECK_BACKGROUND);
-    }
+
+    // Don't abort if the callerApp or other processes of that uid are considered to be in the
+    // foreground.
+    private final BalExemptionCheck mCheckCallerProcessAllowsForeground =
+            state -> checkProcessAllowsBal(state.mCallerApp, state, BAL_CHECK_FOREGROUND);
+    // Don't abort if the callerApp or other processes of that uid are allowed in any way.
+    private final BalExemptionCheck mCheckCallerProcessAllowsBackground =
+            state -> checkProcessAllowsBal(state.mCallerApp, state, BAL_CHECK_BACKGROUND);
 
     /**
      * @return A code denoting which BAL rule allows an activity to be started,
      * or {@link #BAL_BLOCK} if the launch should be blocked
      */
     BalVerdict checkBackgroundActivityStartAllowedByRealCaller(BalState state) {
-        BalVerdict result = checkBackgroundActivityStartAllowedByRealCallerInForeground(state);
-        if (result == BalVerdict.BLOCK && !(balAdditionalStartModes()
+        boolean evaluateVisibleOnly = balAdditionalStartModes()
                 && state.mCheckedOptions.getPendingIntentBackgroundActivityStartMode()
-                == MODE_BACKGROUND_ACTIVITY_START_ALLOW_IF_VISIBLE)) {
-            result = checkBackgroundActivityStartAllowedByRealCallerInBackground(state);
+                == MODE_BACKGROUND_ACTIVITY_START_ALLOW_IF_VISIBLE;
+        if (evaluateVisibleOnly) {
+            return evaluateChain(state, mCheckRealCallerVisible, mCheckRealCallerNonAppVisible,
+                    mCheckRealCallerProcessAllowsBalForeground);
         }
-        return result;
+        return evaluateChain(state, mCheckRealCallerVisible, mCheckRealCallerNonAppVisible,
+                mCheckRealCallerProcessAllowsBalForeground, mCheckRealCallerBalPermission,
+                mCheckRealCallerSawPermission, mCheckRealCallerAllowlistedUid,
+                mCheckRealCallerAllowlistedComponent, mCheckRealCallerProcessAllowsBalBackground);
     }
 
-    /**
-     * @return A code denoting which BAL rule allows an activity to be started,
-     * or {@link #BAL_BLOCK} if the launch should be blocked
-     */
-    BalVerdict checkBackgroundActivityStartAllowedByRealCallerInForeground(BalState state) {
+    private final BalExemptionCheck mCheckRealCallerVisible = state -> {
         // Normal apps with visible app window will be allowed to start activity if app switching
         // is allowed, or apps like live wallpaper with non app visible window will be allowed.
         // The home app can start apps even if app switches are usually disallowed.
@@ -1166,22 +1203,29 @@
             return new BalVerdict(BAL_ALLOW_VISIBLE_WINDOW,
                     /*background*/ false, "realCallingUid has visible window");
         }
+        return BalVerdict.BLOCK;
+    };
+
+    private final BalExemptionCheck mCheckRealCallerNonAppVisible = state -> {
         if (state.mRealCallingUidHasNonAppVisibleWindow) {
             return new BalVerdict(BAL_ALLOW_NON_APP_VISIBLE_WINDOW,
                     /*background*/ false, "realCallingUid has non-app visible window "
-                    + mService.mActiveUids.getNonAppVisibleWindowDetails(state.mRealCallingUid));
+                    + getService().mActiveUids.getNonAppVisibleWindowDetails(
+                    state.mRealCallingUid));
         }
+        return BalVerdict.BLOCK;
+    };
 
-        // Don't abort if the realCallerApp or other processes of that uid are considered to be in
-        // the foreground.
-        return checkProcessAllowsBal(state.mRealCallerApp, state, BAL_CHECK_FOREGROUND);
-    }
+    // Don't abort if the realCallerApp or other processes of that uid are considered to be in
+    // the foreground.
+    private final BalExemptionCheck mCheckRealCallerProcessAllowsBalForeground =
+            state -> checkProcessAllowsBal(state.mRealCallerApp, state, BAL_CHECK_FOREGROUND);
 
-    /**
-     * @return A code denoting which BAL rule allows an activity to be started,
-     * or {@link #BAL_BLOCK} if the launch should be blocked
-     */
-    BalVerdict checkBackgroundActivityStartAllowedByRealCallerInBackground(BalState state) {
+    // don't abort if the callerApp or other processes of that uid are allowed in any way
+    private final BalExemptionCheck mCheckRealCallerProcessAllowsBalBackground =
+            state -> checkProcessAllowsBal(state.mRealCallerApp, state, BAL_CHECK_BACKGROUND);
+
+    private final BalExemptionCheck mCheckRealCallerBalPermission = state -> {
         boolean allowAlways = state.mCheckedOptions.getPendingIntentBackgroundActivityStartMode()
                 == MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS;
         if (allowAlways
@@ -1190,15 +1234,25 @@
                     /*background*/ false,
                     "realCallingUid has BAL permission.");
         }
+        return BalVerdict.BLOCK;
+    };
 
+    private final BalExemptionCheck mCheckRealCallerSawPermission = state -> {
+        boolean allowAlways = state.mCheckedOptions.getPendingIntentBackgroundActivityStartMode()
+                == MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS;
         // don't abort if the realCallingUid has SYSTEM_ALERT_WINDOW permission
         if (allowAlways
-                && mService.hasSystemAlertWindowPermission(state.mRealCallingUid,
+                && getService().hasSystemAlertWindowPermission(state.mRealCallingUid,
                 state.mRealCallingPid, state.mRealCallingPackage)) {
             return new BalVerdict(BAL_ALLOW_SAW_PERMISSION,
                     /*background*/ true, "SYSTEM_ALERT_WINDOW permission is granted");
         }
+        return BalVerdict.BLOCK;
+    };
 
+    private final BalExemptionCheck mCheckRealCallerAllowlistedUid = state -> {
+        boolean allowAlways = state.mCheckedOptions.getPendingIntentBackgroundActivityStartMode()
+                == MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS;
         // if the realCallingUid is a persistent system process, abort if the IntentSender
         // wasn't allowed to start an activity
         if ((allowAlways || state.mAllowBalExemptionForSystemProcess)
@@ -1208,17 +1262,19 @@
                     "realCallingUid is persistent system process AND intent "
                             + "sender forced to allow.");
         }
+        return BalVerdict.BLOCK;
+    };
+
+    private final BalExemptionCheck mCheckRealCallerAllowlistedComponent = state -> {
         // don't abort if the realCallingUid is an associated companion app
-        if (mService.isAssociatedCompanionApp(
+        if (getService().isAssociatedCompanionApp(
                 UserHandle.getUserId(state.mRealCallingUid), state.mRealCallingUid)) {
             return new BalVerdict(BAL_ALLOW_ALLOWLISTED_COMPONENT,
                     /*background*/ false,
                     "realCallingUid is a companion app.");
         }
-
-        // don't abort if the callerApp or other processes of that uid are allowed in any way
-        return checkProcessAllowsBal(state.mRealCallerApp, state, BAL_CHECK_BACKGROUND);
-    }
+        return BalVerdict.BLOCK;
+    };
 
     @VisibleForTesting boolean hasBalPermission(int uid, int pid) {
         return ActivityTaskManagerService.checkPermission(START_ACTIVITIES_FROM_BACKGROUND,
@@ -1245,7 +1301,7 @@
         } else {
             // only if that one wasn't allowed, check the other ones
             final ArraySet<WindowProcessController> uidProcesses =
-                    mService.mProcessMap.getProcesses(app.mUid);
+                    getService().mProcessMap.getProcesses(app.mUid);
             if (uidProcesses != null) {
                 for (int i = uidProcesses.size() - 1; i >= 0; i--) {
                     final WindowProcessController proc = uidProcesses.valueAt(i);
@@ -1416,7 +1472,7 @@
         if (ActivitySecurityModelFeatureFlags.shouldShowToast(callingUid)) {
             String toastText = ActivitySecurityModelFeatureFlags.DOC_LINK
                     + (enforceBlock ? " blocked " : " would block ")
-                    + getApplicationLabel(mService.mContext.getPackageManager(),
+                    + getApplicationLabel(getService().mContext.getPackageManager(),
                     launchedFromPackageName);
             showToast(toastText);
 
@@ -1438,7 +1494,7 @@
     }
 
     @VisibleForTesting void showToast(String toastText) {
-        UiThread.getHandler().post(() -> Toast.makeText(mService.mContext,
+        UiThread.getHandler().post(() -> Toast.makeText(getService().mContext,
                 toastText, Toast.LENGTH_LONG).show());
     }
 
@@ -1515,7 +1571,7 @@
             return;
         }
 
-        String packageName =  mService.mContext.getPackageManager().getNameForUid(callingUid);
+        String packageName =  getService().mContext.getPackageManager().getNameForUid(callingUid);
         BalState state = new BalState(callingUid, callingPid, packageName, INVALID_UID,
                 INVALID_PID, null, null, false, null, null, ActivityOptions.makeBasic());
         @BalCode int balCode = checkBackgroundActivityStartAllowedByCaller(state).mCode;
@@ -1576,7 +1632,7 @@
         boolean restrictActivitySwitch = ActivitySecurityModelFeatureFlags
                 .shouldRestrictActivitySwitch(callingUid) && bas.mTopActivityOptedIn;
 
-        PackageManager pm = mService.mContext.getPackageManager();
+        PackageManager pm = getService().mContext.getPackageManager();
         String callingPackage = pm.getNameForUid(callingUid);
         final CharSequence callingLabel;
         if (callingPackage == null) {
@@ -1737,7 +1793,7 @@
             return bas.optedIn(ar);
         }
 
-        PackageManager pm = mService.mContext.getPackageManager();
+        PackageManager pm = getService().mContext.getPackageManager();
         ApplicationInfo applicationInfo;
 
         final int sourceUserId = UserHandle.getUserId(sourceUid);
@@ -1794,7 +1850,7 @@
 
         if (sourceRecord == null) {
             joiner.add(prefix + "Source Package: " + targetRecord.launchedFromPackage);
-            String realCallingPackage = mService.mContext.getPackageManager().getNameForUid(
+            String realCallingPackage = getService().mContext.getPackageManager().getNameForUid(
                     realCallingUid);
             joiner.add(prefix + "Real Calling Uid Package: " + realCallingPackage);
         } else {
@@ -1829,7 +1885,7 @@
         joiner.add(prefix + "BalCode: " + balCodeToString(balCode));
         joiner.add(prefix + "Allowed By Grace Period: " + allowedByGracePeriod);
         joiner.add(prefix + "LastResumedActivity: "
-                       + recordToString.apply(mService.mLastResumedActivity));
+                       + recordToString.apply(getService().mLastResumedActivity));
         joiner.add(prefix + "System opted into enforcement: " + asmOptSystemIntoEnforcement());
 
         if (mTopFinishedActivity != null) {
@@ -1902,7 +1958,7 @@
     }
 
     private BalVerdict statsLog(BalVerdict finalVerdict, BalState state) {
-        if (finalVerdict.blocks() && mService.isActivityStartsLoggingEnabled()) {
+        if (finalVerdict.blocks() && getService().isActivityStartsLoggingEnabled()) {
             // log aborted activity start to TRON
             mSupervisor
                     .getActivityMetricsLogger()
@@ -2138,7 +2194,7 @@
             return -1;
         }
         try {
-            PackageManager pm = mService.mContext.getPackageManager();
+            PackageManager pm = getService().mContext.getPackageManager();
             return pm.getTargetSdkVersion(packageName);
         } catch (Exception e) {
             return -1;
@@ -2159,8 +2215,8 @@
             this.mLaunchCount = entry == null || !ar.isUid(entry.mUid) ? 1 : entry.mLaunchCount + 1;
             this.mDebugInfo = getDebugStringForActivityRecord(ar);
 
-            mService.mH.postDelayed(() -> {
-                synchronized (mService.mGlobalLock) {
+            getService().mH.postDelayed(() -> {
+                synchronized (getService().mGlobalLock) {
                     if (mTaskIdToFinishedActivity.get(taskId) == this) {
                         mTaskIdToFinishedActivity.remove(taskId);
                     }
diff --git a/services/core/java/com/android/server/wm/ContentRecorder.java b/services/core/java/com/android/server/wm/ContentRecorder.java
index d6ae651..c26acec 100644
--- a/services/core/java/com/android/server/wm/ContentRecorder.java
+++ b/services/core/java/com/android/server/wm/ContentRecorder.java
@@ -490,7 +490,7 @@
                     return null;
                 }
                 final Task taskToRecord = wc.asTask();
-                if (taskToRecord == null) {
+                if (taskToRecord == null || !taskToRecord.isAttached()) {
                     handleStartRecordingFailed();
                     ProtoLog.v(WM_DEBUG_CONTENT_RECORDING,
                             "Content Recording: Unable to retrieve task to start recording for "
diff --git a/services/core/java/com/android/server/wm/DesktopModeHelper.java b/services/core/java/com/android/server/wm/DesktopModeHelper.java
index c2255d8..dc42b32 100644
--- a/services/core/java/com/android/server/wm/DesktopModeHelper.java
+++ b/services/core/java/com/android/server/wm/DesktopModeHelper.java
@@ -79,7 +79,7 @@
     }
 
     @VisibleForTesting
-    static boolean isDeviceEligibleForDesktopMode(@NonNull Context context) {
+    public static boolean isDeviceEligibleForDesktopMode(@NonNull Context context) {
         if (!shouldEnforceDeviceRestrictions()) {
             return true;
         }
diff --git a/services/core/java/com/android/server/wm/DesktopModeLaunchParamsModifier.java b/services/core/java/com/android/server/wm/DesktopModeLaunchParamsModifier.java
index b6f74a0..a4eeb68 100644
--- a/services/core/java/com/android/server/wm/DesktopModeLaunchParamsModifier.java
+++ b/services/core/java/com/android/server/wm/DesktopModeLaunchParamsModifier.java
@@ -16,6 +16,10 @@
 
 package com.android.server.wm;
 
+import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM;
+import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN;
+import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED;
+
 import static com.android.server.wm.ActivityTaskManagerDebugConfig.TAG_ATM;
 import static com.android.server.wm.ActivityTaskManagerDebugConfig.TAG_WITH_CLASS_NAME;
 import static com.android.server.wm.DesktopModeHelper.canEnterDesktopMode;
@@ -23,10 +27,13 @@
 import android.annotation.NonNull;
 import android.annotation.Nullable;
 import android.app.ActivityOptions;
+import android.app.WindowConfiguration;
 import android.content.Context;
 import android.content.pm.ActivityInfo;
 import android.util.Slog;
+import android.window.DesktopModeFlags;
 
+import com.android.internal.annotations.VisibleForTesting;
 import com.android.server.wm.LaunchParamsController.LaunchParamsModifier;
 /**
  * The class that defines default launch params for tasks in desktop mode
@@ -74,6 +81,13 @@
             appendLog("task null, skipping");
             return RESULT_SKIP;
         }
+
+        if (DesktopModeFlags.DISABLE_DESKTOP_LAUNCH_PARAMS_OUTSIDE_DESKTOP_BUG_FIX.isTrue()
+                && !isEnteringDesktopMode(task, options, currentParams)) {
+            appendLog("not entering desktop mode, skipping");
+            return RESULT_SKIP;
+        }
+
         if (com.android.window.flags.Flags.fixLayoutExistingTask()
                 && task.getCreatedByOrganizerTask() != null) {
             appendLog("has created-by-organizer-task, skipping");
@@ -122,6 +136,62 @@
         return RESULT_CONTINUE;
     }
 
+    /**
+     * Returns true if a task is entering desktop mode, due to its windowing mode being freeform or
+     * if there exists other freeform tasks on the display.
+     */
+    @VisibleForTesting
+    boolean isEnteringDesktopMode(
+            @NonNull Task task,
+            @Nullable ActivityOptions options,
+            @NonNull LaunchParamsController.LaunchParams currentParams) {
+        //  As freeform tasks cannot exist outside of desktop mode, it is safe to assume if
+        //  freeform tasks are visible we are in desktop mode and as a result any launching
+        //  activity will also enter desktop mode. On this same relationship, we can also assume
+        //  if there are not visible freeform tasks but a freeform activity is now launching, it
+        //  will force the device into desktop mode.
+        return (task.getDisplayContent().getTopMostVisibleFreeformActivity() != null
+                    && checkSourceWindowModesCompatible(task, options, currentParams))
+                || isRequestingFreeformWindowMode(task, options, currentParams);
+    }
+
+    private boolean isRequestingFreeformWindowMode(
+            @NonNull Task task,
+            @Nullable ActivityOptions options,
+            @NonNull LaunchParamsController.LaunchParams currentParams) {
+        return task.inFreeformWindowingMode()
+                || (options != null && options.getLaunchWindowingMode() == WINDOWING_MODE_FREEFORM)
+                || (currentParams.hasWindowingMode()
+                && currentParams.mWindowingMode == WINDOWING_MODE_FREEFORM);
+    }
+
+    /**
+     * Returns true is all possible source window modes are compatible with desktop mode.
+     */
+    private boolean checkSourceWindowModesCompatible(
+            @NonNull Task task,
+            @Nullable ActivityOptions options,
+            @NonNull LaunchParamsController.LaunchParams currentParams) {
+        return isCompatibleDesktopWindowingMode(task.getWindowingMode())
+                && (options == null
+                    || isCompatibleDesktopWindowingMode(options.getLaunchWindowingMode()))
+                && isCompatibleDesktopWindowingMode(currentParams.mWindowingMode);
+    }
+
+    /**
+     * Returns true is the requesting window mode is one that can lead to the activity entering
+     * desktop.
+     */
+    private boolean isCompatibleDesktopWindowingMode(
+            @WindowConfiguration.WindowingMode int windowingMode) {
+        return switch (windowingMode) {
+            case WINDOWING_MODE_UNDEFINED,
+                 WINDOWING_MODE_FULLSCREEN,
+                 WINDOWING_MODE_FREEFORM -> true;
+            default -> false;
+        };
+    }
+
     private void initLogBuilder(Task task, ActivityRecord activity) {
         if (DEBUG) {
             mLogBuilder = new StringBuilder(
diff --git a/services/core/java/com/android/server/wm/DimmerAnimationHelper.java b/services/core/java/com/android/server/wm/DimmerAnimationHelper.java
index 1d447dd..5041ded 100644
--- a/services/core/java/com/android/server/wm/DimmerAnimationHelper.java
+++ b/services/core/java/com/android/server/wm/DimmerAnimationHelper.java
@@ -208,6 +208,8 @@
                         setCurrentAlphaBlur(dim, finishTransaction);
                         if (targetAlpha == 0f && !dim.isDimming()) {
                             dim.remove(finishTransaction);
+                            // Ensure the finishTransaction is applied if pending
+                            dim.mHostContainer.scheduleAnimation();
                         }
                         mLocalAnimationAdapter = null;
                         mAlphaAnimationSpec = null;
diff --git a/services/core/java/com/android/server/wm/DisplayContent.java b/services/core/java/com/android/server/wm/DisplayContent.java
index 214a3a1..64c19ff 100644
--- a/services/core/java/com/android/server/wm/DisplayContent.java
+++ b/services/core/java/com/android/server/wm/DisplayContent.java
@@ -46,6 +46,7 @@
 import static android.view.Display.FLAG_SHOULD_SHOW_SYSTEM_DECORATIONS;
 import static android.view.Display.INVALID_DISPLAY;
 import static android.view.Display.STATE_UNKNOWN;
+import static android.view.Display.TYPE_EXTERNAL;
 import static android.view.Display.isSuspendedState;
 import static android.view.InsetsSource.ID_IME;
 import static android.view.Surface.ROTATION_0;
@@ -155,6 +156,8 @@
 import static com.android.server.wm.utils.DisplayInfoOverrides.copyDisplayInfoFields;
 import static com.android.server.wm.utils.RegionUtils.forEachRectReverse;
 import static com.android.server.wm.utils.RegionUtils.rectListToRegion;
+import static com.android.window.flags.Flags.enablePersistingDensityScaleForConnectedDisplays;
+import static com.android.window.flags.Flags.enablePresentationForConnectedDisplays;
 
 import android.annotation.IntDef;
 import android.annotation.NonNull;
@@ -426,6 +429,12 @@
      * @see WindowManagerService#setForcedDisplayDensityForUser(int, int, int)
      */
     int mBaseDisplayDensity = 0;
+
+    /**
+     * Ratio between overridden display density for current user and the initial display density,
+     * used only for external displays.
+     */
+    float mExternalDisplayForcedDensityRatio = 0.0f;
     boolean mIsDensityForced = false;
 
     /**
@@ -3065,6 +3074,17 @@
                 mDisplayPolicy.physicalDisplayChanged();
             }
 
+            // Real display metrics changed, so we should also update initial values.
+            mInitialDisplayWidth = newWidth;
+            mInitialDisplayHeight = newHeight;
+            mInitialDisplayDensity = newDensity;
+            mInitialPhysicalXDpi = newXDpi;
+            mInitialPhysicalYDpi = newYDpi;
+            mInitialDisplayCutout = newCutout;
+            mInitialRoundedCorners = newRoundedCorners;
+            mInitialDisplayShape = newDisplayShape;
+            mCurrentUniqueDisplayId = newUniqueId;
+
             // If there is an override set for base values - use it, otherwise use new values.
             updateBaseDisplayMetrics(mIsSizeForced ? mBaseDisplayWidth : newWidth,
                     mIsSizeForced ? mBaseDisplayHeight : newHeight,
@@ -3081,16 +3101,6 @@
                 mWmService.mDisplayWindowSettings.applyRotationSettingsToDisplayLocked(this);
             }
 
-            // Real display metrics changed, so we should also update initial values.
-            mInitialDisplayWidth = newWidth;
-            mInitialDisplayHeight = newHeight;
-            mInitialDisplayDensity = newDensity;
-            mInitialPhysicalXDpi = newXDpi;
-            mInitialPhysicalYDpi = newYDpi;
-            mInitialDisplayCutout = newCutout;
-            mInitialRoundedCorners = newRoundedCorners;
-            mInitialDisplayShape = newDisplayShape;
-            mCurrentUniqueDisplayId = newUniqueId;
             reconfigureDisplayLocked();
 
             if (physicalDisplayChanged) {
@@ -3143,6 +3153,12 @@
                         + mBaseDisplayHeight + " on display:" + getDisplayId());
             }
         }
+        // Update the base density if there is a forced density ratio.
+        if (enablePersistingDensityScaleForConnectedDisplays()
+                && mIsDensityForced && mExternalDisplayForcedDensityRatio != 0.0f) {
+            mBaseDisplayDensity = (int)
+                    (mInitialDisplayDensity * mExternalDisplayForcedDensityRatio + 0.5);
+        }
         if (mDisplayReady && !mDisplayPolicy.shouldKeepCurrentDecorInsets()) {
             mDisplayPolicy.mDecorInsets.invalidate();
         }
@@ -3172,6 +3188,14 @@
         if (density == getInitialDisplayDensity()) {
             density = 0;
         }
+        // Save the new density ratio to settings for external displays.
+        if (enablePersistingDensityScaleForConnectedDisplays()
+                && mDisplayInfo.type == TYPE_EXTERNAL) {
+            mExternalDisplayForcedDensityRatio = (float)
+                    mBaseDisplayDensity / getInitialDisplayDensity();
+            mWmService.mDisplayWindowSettings.setForcedDensityRatio(getDisplayInfo(),
+                    mExternalDisplayForcedDensityRatio);
+        }
         mWmService.mDisplayWindowSettings.setForcedDensity(getDisplayInfo(), density, userId);
     }
 
@@ -3271,7 +3295,12 @@
             return false;
         }
 
-        // TODO(b/391965805): Remove this after introducing FLAG_ALLOW_SYSTEM_DECORATIONS_CHANGE.
+        // TODO(b/391965805): Remove this after introducing FLAG_ALLOW_CONTENT_MODE_SWITCH.
+        if ((mDisplay.getFlags() & Display.FLAG_REAR) != 0) {
+            return false;
+        }
+
+        // TODO(b/391965805): Remove this after introducing FLAG_ALLOW_CONTENT_MODE_SWITCH.
         // Virtual displays cannot add or remove system decorations during their lifecycle.
         if (mDisplay.getType() == Display.TYPE_VIRTUAL) {
             return false;
@@ -3645,6 +3674,11 @@
 
         pw.println();
         super.dump(pw, prefix, dumpAll);
+        pw.print(prefix);
+        if (mHasSetIgnoreOrientationRequest) {
+            pw.print("mHasSetIgnoreOrientationRequest=true ");
+        }
+        pw.print("ignoreOrientationRequest="); pw.println(getIgnoreOrientationRequest());
         pw.print(prefix); pw.print("mLayoutSeq="); pw.println(mLayoutSeq);
 
         pw.print("  mCurrentFocus="); pw.println(mCurrentFocus);
@@ -3807,13 +3841,18 @@
 
     /**
      * Looking for the focused window on this display if the top focused display hasn't been
-     * found yet (topFocusedDisplayId is INVALID_DISPLAY) or per-display focused was allowed.
+     * found yet (topFocusedDisplayId is INVALID_DISPLAY), per-display focused was allowed, or
+     * the display is presenting. The last one is needed to update system bar visibility in response
+     * to presentation visibility because per-display focus is needed to change system bar
+     * visibility, but the display shouldn't get global focus when a presentation gets shown.
      *
      * @param topFocusedDisplayId Id of the top focused display.
      * @return The focused window or null if there isn't any or no need to seek.
      */
     WindowState findFocusedWindowIfNeeded(int topFocusedDisplayId) {
-        return (hasOwnFocus() || topFocusedDisplayId == INVALID_DISPLAY)
+        return (hasOwnFocus() || topFocusedDisplayId == INVALID_DISPLAY
+                || (enablePresentationForConnectedDisplays()
+                && mWmService.mPresentationController.isPresentationVisible(mDisplayId)))
                     ? findFocusedWindow() : null;
     }
 
@@ -5811,7 +5850,7 @@
         // For each window, we only take the rects that fall within its touchable region.
         forAllWindows(w -> {
             if (!w.canReceiveTouchInput() || !w.isVisible()
-                    || (w.getAttrs().flags & FLAG_NOT_TOUCHABLE) != 0
+                    || (w.mAttrs.flags & FLAG_NOT_TOUCHABLE) != 0
                     || unhandled.isEmpty()) {
                 return;
             }
@@ -5901,7 +5940,7 @@
         if (win.mWmService.mConstants.mSystemGestureExclusionLogDebounceTimeoutMillis <= 0) {
             return false;
         }
-        final WindowManager.LayoutParams attrs = win.getAttrs();
+        final WindowManager.LayoutParams attrs = win.mAttrs;
         final int type = attrs.type;
         return type != TYPE_WALLPAPER
                 && type != TYPE_APPLICATION_STARTING
@@ -6904,6 +6943,8 @@
         /** The actual requested visible inset types for this display */
         private @InsetsType int mRequestedVisibleTypes = WindowInsets.Type.defaultVisible();
 
+        private @InsetsType int mAnimatingTypes = 0;
+
         /** The component name of the top focused window on this display */
         private ComponentName mTopFocusedComponentName = null;
 
@@ -7041,6 +7082,18 @@
             }
             return 0;
         }
+
+        @Override
+        public @InsetsType int getAnimatingTypes() {
+            return mAnimatingTypes;
+        }
+
+        @Override
+        public void setAnimatingTypes(@InsetsType int animatingTypes) {
+            if (mAnimatingTypes != animatingTypes) {
+                mAnimatingTypes = animatingTypes;
+            }
+        }
     }
 
     MagnificationSpec getMagnificationSpec() {
diff --git a/services/core/java/com/android/server/wm/DisplayPolicy.java b/services/core/java/com/android/server/wm/DisplayPolicy.java
index 7aa2101..ec5b503f 100644
--- a/services/core/java/com/android/server/wm/DisplayPolicy.java
+++ b/services/core/java/com/android/server/wm/DisplayPolicy.java
@@ -1875,18 +1875,40 @@
     }
 
     void notifyDisplayAddSystemDecorations() {
-        mHandler.post(() -> {
+        if (enableDisplayContentModeManagement()) {
             final int displayId = getDisplayId();
-            StatusBarManagerInternal statusBar = getStatusBarManagerInternal();
-            if (statusBar != null) {
-                statusBar.onDisplayAddSystemDecorations(displayId);
-            }
-            final WallpaperManagerInternal wpMgr = LocalServices
-                    .getService(WallpaperManagerInternal.class);
-            if (wpMgr != null) {
-                wpMgr.onDisplayAddSystemDecorations(displayId);
-            }
-        });
+            final boolean isSystemDecorationsSupported =
+                    mDisplayContent.isSystemDecorationsSupported();
+            final boolean isHomeSupported = mDisplayContent.isHomeSupported();
+            mHandler.post(() -> {
+                if (isSystemDecorationsSupported) {
+                    StatusBarManagerInternal statusBar = getStatusBarManagerInternal();
+                    if (statusBar != null) {
+                        statusBar.onDisplayAddSystemDecorations(displayId);
+                    }
+                }
+                if (isHomeSupported) {
+                    final WallpaperManagerInternal wpMgr =
+                            LocalServices.getService(WallpaperManagerInternal.class);
+                    if (wpMgr != null) {
+                        wpMgr.onDisplayAddSystemDecorations(displayId);
+                    }
+                }
+            });
+        } else {
+            mHandler.post(() -> {
+                final int displayId = getDisplayId();
+                StatusBarManagerInternal statusBar = getStatusBarManagerInternal();
+                if (statusBar != null) {
+                    statusBar.onDisplayAddSystemDecorations(displayId);
+                }
+                final WallpaperManagerInternal wpMgr = LocalServices
+                        .getService(WallpaperManagerInternal.class);
+                if (wpMgr != null) {
+                    wpMgr.onDisplayAddSystemDecorations(displayId);
+                }
+            });
+        }
     }
 
     void notifyDisplayRemoveSystemDecorations() {
@@ -2365,7 +2387,7 @@
 
         // Immersive mode confirmation should never affect the system bar visibility, otherwise
         // it will unhide the navigation bar and hide itself.
-        if ((winCandidate.getAttrs().privateFlags
+        if ((winCandidate.mAttrs.privateFlags
                 & PRIVATE_FLAG_IMMERSIVE_CONFIRMATION_WINDOW) != 0) {
             if (mNotificationShade != null && mNotificationShade.canReceiveKeys()) {
                 // Let notification shade control the system bar visibility.
@@ -2542,7 +2564,7 @@
             final int rootDisplayAreaId = root == null ? FEATURE_UNDEFINED : root.mFeatureId;
             // TODO(b/277290737): Move this to the client side, instead of using a proxy.
             callStatusBarSafely(statusBar -> statusBar.immersiveModeChanged(getDisplayId(),
-                        rootDisplayAreaId, isImmersiveMode));
+                        rootDisplayAreaId, isImmersiveMode, win.getWindowType()));
         }
 
         // Show transient bars for panic if needed.
@@ -2633,9 +2655,9 @@
         }
 
         final boolean drawsSystemBars =
-                (win.getAttrs().flags & FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS) != 0;
+                (win.mAttrs.flags & FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS) != 0;
         final boolean forceDrawsSystemBars =
-                (win.getAttrs().privateFlags & PRIVATE_FLAG_FORCE_DRAW_BAR_BACKGROUNDS) != 0;
+                (win.mAttrs.privateFlags & PRIVATE_FLAG_FORCE_DRAW_BAR_BACKGROUNDS) != 0;
 
         return forceDrawsSystemBars || drawsSystemBars;
     }
diff --git a/services/core/java/com/android/server/wm/DisplayRotation.java b/services/core/java/com/android/server/wm/DisplayRotation.java
index 786161c..9cf792d 100644
--- a/services/core/java/com/android/server/wm/DisplayRotation.java
+++ b/services/core/java/com/android/server/wm/DisplayRotation.java
@@ -25,6 +25,7 @@
 import static android.view.WindowManager.LayoutParams.ROTATION_ANIMATION_SEAMLESS;
 
 import static com.android.internal.protolog.WmProtoLogGroups.WM_DEBUG_ORIENTATION;
+import static com.android.internal.protolog.WmProtoLogGroups.WM_DEBUG_ORIENTATION_CHANGE;
 import static com.android.server.policy.WindowManagerPolicy.WindowManagerFuncs.LID_OPEN;
 import static com.android.server.wm.DisplayRotationProto.FIXED_TO_USER_ROTATION_MODE;
 import static com.android.server.wm.DisplayRotationProto.FROZEN_TO_USER_ROTATION;
@@ -587,11 +588,6 @@
                 ActivityInfo.screenOrientationToString(lastOrientation), lastOrientation,
                 Surface.rotationToString(oldRotation), oldRotation);
 
-        ProtoLog.v(WM_DEBUG_ORIENTATION,
-                "Display id=%d selected orientation %s (%d), got rotation %s (%d)", displayId,
-                ActivityInfo.screenOrientationToString(lastOrientation), lastOrientation,
-                Surface.rotationToString(rotation), rotation);
-
         if (oldRotation == rotation) {
             // No change.
             return false;
@@ -601,9 +597,11 @@
             mDisplayRotationCoordinator.onDefaultDisplayRotationChanged(rotation);
         }
 
-        ProtoLog.v(WM_DEBUG_ORIENTATION,
-                "Display id=%d rotation changed to %d from %d, lastOrientation=%d",
-                        displayId, rotation, oldRotation, lastOrientation);
+        ProtoLog.i(WM_DEBUG_ORIENTATION_CHANGE, "Display id=%d rotation changed to %d from %d,"
+                        + " lastOrientation=%d userRotationMode=%d userRotation=%d"
+                        + " lastSensorRotation=%d",
+                displayId, rotation, oldRotation, lastOrientation, mUserRotationMode, mUserRotation,
+                mLastSensorRotation);
 
         mRotation = rotation;
 
@@ -730,7 +728,7 @@
         // We only enable seamless rotation if the top window has requested it and is in the
         // fullscreen opaque state. Seamless rotation requires freezing various Surface states and
         // won't work well with animations, so we disable it in the animation case for now.
-        if (w.getAttrs().rotationAnimation != ROTATION_ANIMATION_SEAMLESS || w.inMultiWindowMode()
+        if (w.mAttrs.rotationAnimation != ROTATION_ANIMATION_SEAMLESS || w.inMultiWindowMode()
                 || w.isAnimatingLw()) {
             return false;
         }
diff --git a/services/core/java/com/android/server/wm/DisplayWindowSettings.java b/services/core/java/com/android/server/wm/DisplayWindowSettings.java
index 1173875..c6892e9 100644
--- a/services/core/java/com/android/server/wm/DisplayWindowSettings.java
+++ b/services/core/java/com/android/server/wm/DisplayWindowSettings.java
@@ -23,11 +23,10 @@
 import static android.view.WindowManager.REMOVE_CONTENT_MODE_MOVE_TO_PRIMARY;
 import static android.view.WindowManager.REMOVE_CONTENT_MODE_UNDEFINED;
 
+import static com.android.server.display.feature.flags.Flags.enableDisplayContentModeManagement;
 import static com.android.server.wm.DisplayContent.FORCE_SCALING_MODE_AUTO;
 import static com.android.server.wm.DisplayContent.FORCE_SCALING_MODE_DISABLED;
 
-import static com.android.server.display.feature.flags.Flags.enableDisplayContentModeManagement;
-
 import android.annotation.NonNull;
 import android.annotation.Nullable;
 import android.app.WindowConfiguration;
@@ -100,6 +99,13 @@
         mSettingsProvider.updateOverrideSettings(info, overrideSettings);
     }
 
+    void setForcedDensityRatio(@NonNull DisplayInfo info, float ratio) {
+        final SettingsProvider.SettingsEntry overrideSettings =
+                mSettingsProvider.getOverrideSettings(info);
+        overrideSettings.mForcedDensityRatio = ratio;
+        mSettingsProvider.updateOverrideSettings(info, overrideSettings);
+    }
+
     void setForcedScalingMode(@NonNull DisplayContent displayContent, @ForceScalingMode int mode) {
         if (displayContent.isDefaultDisplay) {
             Settings.Global.putInt(mService.mContext.getContentResolver(),
@@ -367,6 +373,7 @@
                 mFixedToUserRotation);
 
         final boolean hasDensityOverride = settings.mForcedDensity != 0;
+        final boolean hasDensityOverrideRatio = settings.mForcedDensityRatio != 0.0f;
         final boolean hasSizeOverride = settings.mForcedWidth != 0 && settings.mForcedHeight != 0;
         dc.mIsDensityForced = hasDensityOverride;
         dc.mIsSizeForced = hasSizeOverride;
@@ -378,6 +385,10 @@
         final int height = hasSizeOverride ? settings.mForcedHeight : dc.mInitialDisplayHeight;
         final int density = hasDensityOverride ? settings.mForcedDensity
                 : dc.getInitialDisplayDensity();
+        if (hasDensityOverrideRatio) {
+            dc.mExternalDisplayForcedDensityRatio = settings.mForcedDensityRatio;
+        }
+
         dc.updateBaseDisplayMetrics(width, height, density, dc.mBaseDisplayPhysicalXDpi,
                 dc.mBaseDisplayPhysicalYDpi);
 
@@ -496,6 +507,13 @@
             int mForcedWidth;
             int mForcedHeight;
             int mForcedDensity;
+            /**
+             * The ratio of the forced density to the initial density of the display. This is only
+             * saved for external displays, and used to make sure ratio between forced density and
+             * initial density persist when a resolution change happens. Ratio is updated when
+             * mForcedDensity is changed.
+             */
+            float mForcedDensityRatio;
             @Nullable
             @ForceScalingMode
             Integer mForcedScalingMode;
@@ -561,6 +579,10 @@
                     mForcedDensity = other.mForcedDensity;
                     changed = true;
                 }
+                if (other.mForcedDensityRatio != mForcedDensityRatio) {
+                    mForcedDensityRatio = other.mForcedDensityRatio;
+                    changed = true;
+                }
                 if (!Objects.equals(other.mForcedScalingMode, mForcedScalingMode)) {
                     mForcedScalingMode = other.mForcedScalingMode;
                     changed = true;
@@ -649,6 +671,11 @@
                     mForcedDensity = delta.mForcedDensity;
                     changed = true;
                 }
+                if (delta.mForcedDensityRatio != 0
+                        && delta.mForcedDensityRatio != mForcedDensityRatio) {
+                    mForcedDensityRatio = delta.mForcedDensityRatio;
+                    changed = true;
+                }
                 if (delta.mForcedScalingMode != null
                         && !Objects.equals(delta.mForcedScalingMode, mForcedScalingMode)) {
                     mForcedScalingMode = delta.mForcedScalingMode;
@@ -713,6 +740,7 @@
                         && mUserRotationMode == null
                         && mUserRotation == null
                         && mForcedWidth == 0 && mForcedHeight == 0 && mForcedDensity == 0
+                        && mForcedDensityRatio == 0.0f
                         && mForcedScalingMode == null
                         && mRemoveContentMode == REMOVE_CONTENT_MODE_UNDEFINED
                         && mShouldShowWithInsecureKeyguard == null
@@ -736,6 +764,7 @@
                         && mForcedHeight == that.mForcedHeight
                         && mForcedDensity == that.mForcedDensity
                         && mRemoveContentMode == that.mRemoveContentMode
+                        && mForcedDensityRatio == that.mForcedDensityRatio
                         && Objects.equals(mUserRotationMode, that.mUserRotationMode)
                         && Objects.equals(mUserRotation, that.mUserRotation)
                         && Objects.equals(mForcedScalingMode, that.mForcedScalingMode)
@@ -755,10 +784,11 @@
             @Override
             public int hashCode() {
                 return Objects.hash(mWindowingMode, mUserRotationMode, mUserRotation, mForcedWidth,
-                        mForcedHeight, mForcedDensity, mForcedScalingMode, mRemoveContentMode,
-                        mShouldShowWithInsecureKeyguard, mShouldShowSystemDecors, mIsHomeSupported,
-                        mImePolicy, mFixedToUserRotation, mIgnoreOrientationRequest,
-                        mIgnoreDisplayCutout, mDontMoveToTop, mIgnoreActivitySizeRestrictions);
+                        mForcedHeight, mForcedDensity, mForcedDensityRatio, mForcedScalingMode,
+                        mRemoveContentMode, mShouldShowWithInsecureKeyguard,
+                        mShouldShowSystemDecors, mIsHomeSupported, mImePolicy, mFixedToUserRotation,
+                        mIgnoreOrientationRequest, mIgnoreDisplayCutout, mDontMoveToTop,
+                        mIgnoreActivitySizeRestrictions);
             }
 
             @Override
@@ -770,6 +800,7 @@
                         + ", mForcedWidth=" + mForcedWidth
                         + ", mForcedHeight=" + mForcedHeight
                         + ", mForcedDensity=" + mForcedDensity
+                        + ", mForcedDensityRatio=" + mForcedDensityRatio
                         + ", mForcedScalingMode=" + mForcedScalingMode
                         + ", mRemoveContentMode=" + mRemoveContentMode
                         + ", mShouldShowWithInsecureKeyguard=" + mShouldShowWithInsecureKeyguard
diff --git a/services/core/java/com/android/server/wm/DisplayWindowSettingsProvider.java b/services/core/java/com/android/server/wm/DisplayWindowSettingsProvider.java
index 7135c3b..e7a1fdd 100644
--- a/services/core/java/com/android/server/wm/DisplayWindowSettingsProvider.java
+++ b/services/core/java/com/android/server/wm/DisplayWindowSettingsProvider.java
@@ -511,6 +511,8 @@
                     0 /* defaultValue */);
             settingsEntry.mForcedDensity = getIntAttribute(parser, "forcedDensity",
                     0 /* defaultValue */);
+            settingsEntry.mForcedDensityRatio = parser.getAttributeFloat(null, "forcedDensityRatio",
+                    0.0f /* defaultValue */);
             settingsEntry.mForcedScalingMode = getIntegerAttribute(parser, "forcedScalingMode",
                     null /* defaultValue */);
             settingsEntry.mRemoveContentMode = getIntAttribute(parser, "removeContentMode",
@@ -599,6 +601,10 @@
                 if (settingsEntry.mForcedDensity != 0) {
                     out.attributeInt(null, "forcedDensity", settingsEntry.mForcedDensity);
                 }
+                if (settingsEntry.mForcedDensityRatio != 0.0f) {
+                    out.attributeFloat(null, "forcedDensityRatio",
+                            settingsEntry.mForcedDensityRatio);
+                }
                 if (settingsEntry.mForcedScalingMode != null) {
                     out.attributeInt(null, "forcedScalingMode",
                             settingsEntry.mForcedScalingMode);
diff --git a/services/core/java/com/android/server/wm/InsetsControlTarget.java b/services/core/java/com/android/server/wm/InsetsControlTarget.java
index cee4967..6462a37 100644
--- a/services/core/java/com/android/server/wm/InsetsControlTarget.java
+++ b/services/core/java/com/android/server/wm/InsetsControlTarget.java
@@ -97,6 +97,20 @@
             @NonNull ImeTracker.Token statsToken) {
     }
 
+    /**
+     * @return {@link WindowInsets.Type.InsetsType}s which are currently animating (showing or
+     * hiding).
+     */
+    default @InsetsType int getAnimatingTypes() {
+        return 0;
+    }
+
+    /**
+     * @param animatingTypes the {@link InsetsType}s, that are currently animating
+     */
+    default void setAnimatingTypes(@InsetsType int animatingTypes) {
+    }
+
     /** Returns {@code target.getWindow()}, or null if {@code target} is {@code null}. */
     static WindowState asWindowOrNull(InsetsControlTarget target) {
         return target != null ? target.getWindow() : null;
diff --git a/services/core/java/com/android/server/wm/InsetsPolicy.java b/services/core/java/com/android/server/wm/InsetsPolicy.java
index 5c6695f..2872214 100644
--- a/services/core/java/com/android/server/wm/InsetsPolicy.java
+++ b/services/core/java/com/android/server/wm/InsetsPolicy.java
@@ -272,7 +272,7 @@
      */
     InsetsState enforceInsetsPolicyForTarget(WindowState target, InsetsState state) {
         final InsetsState originalState = state;
-        final WindowManager.LayoutParams attrs = target.getAttrs();
+        final WindowManager.LayoutParams attrs = target.mAttrs;
 
         // The caller should not receive the visible insets provided by itself.
         if (attrs.type == TYPE_INPUT_METHOD) {
@@ -673,8 +673,8 @@
         // If necessary, auto can control application windows when
         // config_remoteInsetsControllerControlsSystemBars is set to true. This is useful in cases
         // where we want to dictate system bar inset state for applications.
-        return win.getAttrs().type >= WindowManager.LayoutParams.FIRST_APPLICATION_WINDOW
-                && win.getAttrs().type <= WindowManager.LayoutParams.LAST_APPLICATION_WINDOW;
+        return win.mAttrs.type >= WindowManager.LayoutParams.FIRST_APPLICATION_WINDOW
+                && win.mAttrs.type <= WindowManager.LayoutParams.LAST_APPLICATION_WINDOW;
     }
 
     private void dispatchTransientSystemBarsVisibilityChanged(
@@ -790,8 +790,6 @@
         private final Handler mHandler;
         private final String mName;
 
-        private boolean mInsetsAnimationRunning;
-
         Host(Handler handler, String name) {
             mHandler = handler;
             mName = name;
@@ -901,10 +899,5 @@
         public IBinder getWindowToken() {
             return null;
         }
-
-        @Override
-        public void notifyAnimationRunningStateChanged(boolean running) {
-            mInsetsAnimationRunning = running;
-        }
     }
 }
diff --git a/services/core/java/com/android/server/wm/InsetsStateController.java b/services/core/java/com/android/server/wm/InsetsStateController.java
index 164abab..5e0395f 100644
--- a/services/core/java/com/android/server/wm/InsetsStateController.java
+++ b/services/core/java/com/android/server/wm/InsetsStateController.java
@@ -225,13 +225,16 @@
         for (int i = mProviders.size() - 1; i >= 0; i--) {
             final InsetsSourceProvider provider = mProviders.valueAt(i);
             final @InsetsType int type = provider.getSource().getType();
+            final boolean isImeProvider = type == WindowInsets.Type.ime();
             if ((type & changedTypes) != 0) {
-                final boolean isImeProvider = type == WindowInsets.Type.ime();
                 changed |= provider.updateClientVisibility(
-                                caller, isImeProvider ? statsToken : null)
+                        caller, isImeProvider ? statsToken : null)
                         // Fake control target cannot change the client visibility, but it should
                         // change the insets with its newly requested visibility.
                         || (caller == provider.getFakeControlTarget());
+            } else if (isImeProvider && android.view.inputmethod.Flags.refactorInsetsController()) {
+                ImeTracker.forLogging().onCancelled(statsToken,
+                        ImeTracker.PHASE_WM_SET_REMOTE_TARGET_IME_VISIBILITY);
             }
         }
         if (changed) {
diff --git a/services/core/java/com/android/server/wm/OWNERS b/services/core/java/com/android/server/wm/OWNERS
index dede767..243a532 100644
--- a/services/core/java/com/android/server/wm/OWNERS
+++ b/services/core/java/com/android/server/wm/OWNERS
@@ -3,7 +3,6 @@
 ogunwale@google.com
 jjaggi@google.com
 racarr@google.com
-chaviw@google.com
 vishnun@google.com
 akulian@google.com
 roosa@google.com
diff --git a/services/core/java/com/android/server/wm/PresentationController.java b/services/core/java/com/android/server/wm/PresentationController.java
index b3cff9c..acc658b 100644
--- a/services/core/java/com/android/server/wm/PresentationController.java
+++ b/services/core/java/com/android/server/wm/PresentationController.java
@@ -16,10 +16,17 @@
 
 package com.android.server.wm;
 
+import static android.view.WindowManager.LayoutParams.TYPE_PRESENTATION;
+import static android.view.WindowManager.LayoutParams.TYPE_PRIVATE_PRESENTATION;
+
+import static com.android.internal.protolog.WmProtoLogGroups.WM_ERROR;
 import static com.android.window.flags.Flags.enablePresentationForConnectedDisplays;
 
 import android.annotation.NonNull;
-import android.util.IntArray;
+import android.annotation.Nullable;
+import android.hardware.display.DisplayManager;
+import android.util.SparseArray;
+import android.view.WindowManager.LayoutParams.WindowType;
 
 import com.android.internal.protolog.ProtoLog;
 import com.android.internal.protolog.WmProtoLogGroups;
@@ -27,15 +34,125 @@
 /**
  * Manages presentation windows.
  */
-class PresentationController {
+class PresentationController implements DisplayManager.DisplayListener {
 
-    // TODO(b/395475549): Add support for display add/remove, and activity move across displays.
-    private final IntArray mPresentingDisplayIds = new IntArray();
+    private static class Presentation {
+        @NonNull final WindowState mWin;
+        @NonNull final WindowContainerListener mPresentationListener;
+        // This is the task which started this presentation. This shouldn't be null in most cases
+        // because the intended usage of the Presentation API is that an activity that started a
+        // presentation should control the UI and lifecycle of the presentation window.
+        // However, the API doesn't necessarily requires a host activity to exist (e.g. a background
+        // service can launch a presentation), so this can be null.
+        @Nullable final Task mHostTask;
+        @Nullable final WindowContainerListener mHostTaskListener;
 
-    PresentationController() {}
+        Presentation(@NonNull WindowState win,
+                @NonNull WindowContainerListener presentationListener,
+                @Nullable Task hostTask,
+                @Nullable WindowContainerListener hostTaskListener) {
+            mWin = win;
+            mPresentationListener = presentationListener;
+            mHostTask = hostTask;
+            mHostTaskListener = hostTaskListener;
+        }
 
-    private boolean isPresenting(int displayId) {
-        return mPresentingDisplayIds.contains(displayId);
+        @Override
+        public String toString() {
+            return "{win: " + mWin.getName() + ", display: " + mWin.getDisplayId()
+                    + ", hostTask: " + (mHostTask != null ? mHostTask.getName() : null) + "}";
+        }
+    }
+
+    private final SparseArray<Presentation> mPresentations = new SparseArray();
+
+    @Nullable
+    private Presentation getPresentation(@Nullable WindowState win) {
+        if (win == null) return null;
+        for (int i = 0; i < mPresentations.size(); i++) {
+            final Presentation presentation = mPresentations.valueAt(i);
+            if (win == presentation.mWin) return presentation;
+        }
+        return null;
+    }
+
+    private boolean hasPresentationWindow(int displayId) {
+        return mPresentations.contains(displayId);
+    }
+
+    boolean isPresentationVisible(int displayId) {
+        final Presentation presentation = mPresentations.get(displayId);
+        return presentation != null && presentation.mWin.mToken.isVisibleRequested();
+    }
+
+    boolean canPresent(@NonNull WindowState win, @NonNull DisplayContent displayContent) {
+        return canPresent(win, displayContent, win.mAttrs.type, win.getUid());
+    }
+
+    /**
+     * Checks if a presentation window can be shown on the given display.
+     * If the given |win| is empty, a new presentation window is being created.
+     * If the given |win| is not empty, the window already exists as presentation, and we're
+     * revalidate if the |win| is still qualified to be shown.
+     */
+    boolean canPresent(@Nullable WindowState win, @NonNull DisplayContent displayContent,
+            @WindowType int type, int uid) {
+        if (type == TYPE_PRIVATE_PRESENTATION) {
+            // Private presentations can only be created on private displays.
+            return displayContent.isPrivate();
+        }
+
+        if (type != TYPE_PRESENTATION) {
+            return false;
+        }
+
+        if (!enablePresentationForConnectedDisplays()) {
+            return displayContent.getDisplay().isPublicPresentation();
+        }
+
+        boolean allDisplaysArePresenting = true;
+        for (int i = 0; i < displayContent.mWmService.mRoot.mChildren.size(); i++) {
+            final DisplayContent dc = displayContent.mWmService.mRoot.mChildren.get(i);
+            if (displayContent.mDisplayId != dc.mDisplayId
+                    && !mPresentations.contains(dc.mDisplayId)) {
+                allDisplaysArePresenting = false;
+                break;
+            }
+        }
+        if (allDisplaysArePresenting) {
+            // All displays can't present simultaneously.
+            return false;
+        }
+
+        final int displayId = displayContent.mDisplayId;
+        if (hasPresentationWindow(displayId)
+                && win != null && win != mPresentations.get(displayId).mWin) {
+            // A display can't have multiple presentations.
+            return false;
+        }
+
+        Task hostTask = null;
+        final Presentation presentation = getPresentation(win);
+        if (presentation != null) {
+            hostTask = presentation.mHostTask;
+        } else if (win == null) {
+            final Task globallyFocusedTask =
+                    displayContent.mWmService.mRoot.getTopDisplayFocusedRootTask();
+            if (globallyFocusedTask != null && uid == globallyFocusedTask.effectiveUid) {
+                hostTask = globallyFocusedTask;
+            }
+        }
+        if (hostTask != null && displayId == hostTask.getDisplayId()) {
+            // A presentation can't cover its own host task.
+            return false;
+        }
+        if (hostTask == null && !displayContent.getDisplay().isPublicPresentation()) {
+            // A globally focused host task on a different display is needed to show a
+            // presentation on a non-presenting display.
+            return false;
+        }
+
+        return true;
     }
 
     boolean shouldOccludeActivities(int displayId) {
@@ -45,32 +162,87 @@
         // be shown on them.
         // TODO(b/390481621): Disallow a presentation from covering its controlling activity so that
         // the presentation won't stop its controlling activity.
-        return enablePresentationForConnectedDisplays() && isPresenting(displayId);
+        return enablePresentationForConnectedDisplays() && isPresentationVisible(displayId);
     }
 
-    void onPresentationAdded(@NonNull WindowState win) {
+    void onPresentationAdded(@NonNull WindowState win, int uid) {
         final int displayId = win.getDisplayId();
-        if (isPresenting(displayId)) {
-            return;
-        }
         ProtoLog.v(WmProtoLogGroups.WM_DEBUG_PRESENTATION, "Presentation added to display %d: %s",
-                win.getDisplayId(), win);
-        mPresentingDisplayIds.add(win.getDisplayId());
+                displayId, win);
         win.mWmService.mDisplayManagerInternal.onPresentation(displayId, /*isShown=*/ true);
+
+        final WindowContainerListener presentationWindowListener = new WindowContainerListener() {
+            @Override
+            public void onRemoved() {
+                if (!hasPresentationWindow(displayId)) {
+                    ProtoLog.e(WM_ERROR, "Failed to remove presentation on"
+                            + "non-presenting display %d: %s", displayId, win);
+                    return;
+                }
+                final Presentation presentation = mPresentations.get(displayId);
+                win.mToken.unregisterWindowContainerListener(presentation.mPresentationListener);
+                if (presentation.mHostTask != null) {
+                    presentation.mHostTask.unregisterWindowContainerListener(
+                            presentation.mHostTaskListener);
+                }
+                mPresentations.remove(displayId);
+                win.mWmService.mDisplayManagerInternal.onPresentation(displayId, false /*isShown*/);
+            }
+        };
+        win.mToken.registerWindowContainerListener(presentationWindowListener);
+
+        Task hostTask = null;
+        if (enablePresentationForConnectedDisplays()) {
+            final Task globallyFocusedTask =
+                    win.mWmService.mRoot.getTopDisplayFocusedRootTask();
+            if (globallyFocusedTask != null && uid == globallyFocusedTask.effectiveUid) {
+                hostTask = globallyFocusedTask;
+            }
+        }
+        WindowContainerListener hostTaskListener = null;
+        if (hostTask != null) {
+            hostTaskListener = new WindowContainerListener() {
+                public void onDisplayChanged(DisplayContent dc) {
+                    final Presentation presentation = mPresentations.get(dc.getDisplayId());
+                    if (presentation != null && !canPresent(presentation.mWin, dc)) {
+                        removePresentation(dc.mDisplayId, "host task moved to display "
+                                + dc.getDisplayId());
+                    }
+                }
+
+                public void onRemoved() {
+                    removePresentation(win.getDisplayId(), "host task removed");
+                }
+            };
+            hostTask.registerWindowContainerListener(hostTaskListener);
+        }
+
+        mPresentations.put(displayId, new Presentation(win, presentationWindowListener, hostTask,
+                hostTaskListener));
     }
 
-    void onPresentationRemoved(@NonNull WindowState win) {
-        final int displayId = win.getDisplayId();
-        if (!isPresenting(displayId)) {
-            return;
+    void removePresentation(int displayId, @NonNull String reason) {
+        final Presentation presentation = mPresentations.get(displayId);
+        if (enablePresentationForConnectedDisplays() && presentation != null) {
+            ProtoLog.v(WmProtoLogGroups.WM_DEBUG_PRESENTATION, "Removing Presentation %s for "
+                    + "reason %s", mPresentations.get(displayId), reason);
+            final WindowState win = presentation.mWin;
+            win.mWmService.mAtmService.mH.post(() -> {
+                synchronized (win.mWmService.mGlobalLock) {
+                    win.removeIfPossible();
+                }
+            });
         }
-        ProtoLog.v(WmProtoLogGroups.WM_DEBUG_PRESENTATION,
-                "Presentation removed from display %d: %s", win.getDisplayId(), win);
-        // TODO(b/393945496): Make sure that there's one presentation at most per display.
-        final int displayIdIndex = mPresentingDisplayIds.indexOf(displayId);
-        if (displayIdIndex != -1) {
-            mPresentingDisplayIds.remove(displayIdIndex);
-        }
-        win.mWmService.mDisplayManagerInternal.onPresentation(displayId, /*isShown=*/ false);
     }
+
+    @Override
+    public void onDisplayAdded(int displayId) {}
+
+    @Override
+    public void onDisplayRemoved(int displayId) {
+        removePresentation(displayId, "display removed " + displayId);
+    }
+
+    @Override
+    public void onDisplayChanged(int displayId) {}
 }
diff --git a/services/core/java/com/android/server/wm/RootWindowContainer.java b/services/core/java/com/android/server/wm/RootWindowContainer.java
index f309372..e864ecf 100644
--- a/services/core/java/com/android/server/wm/RootWindowContainer.java
+++ b/services/core/java/com/android/server/wm/RootWindowContainer.java
@@ -2794,13 +2794,7 @@
         }
 
         startHomeOnDisplay(mCurrentUser, reason, displayContent.getDisplayId());
-        if (enableDisplayContentModeManagement()) {
-            if (displayContent.isSystemDecorationsSupported()) {
-                displayContent.getDisplayPolicy().notifyDisplayAddSystemDecorations();
-            }
-        } else {
-            displayContent.getDisplayPolicy().notifyDisplayAddSystemDecorations();
-        }
+        displayContent.getDisplayPolicy().notifyDisplayAddSystemDecorations();
     }
 
     @Override
diff --git a/services/core/java/com/android/server/wm/Session.java b/services/core/java/com/android/server/wm/Session.java
index 8d198b2..3ed16db 100644
--- a/services/core/java/com/android/server/wm/Session.java
+++ b/services/core/java/com/android/server/wm/Session.java
@@ -737,6 +737,17 @@
         }
     }
 
+    @Override
+    public void updateAnimatingTypes(IWindow window, @InsetsType int animatingTypes) {
+        synchronized (mService.mGlobalLock) {
+            final WindowState win = mService.windowForClientLocked(this, window,
+                    false /* throwOnError */);
+            if (win != null) {
+                win.setAnimatingTypes(animatingTypes);
+            }
+        }
+    }
+
     void onWindowAdded(WindowState w) {
         if (mPackageName == null) {
             mPackageName = mProcess.mInfo.packageName;
@@ -1015,15 +1026,4 @@
             }
         }
     }
-
-    @Override
-    public void notifyInsetsAnimationRunningStateChanged(IWindow window, boolean running) {
-        synchronized (mService.mGlobalLock) {
-            final WindowState win = mService.windowForClientLocked(this, window,
-                    false /* throwOnError */);
-            if (win != null) {
-                win.notifyInsetsAnimationRunningStateChanged(running);
-            }
-        }
-    }
 }
diff --git a/services/core/java/com/android/server/wm/SnapshotController.java b/services/core/java/com/android/server/wm/SnapshotController.java
index 2664dcd..3a7222a 100644
--- a/services/core/java/com/android/server/wm/SnapshotController.java
+++ b/services/core/java/com/android/server/wm/SnapshotController.java
@@ -31,8 +31,6 @@
 import android.view.WindowManager;
 import android.window.TaskSnapshot;
 
-import com.android.window.flags.Flags;
-
 import java.io.PrintWriter;
 import java.util.ArrayList;
 
@@ -147,12 +145,6 @@
                 if (mOpenActivities.isEmpty()) {
                     return false;
                 }
-                // TODO (b/362183912) always capture activity snapshot will cause performance
-                //  regression, remove flag after ramp up
-                if (!Flags.deferPredictiveAnimationIfNoSnapshot()
-                        && Flags.alwaysCaptureActivitySnapshot()) {
-                    return true;
-                }
                 for (int i = mOpenActivities.size() - 1; i >= 0; --i) {
                     if (!mOpenActivities.get(i).mOptInOnBackInvoked) {
                         return false;
diff --git a/services/core/java/com/android/server/wm/Task.java b/services/core/java/com/android/server/wm/Task.java
index 6cd1336..22f0278 100644
--- a/services/core/java/com/android/server/wm/Task.java
+++ b/services/core/java/com/android/server/wm/Task.java
@@ -1846,9 +1846,9 @@
 
     private void updateAllowForceResizeOverride() {
         try {
-            mAllowForceResizeOverride = mAtmService.mContext.getPackageManager().getProperty(
+            mAllowForceResizeOverride = mAtmService.mContext.getPackageManager().getPropertyAsUser(
                     PROPERTY_COMPAT_ALLOW_RESIZEABLE_ACTIVITY_OVERRIDES,
-                    getBasePackageName()).getBoolean();
+                    getBasePackageName(), null /* className */, mUserId).getBoolean();
         } catch (PackageManager.NameNotFoundException e) {
             // Package not found or property not defined, reset to default value.
             mAllowForceResizeOverride = true;
@@ -2170,25 +2170,29 @@
 
     void adjustForMinimalTaskDimensions(@NonNull Rect bounds, @NonNull Rect previousBounds,
             @NonNull Configuration parentConfig) {
-        int minWidth = mMinWidth;
-        int minHeight = mMinHeight;
         // If the task has no requested minimal size, we'd like to enforce a minimal size
         // so that the user can not render the task fragment too small to manipulate. We don't need
         // to do this for the root pinned task as the bounds are controlled by the system.
-        if (!inPinnedWindowingMode()) {
-            // Use Display specific min sizes when there is one associated with this Task.
-            final int defaultMinSizeDp = mDisplayContent == null
-                    ? DEFAULT_MIN_TASK_SIZE_DP : mDisplayContent.mMinSizeOfResizeableTaskDp;
-            final float density = (float) parentConfig.densityDpi / DisplayMetrics.DENSITY_DEFAULT;
-            final int defaultMinSize = (int) (defaultMinSizeDp * density);
-
-            if (minWidth == INVALID_MIN_SIZE) {
-                minWidth = defaultMinSize;
-            }
-            if (minHeight == INVALID_MIN_SIZE) {
-                minHeight = defaultMinSize;
-            }
+        if (inPinnedWindowingMode()) {
+            Slog.i(TAG, "Skip adjustForMinimalTaskDimensions for pip task");
+            return;
         }
+
+        int minWidth = mMinWidth;
+        int minHeight = mMinHeight;
+        // Use Display specific min sizes when there is one associated with this Task.
+        final int defaultMinSizeDp = mDisplayContent == null
+                ? DEFAULT_MIN_TASK_SIZE_DP : mDisplayContent.mMinSizeOfResizeableTaskDp;
+        final float density = (float) parentConfig.densityDpi / DisplayMetrics.DENSITY_DEFAULT;
+        final int defaultMinSize = (int) (defaultMinSizeDp * density);
+
+        if (minWidth == INVALID_MIN_SIZE) {
+            minWidth = defaultMinSize;
+        }
+        if (minHeight == INVALID_MIN_SIZE) {
+            minHeight = defaultMinSize;
+        }
+
         if (bounds.isEmpty()) {
             // If inheriting parent bounds, check if parent bounds adhere to minimum size. If they
             // do, we can just skip.
@@ -3580,7 +3584,7 @@
                 & StartingWindowInfo.TYPE_PARAMETER_ACTIVITY_CREATED) != 0) {
             final WindowState topMainWin = getTopFullscreenMainWindow();
             if (topMainWin != null) {
-                info.mainWindowLayoutParams = topMainWin.getAttrs();
+                info.mainWindowLayoutParams = topMainWin.mAttrs;
                 info.requestedVisibleTypes = topMainWin.getRequestedVisibleTypes();
             }
         }
@@ -5685,10 +5689,6 @@
         return foundParentInTask;
     }
 
-    void removeLaunchTickMessages() {
-        forAllActivities(ActivityRecord::removeLaunchTickRunnable);
-    }
-
     private void updateTransitLocked(@WindowManager.TransitionType int transit,
             ActivityOptions options) {
         if (options != null) {
diff --git a/services/core/java/com/android/server/wm/TaskFragment.java b/services/core/java/com/android/server/wm/TaskFragment.java
index 80095b3..f95698a 100644
--- a/services/core/java/com/android/server/wm/TaskFragment.java
+++ b/services/core/java/com/android/server/wm/TaskFragment.java
@@ -1718,9 +1718,6 @@
                 next.setVisibility(true);
             }
 
-            // schedule launch ticks to collect information about slow apps.
-            next.startLaunchTickingLocked();
-
             ActivityRecord lastResumedActivity =
                     lastFocusedRootTask == null ? null
                             : lastFocusedRootTask.getTopResumedActivity();
@@ -2065,6 +2062,7 @@
 
         if (prev != null) {
             prev.setWillCloseOrEnterPip(false);
+            prev.supportsEnterPipOnTaskSwitch = false;
             final boolean wasStopping = prev.isState(STOPPING);
             prev.setState(PAUSED, "completePausedLocked");
             mPausingActivity = null;
diff --git a/services/core/java/com/android/server/wm/Transition.java b/services/core/java/com/android/server/wm/Transition.java
index fd7d96a..3db1d50 100644
--- a/services/core/java/com/android/server/wm/Transition.java
+++ b/services/core/java/com/android/server/wm/Transition.java
@@ -77,6 +77,7 @@
 import static com.android.server.wm.WindowState.BLAST_TIMEOUT_DURATION;
 import static com.android.window.flags.Flags.enableDisplayFocusInShellTransitions;
 
+import android.annotation.ColorInt;
 import android.annotation.IntDef;
 import android.annotation.NonNull;
 import android.annotation.Nullable;
@@ -257,6 +258,12 @@
     /** Custom activity-level animation options and callbacks. */
     private AnimationOptions mOverrideOptions;
 
+    /**
+     * Custom background color
+     */
+    @ColorInt
+    private int mOverrideBackgroundColor;
+
     private IRemoteCallback mClientAnimationStartCallback = null;
     private IRemoteCallback mClientAnimationFinishCallback = null;
 
@@ -1011,6 +1018,13 @@
     }
 
     /**
+     * Set background color for collecting transition.
+     */
+    void setOverrideBackgroundColor(@ColorInt int backgroundColor) {
+        mOverrideBackgroundColor = backgroundColor;
+    }
+
+    /**
      * Call this when all known changes related to this transition have been applied. Until
      * all participants have finished drawing, the transition can still collect participants.
      *
@@ -2038,8 +2052,7 @@
             if (container.asActivityRecord() != null
                     || shouldApplyAnimOptionsToTask(container.asTask())) {
                 changes.get(i).setAnimationOptions(mOverrideOptions);
-                // TODO(b/295805497): Extract mBackgroundColor from AnimationOptions.
-                changes.get(i).setBackgroundColor(mOverrideOptions.getBackgroundColor());
+                changes.get(i).setBackgroundColor(mOverrideBackgroundColor);
             } else if (shouldApplyAnimOptionsToEmbeddedTf(container.asTaskFragment())) {
                 // We only override AnimationOptions because backgroundColor should be from
                 // TaskFragmentAnimationParams.
@@ -2495,7 +2508,12 @@
         sb.append(" id=" + mSyncId);
         sb.append(" type=" + transitTypeToString(mType));
         sb.append(" flags=0x" + Integer.toHexString(mFlags));
-        sb.append(" overrideAnimOptions=" + mOverrideOptions);
+        if (mOverrideOptions != null) {
+            sb.append(" overrideAnimOptions=" + mOverrideOptions);
+        }
+        if (mOverrideBackgroundColor != 0) {
+            sb.append(" overrideBackgroundColor=" + mOverrideBackgroundColor);
+        }
         if (!mChanges.isEmpty()) {
             sb.append(" c=[");
             for (int i = 0; i < mChanges.size(); i++) {
@@ -3006,9 +3024,7 @@
             final Rect parentBounds = parent.getBounds();
             change.setEndRelOffset(bounds.left - parentBounds.left,
                     bounds.top - parentBounds.top);
-            if (Flags.activityEmbeddingOverlayPresentationFlag()) {
-                change.setEndParentSize(parentBounds.width(), parentBounds.height());
-            }
+            change.setEndParentSize(parentBounds.width(), parentBounds.height());
             int endRotation = target.getWindowConfiguration().getRotation();
             if (activityRecord != null) {
                 // TODO(b/227427984): Shell needs to aware letterbox.
@@ -3059,18 +3075,14 @@
             AnimationOptions animOptions = null;
             if (activityRecord != null && animOptionsForActivityTransition != null) {
                 animOptions = animOptionsForActivityTransition;
-            } else if (Flags.activityEmbeddingOverlayPresentationFlag()
-                    && isEmbeddedTaskFragment) {
+            } else if (isEmbeddedTaskFragment) {
                 final TaskFragmentAnimationParams params = taskFragment.getAnimationParams();
                 if (params.hasOverrideAnimation()) {
                     // Only set AnimationOptions if there's any animation override.
-                    // We use separated field for backgroundColor, and
-                    // AnimationOptions#backgroundColor will be removed in long term.
                     animOptions = AnimationOptions.makeCustomAnimOptions(
                             taskFragment.getTask().getBasePackageName(),
                             params.getOpenAnimationResId(), params.getChangeAnimationResId(),
-                            params.getCloseAnimationResId(), 0 /* backgroundColor */,
-                            false /* overrideTaskTransition */);
+                            params.getCloseAnimationResId(), false /* overrideTaskTransition */);
                     animOptions.setUserId(taskFragment.getTask().mUserId);
                 }
             }
@@ -3332,14 +3344,14 @@
         if (mainWin == null) return ROTATION_ANIMATION_UNSPECIFIED;
         int anim = mainWin.getRotationAnimationHint();
         if (anim >= 0) return anim;
-        anim = mainWin.getAttrs().rotationAnimation;
+        anim = mainWin.mAttrs.rotationAnimation;
         if (anim != ROTATION_ANIMATION_SEAMLESS) return anim;
         if (mainWin != task.mDisplayContent.getDisplayPolicy().getTopFullscreenOpaqueWindow()
                 || !top.matchParentBounds()) {
             // At the moment, we only support seamless rotation if there is only one window showing.
             return ROTATION_ANIMATION_UNSPECIFIED;
         }
-        return mainWin.getAttrs().rotationAnimation;
+        return mainWin.mAttrs.rotationAnimation;
     }
 
     private void validateKeyguardOcclusion() {
@@ -3626,11 +3638,6 @@
             }
             final boolean nowVisible = wc.isVisibleRequested();
             if (nowVisible == mVisible) {
-                if (mRestoringTransientHide) {
-                    // The requested visibility has not changed for transient-hide containers, but
-                    // we are restoring them so we should considering them moving to front again
-                    return TRANSIT_TO_FRONT;
-                }
                 return TRANSIT_CHANGE;
             }
             if (mExistenceChanged) {
diff --git a/services/core/java/com/android/server/wm/TransitionController.java b/services/core/java/com/android/server/wm/TransitionController.java
index ba7f364..11c5c93 100644
--- a/services/core/java/com/android/server/wm/TransitionController.java
+++ b/services/core/java/com/android/server/wm/TransitionController.java
@@ -23,6 +23,7 @@
 
 import static com.android.server.wm.ActivityTaskManagerService.POWER_MODE_REASON_CHANGE_DISPLAY;
 
+import android.annotation.ColorInt;
 import android.annotation.NonNull;
 import android.annotation.Nullable;
 import android.app.ActivityManager;
@@ -938,12 +939,19 @@
     }
 
     /** @see Transition#setOverrideAnimation */
-    void setOverrideAnimation(TransitionInfo.AnimationOptions options, ActivityRecord r,
-            @Nullable IRemoteCallback startCallback, @Nullable IRemoteCallback finishCallback) {
+    void setOverrideAnimation(@NonNull TransitionInfo.AnimationOptions options,
+            @NonNull ActivityRecord r, @Nullable IRemoteCallback startCallback,
+            @Nullable IRemoteCallback finishCallback) {
         if (mCollectingTransition == null) return;
         mCollectingTransition.setOverrideAnimation(options, r, startCallback, finishCallback);
     }
 
+    /** @see Transition#setOverrideBackgroundColor */
+    void setOverrideBackgroundColor(@ColorInt int backgroundColor) {
+        if (mCollectingTransition == null) return;
+        mCollectingTransition.setOverrideBackgroundColor(backgroundColor);
+    }
+
     void setNoAnimation(WindowContainer wc) {
         if (mCollectingTransition == null) return;
         mCollectingTransition.setNoAnimation(wc);
diff --git a/services/core/java/com/android/server/wm/WindowContainer.java b/services/core/java/com/android/server/wm/WindowContainer.java
index d0d2067..1c3510d 100644
--- a/services/core/java/com/android/server/wm/WindowContainer.java
+++ b/services/core/java/com/android/server/wm/WindowContainer.java
@@ -2007,6 +2007,11 @@
         return getActivity(r -> !r.finishing, true /* traverseTopToBottom */);
     }
 
+    ActivityRecord getTopMostVisibleFreeformActivity() {
+        return getActivity(r -> r.isVisibleRequested() && r.inFreeformWindowingMode(),
+                true /* traverseTopToBottom */);
+    }
+
     ActivityRecord getTopActivity(boolean includeFinishing, boolean includeOverlays) {
         // Break down into 4 calls to avoid object creation due to capturing input params.
         if (includeFinishing) {
diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java
index 8aed91b..28f2825 100644
--- a/services/core/java/com/android/server/wm/WindowManagerService.java
+++ b/services/core/java/com/android/server/wm/WindowManagerService.java
@@ -1583,14 +1583,18 @@
                 return WindowManagerGlobal.ADD_DUPLICATE_ADD;
             }
 
-            if (type == TYPE_PRIVATE_PRESENTATION && !displayContent.isPrivate()) {
+            if (type == TYPE_PRIVATE_PRESENTATION
+                    && !mPresentationController.canPresent(null /*win*/, displayContent, type,
+                    callingUid)) {
                 ProtoLog.w(WM_ERROR,
                         "Attempted to add private presentation window to a non-private display.  "
                                 + "Aborting.");
                 return WindowManagerGlobal.ADD_PERMISSION_DENIED;
             }
 
-            if (type == TYPE_PRESENTATION && !displayContent.getDisplay().isPublicPresentation()) {
+            if (type == TYPE_PRESENTATION
+                    && !mPresentationController.canPresent(null /*win*/, displayContent, type,
+                    callingUid)) {
                 ProtoLog.w(WM_ERROR,
                         "Attempted to add presentation window to a non-suitable display.  "
                                 + "Aborting.");
@@ -1830,7 +1834,8 @@
                 }
                 win.mTransitionController.collect(win.mToken);
                 res |= addWindowInner(win, displayPolicy, activity, displayContent, outInsetsState,
-                        outAttachedFrame, outActiveControls, client, outSizeCompatScale, attrs);
+                        outAttachedFrame, outActiveControls, client, outSizeCompatScale, attrs,
+                        callingUid);
                 // A presentation hides all activities behind on the same display.
                 win.mDisplayContent.ensureActivitiesVisible(/*starting=*/ null,
                         /*notifyClients=*/ true);
@@ -1841,7 +1846,8 @@
                 }
             } else {
                 res |= addWindowInner(win, displayPolicy, activity, displayContent, outInsetsState,
-                        outAttachedFrame, outActiveControls, client, outSizeCompatScale, attrs);
+                        outAttachedFrame, outActiveControls, client, outSizeCompatScale, attrs,
+                        callingUid);
             }
         }
 
@@ -1854,7 +1860,7 @@
             @NonNull ActivityRecord activity, @NonNull DisplayContent displayContent,
             @NonNull InsetsState outInsetsState, @NonNull Rect outAttachedFrame,
             @NonNull InsetsSourceControl.Array outActiveControls, @NonNull IWindow client,
-            @NonNull float[] outSizeCompatScale, @NonNull LayoutParams attrs) {
+            @NonNull float[] outSizeCompatScale, @NonNull LayoutParams attrs, int uid) {
         int res = 0;
         final int type = attrs.type;
         boolean imMayMove = true;
@@ -1869,7 +1875,7 @@
         } else if (type == TYPE_INPUT_METHOD
                 // IME window is always touchable.
                 // Ignore non-touchable windows e.g. Stylus InkWindow.java.
-                && (win.getAttrs().flags & FLAG_NOT_TOUCHABLE) == 0) {
+                && (win.mAttrs.flags & FLAG_NOT_TOUCHABLE) == 0) {
             displayContent.setInputMethodWindowLocked(win);
             imMayMove = false;
         } else if (type == TYPE_INPUT_METHOD_DIALOG) {
@@ -1971,7 +1977,7 @@
         outSizeCompatScale[0] = win.getCompatScaleForClient();
 
         if (res >= ADD_OKAY && win.isPresentation()) {
-            mPresentationController.onPresentationAdded(win);
+            mPresentationController.onPresentationAdded(win, uid);
         }
 
         return res;
@@ -4767,6 +4773,26 @@
         }
     }
 
+    @EnforcePermission(android.Manifest.permission.MANAGE_APP_TOKENS)
+    @Override
+    public void updateDisplayWindowAnimatingTypes(int displayId, @InsetsType int animatingTypes) {
+        updateDisplayWindowAnimatingTypes_enforcePermission();
+        if (android.view.inputmethod.Flags.reportAnimatingInsetsTypes()) {
+            final long origId = Binder.clearCallingIdentity();
+            try {
+                synchronized (mGlobalLock) {
+                    final DisplayContent dc = mRoot.getDisplayContent(displayId);
+                    if (dc == null || dc.mRemoteInsetsControlTarget == null) {
+                        return;
+                    }
+                    dc.mRemoteInsetsControlTarget.setAnimatingTypes(animatingTypes);
+                }
+            } finally {
+                Binder.restoreCallingIdentity(origId);
+            }
+        }
+    }
+
     @Override
     public int watchRotation(IRotationWatcher watcher, int displayId) {
         final DisplayContent displayContent;
diff --git a/services/core/java/com/android/server/wm/WindowState.java b/services/core/java/com/android/server/wm/WindowState.java
index bfedc90..3b7d312 100644
--- a/services/core/java/com/android/server/wm/WindowState.java
+++ b/services/core/java/com/android/server/wm/WindowState.java
@@ -736,6 +736,8 @@
 
     private @InsetsType int mRequestedVisibleTypes = WindowInsets.Type.defaultVisible();
 
+    private @InsetsType int mAnimatingTypes = 0;
+
     /**
      * Freeze the insets state in some cases that not necessarily keeps up-to-date to the client.
      * (e.g app exiting transition)
@@ -842,6 +844,27 @@
                 mRequestedVisibleTypes & ~mask | requestedVisibleTypes & mask);
     }
 
+    @Override
+    public @InsetsType int getAnimatingTypes() {
+        return mAnimatingTypes;
+    }
+
+    @Override
+    public void setAnimatingTypes(@InsetsType int animatingTypes) {
+        if (mAnimatingTypes != animatingTypes) {
+            if (Trace.isTagEnabled(TRACE_TAG_WINDOW_MANAGER)) {
+                Trace.instant(TRACE_TAG_WINDOW_MANAGER,
+                        TextUtils.formatSimple("%s: setAnimatingTypes(%s)",
+                                getName(),
+                                animatingTypes));
+            }
+            mInsetsAnimationRunning = animatingTypes != 0;
+            mWmService.scheduleAnimationLocked();
+
+            mAnimatingTypes = animatingTypes;
+        }
+    }
+
     /**
      * Set a freeze state for the window to ignore dispatching its insets state to the client.
      *
@@ -1412,10 +1435,6 @@
         return mWindowFrames.mParentFrame;
     }
 
-    WindowManager.LayoutParams getAttrs() {
-        return mAttrs;
-    }
-
     /** Retrieves the flags used to disable system UI functions. */
     int getDisableFlags() {
         return mDisableFlags;
@@ -2439,7 +2458,6 @@
                 mAnimatingExit = true;
                 mRemoveOnExit = true;
                 mToken.setVisibleRequested(false);
-                mWmService.mPresentationController.onPresentationRemoved(this);
                 // A presentation hides all activities behind on the same display.
                 mDisplayContent.ensureActivitiesVisible(/*starting=*/ null,
                         /*notifyClients=*/ true);
@@ -2660,7 +2678,7 @@
             // The client gave us a touchable region and so first
             // we calculate the untouchable region, then punch that out of our
             // expanded modal region.
-            mTmpRegion.set(0, 0, frame.right, frame.bottom);
+            mTmpRegion.set(0, 0, frame.width(), frame.height());
             mTmpRegion.op(mGivenTouchableRegion, Region.Op.DIFFERENCE);
             region.op(mTmpRegion, Region.Op.DIFFERENCE);
         }
@@ -5636,13 +5654,13 @@
 
     KeyInterceptionInfo getKeyInterceptionInfo() {
         if (mKeyInterceptionInfo == null
-                || mKeyInterceptionInfo.layoutParamsPrivateFlags != getAttrs().privateFlags
-                || mKeyInterceptionInfo.layoutParamsType != getAttrs().type
+                || mKeyInterceptionInfo.layoutParamsPrivateFlags != mAttrs.privateFlags
+                || mKeyInterceptionInfo.layoutParamsType != mAttrs.type
                 || mKeyInterceptionInfo.windowTitle != getWindowTag()
                 || mKeyInterceptionInfo.windowOwnerUid != getOwningUid()
-                || mKeyInterceptionInfo.inputFeaturesFlags != getAttrs().inputFeatures) {
-            mKeyInterceptionInfo = new KeyInterceptionInfo(getAttrs().type, getAttrs().privateFlags,
-                    getWindowTag().toString(), getOwningUid(), getAttrs().inputFeatures);
+                || mKeyInterceptionInfo.inputFeaturesFlags != mAttrs.inputFeatures) {
+            mKeyInterceptionInfo = new KeyInterceptionInfo(mAttrs.type, mAttrs.privateFlags,
+                    getWindowTag().toString(), getOwningUid(), mAttrs.inputFeatures);
         }
         return mKeyInterceptionInfo;
     }
@@ -5666,7 +5684,7 @@
         } else {
             outFrame.set(getParentFrame());
         }
-        outSurfaceInsets.set(getAttrs().surfaceInsets);
+        outSurfaceInsets.set(mAttrs.surfaceInsets);
         final InsetsState state = getInsetsStateWithVisibilityOverride();
         outInsets.set(state.calculateInsets(outFrame, systemBars(),
                 false /* ignoreVisibility */).toRect());
@@ -6083,17 +6101,6 @@
         mWmService.scheduleAnimationLocked();
     }
 
-    void notifyInsetsAnimationRunningStateChanged(boolean running) {
-        if (Trace.isTagEnabled(TRACE_TAG_WINDOW_MANAGER)) {
-            Trace.instant(TRACE_TAG_WINDOW_MANAGER,
-                    TextUtils.formatSimple("%s: notifyInsetsAnimationRunningStateChanged(%s)",
-                    getName(),
-                    Boolean.toString(running)));
-        }
-        mInsetsAnimationRunning = running;
-        mWmService.scheduleAnimationLocked();
-    }
-
     boolean isInsetsAnimationRunning() {
         return mInsetsAnimationRunning;
     }
diff --git a/services/core/java/com/android/server/wm/utils/OptPropFactory.java b/services/core/java/com/android/server/wm/utils/OptPropFactory.java
index 8201969b..753b1d5 100644
--- a/services/core/java/com/android/server/wm/utils/OptPropFactory.java
+++ b/services/core/java/com/android/server/wm/utils/OptPropFactory.java
@@ -21,6 +21,7 @@
 
 import android.annotation.IntDef;
 import android.annotation.NonNull;
+import android.annotation.UserIdInt;
 import android.content.pm.PackageManager;
 import android.util.Slog;
 
@@ -38,15 +39,20 @@
     @NonNull
     private final String mPackageName;
 
+    @UserIdInt
+    private final int mUserId;
+
     /**
      * Object responsible to handle optIn and optOut properties.
      *
      * @param packageManager The PackageManager reference
      * @param packageName    The name of the package.
      */
-    public OptPropFactory(@NonNull PackageManager packageManager, @NonNull String packageName) {
+    public OptPropFactory(@NonNull PackageManager packageManager, @NonNull String packageName,
+            @UserIdInt int userId) {
         mPackageManager = packageManager;
         mPackageName = packageName;
+        mUserId = userId;
     }
 
     /**
@@ -58,7 +64,8 @@
     @NonNull
     public OptProp create(@NonNull String propertyName) {
         return OptProp.create(
-                () -> mPackageManager.getProperty(propertyName, mPackageName).getBoolean(),
+                () -> mPackageManager.getPropertyAsUser(propertyName, mPackageName,
+                        null /* className */, mUserId).getBoolean(),
                 propertyName);
     }
 
@@ -73,7 +80,8 @@
     @NonNull
     public OptProp create(@NonNull String propertyName, @NonNull BooleanSupplier gateCondition) {
         return OptProp.create(
-                () -> mPackageManager.getProperty(propertyName, mPackageName).getBoolean(),
+                () -> mPackageManager.getPropertyAsUser(propertyName, mPackageName,
+                        null /* className */, mUserId).getBoolean(),
                 propertyName,
                 gateCondition);
     }
diff --git a/services/core/jni/BroadcastRadio/OWNERS b/services/core/jni/BroadcastRadio/OWNERS
index ea4421e..a993823 100644
--- a/services/core/jni/BroadcastRadio/OWNERS
+++ b/services/core/jni/BroadcastRadio/OWNERS
@@ -1,2 +1 @@
 twasilczyk@google.com
-randolphs@google.com
diff --git a/services/core/jni/stats/OWNERS b/services/core/jni/stats/OWNERS
index 2611e5b..8d87925 100644
--- a/services/core/jni/stats/OWNERS
+++ b/services/core/jni/stats/OWNERS
@@ -1,8 +1,6 @@
 jeffreyhuang@google.com
-jtnguyen@google.com
 muhammadq@google.com
 sharaieko@google.com
 singhtejinder@google.com
 tsaichristine@google.com
 yaochen@google.com
-yro@google.com
diff --git a/services/java/com/android/server/SystemServer.java b/services/java/com/android/server/SystemServer.java
index e158310..860b6fb 100644
--- a/services/java/com/android/server/SystemServer.java
+++ b/services/java/com/android/server/SystemServer.java
@@ -1814,7 +1814,7 @@
                 t.traceEnd();
             }
 
-            if (!isWatch && !isTv && !isAutomotive
+            if (!isWatch && !isTv && !isAutomotive && !isDesktop
                     && android.security.Flags.aapmApi()) {
                 t.traceBegin("StartAdvancedProtectionService");
                 mSystemServiceManager.startService(AdvancedProtectionService.Lifecycle.class);
diff --git a/services/musicrecognition/OWNERS b/services/musicrecognition/OWNERS
index 037b048..820be00 100644
--- a/services/musicrecognition/OWNERS
+++ b/services/musicrecognition/OWNERS
@@ -1,5 +1,4 @@
 # Bug component: 830636
 
 oni@google.com
-volnov@google.com
 
diff --git a/services/serial/OWNERS b/services/serial/OWNERS
new file mode 100644
index 0000000..89ce78e
--- /dev/null
+++ b/services/serial/OWNERS
@@ -0,0 +1 @@
+include /core/java/android/hardware/serial/OWNERS
\ No newline at end of file
diff --git a/services/tests/InputMethodSystemServerTests/src/com/android/inputmethodservice/AndroidTest.xml b/services/tests/InputMethodSystemServerTests/src/com/android/inputmethodservice/AndroidTest.xml
index 5fe5b23..d6a6853 100644
--- a/services/tests/InputMethodSystemServerTests/src/com/android/inputmethodservice/AndroidTest.xml
+++ b/services/tests/InputMethodSystemServerTests/src/com/android/inputmethodservice/AndroidTest.xml
@@ -18,6 +18,9 @@
     <option name="test-suite-tag" value="apct" />
     <option name="test-suite-tag" value="apct-instrumentation" />
 
+    <!-- Needed for reading the app files for the test artifacts -->
+    <target_preparer class="com.android.tradefed.targetprep.RootTargetPreparer"/>
+
     <target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller">
         <option name="cleanup-apks" value="true" />
         <option name="install-arg" value="-t" />
diff --git a/services/tests/InputMethodSystemServerTests/src/com/android/inputmethodservice/InputMethodServiceTest.java b/services/tests/InputMethodSystemServerTests/src/com/android/inputmethodservice/InputMethodServiceTest.java
index 6e16d29..2cd860a 100644
--- a/services/tests/InputMethodSystemServerTests/src/com/android/inputmethodservice/InputMethodServiceTest.java
+++ b/services/tests/InputMethodSystemServerTests/src/com/android/inputmethodservice/InputMethodServiceTest.java
@@ -1294,7 +1294,7 @@
         mInstrumentation.waitForIdleSync();
         final var postScreenshot = mInstrumentation.getUiAutomation().takeScreenshot();
         mDumpOnFailure.dumpOnFailure("post-getUiObject", postScreenshot);
-        assertWithMessage("UiObject with " + bySelector + " was found").that(uiObject).isNull();
+        assertWithMessage("UiObject with " + bySelector + " was found").that(uiObject).isNotNull();
         return uiObject;
     }
 
diff --git a/services/tests/mockingservicestests/src/com/android/server/alarm/AlarmManagerServiceTest.java b/services/tests/mockingservicestests/src/com/android/server/alarm/AlarmManagerServiceTest.java
index cb52f18..2a513ae 100644
--- a/services/tests/mockingservicestests/src/com/android/server/alarm/AlarmManagerServiceTest.java
+++ b/services/tests/mockingservicestests/src/com/android/server/alarm/AlarmManagerServiceTest.java
@@ -974,6 +974,41 @@
     }
 
     @Test
+    @EnableFlags(Flags.FLAG_ACQUIRE_WAKELOCK_BEFORE_SEND)
+    public void testWakelockReleasedWhenSendFails() throws Exception {
+        final long triggerTime = mNowElapsedTest + 5000;
+        final PendingIntent alarmPi = getNewMockPendingIntent();
+        setTestAlarm(ELAPSED_REALTIME_WAKEUP, triggerTime, alarmPi);
+
+        doThrow(new PendingIntent.CanceledException("test")).when(alarmPi).send(eq(mMockContext),
+                eq(0), any(Intent.class), any(), any(Handler.class), isNull(), any());
+
+        mNowElapsedTest = mTestTimer.getElapsed();
+        mTestTimer.expire();
+
+        final InOrder inOrder = Mockito.inOrder(mWakeLock);
+        inOrder.verify(mWakeLock).acquire();
+        inOrder.verify(mWakeLock).release();
+    }
+
+    @Test
+    @EnableFlags(Flags.FLAG_ACQUIRE_WAKELOCK_BEFORE_SEND)
+    public void testWakelockReleasedOnListenerException() throws Exception {
+        final long triggerTime = mNowElapsedTest + 5000;
+        final IAlarmListener listener = getNewListener(() -> {
+            throw new RuntimeException("test");
+        });
+        setTestAlarmWithListener(ELAPSED_REALTIME_WAKEUP, triggerTime, listener);
+
+        mNowElapsedTest = mTestTimer.getElapsed();
+        mTestTimer.expire();
+
+        final InOrder inOrder = Mockito.inOrder(mWakeLock);
+        inOrder.verify(mWakeLock).acquire();
+        inOrder.verify(mWakeLock).release();
+    }
+
+    @Test
     public void testMinFuturityCoreUid() {
         setDeviceConfigLong(KEY_MIN_FUTURITY, 10L);
         assertEquals(10, mService.mConstants.MIN_FUTURITY);
diff --git a/services/tests/mockingservicestests/src/com/android/server/am/BaseBroadcastQueueTest.java b/services/tests/mockingservicestests/src/com/android/server/am/BaseBroadcastQueueTest.java
index 5eb23a2..1286648 100644
--- a/services/tests/mockingservicestests/src/com/android/server/am/BaseBroadcastQueueTest.java
+++ b/services/tests/mockingservicestests/src/com/android/server/am/BaseBroadcastQueueTest.java
@@ -16,29 +16,43 @@
 
 package com.android.server.am;
 
+import static com.android.dx.mockito.inline.extended.ExtendedMockito.doNothing;
+import static com.android.dx.mockito.inline.extended.ExtendedMockito.doReturn;
+
 import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.ArgumentMatchers.anyInt;
 import static org.mockito.ArgumentMatchers.anyLong;
 import static org.mockito.ArgumentMatchers.eq;
 import static org.mockito.Mockito.doAnswer;
-import static org.mockito.Mockito.doNothing;
-import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.spy;
 
 import android.annotation.NonNull;
+import android.app.Activity;
+import android.app.ActivityManager;
+import android.app.AppGlobals;
+import android.app.AppOpsManager;
+import android.app.BackgroundStartPrivileges;
+import android.app.BroadcastOptions;
+import android.app.SystemServiceRegistry;
 import android.app.usage.UsageStatsManagerInternal;
 import android.content.ComponentName;
 import android.content.Context;
+import android.content.IIntentReceiver;
+import android.content.Intent;
 import android.content.IntentFilter;
 import android.content.pm.ActivityInfo;
 import android.content.pm.ApplicationInfo;
+import android.content.pm.IPackageManager;
 import android.content.pm.PackageManagerInternal;
 import android.content.pm.ResolveInfo;
+import android.os.Bundle;
 import android.os.Handler;
 import android.os.HandlerThread;
 import android.os.TestLooperManager;
 import android.os.UserHandle;
+import android.permission.IPermissionManager;
+import android.permission.PermissionManager;
 import android.platform.test.flag.junit.CheckFlagsRule;
 import android.platform.test.flag.junit.DeviceFlagsValueProvider;
 import android.platform.test.flag.junit.SetFlagsRule;
@@ -47,7 +61,6 @@
 
 import androidx.test.platform.app.InstrumentationRegistry;
 
-import com.android.dx.mockito.inline.extended.ExtendedMockito;
 import com.android.internal.util.FrameworkStatsLog;
 import com.android.modules.utils.testing.ExtendedMockitoRule;
 import com.android.server.AlarmManagerInternal;
@@ -55,6 +68,7 @@
 import com.android.server.LocalServices;
 import com.android.server.appop.AppOpsService;
 import com.android.server.compat.PlatformCompat;
+import com.android.server.firewall.IntentFirewall;
 import com.android.server.wm.ActivityTaskManagerService;
 
 import org.junit.Rule;
@@ -63,8 +77,11 @@
 import org.mockito.MockitoAnnotations;
 
 import java.io.File;
+import java.util.Collections;
+import java.util.List;
 import java.util.Objects;
 import java.util.concurrent.atomic.AtomicInteger;
+import java.util.function.BiFunction;
 
 public abstract class BaseBroadcastQueueTest {
 
@@ -97,6 +114,8 @@
     public final ExtendedMockitoRule mExtendedMockitoRule = new ExtendedMockitoRule.Builder(this)
             .spyStatic(FrameworkStatsLog.class)
             .spyStatic(ProcessList.class)
+            .spyStatic(SystemServiceRegistry.class)
+            .mockStatic(AppGlobals.class)
             .build();
 
 
@@ -119,6 +138,16 @@
     ProcessList mProcessList;
     @Mock
     PlatformCompat mPlatformCompat;
+    @Mock
+    IntentFirewall mIntentFirewall;
+    @Mock
+    IPackageManager mIPackageManager;
+    @Mock
+    AppOpsManager mAppOpsManager;
+    @Mock
+    IPermissionManager mIPermissionManager;
+    @Mock
+    PermissionManager mPermissionManager;
 
     @Mock
     AppStartInfoTracker mAppStartInfoTracker;
@@ -167,22 +196,22 @@
             return getUidForPackage(invocation.getArgument(0));
         }).when(mPackageManagerInt).getPackageUid(any(), anyLong(), eq(UserHandle.USER_SYSTEM));
 
+        final Context spyContext = spy(mContext);
+        doReturn(mPermissionManager).when(spyContext).getSystemService(PermissionManager.class);
         final ActivityManagerService realAms = new ActivityManagerService(
-                new TestInjector(mContext), mServiceThreadRule.getThread());
+                new TestInjector(spyContext), mServiceThreadRule.getThread());
         realAms.mActivityTaskManager = new ActivityTaskManagerService(mContext);
         realAms.mActivityTaskManager.initialize(null, null, mContext.getMainLooper());
         realAms.mAtmInternal = spy(realAms.mActivityTaskManager.getAtmInternal());
         realAms.mOomAdjuster.mCachedAppOptimizer = mock(CachedAppOptimizer.class);
         realAms.mOomAdjuster = spy(realAms.mOomAdjuster);
-        ExtendedMockito.doNothing().when(() -> ProcessList.setOomAdj(anyInt(), anyInt(), anyInt()));
+        doNothing().when(() -> ProcessList.setOomAdj(anyInt(), anyInt(), anyInt()));
         realAms.mPackageManagerInt = mPackageManagerInt;
         realAms.mUsageStatsService = mUsageStatsManagerInt;
         realAms.mProcessesReady = true;
         mAms = spy(realAms);
 
-        mSkipPolicy = spy(new BroadcastSkipPolicy(mAms));
-        doReturn(null).when(mSkipPolicy).shouldSkipMessage(any(), any());
-        doReturn(false).when(mSkipPolicy).disallowBackgroundStart(any());
+        mSkipPolicy = createBroadcastSkipPolicy();
 
         doReturn(mAppStartInfoTracker).when(mProcessList).getAppStartInfoTracker();
 
@@ -198,6 +227,14 @@
         }
     }
 
+    public BroadcastSkipPolicy createBroadcastSkipPolicy() {
+        final BroadcastSkipPolicy skipPolicy = spy(new BroadcastSkipPolicy(mAms));
+        doReturn(null).when(skipPolicy).shouldSkipAtEnqueueMessage(any(), any());
+        doReturn(null).when(skipPolicy).shouldSkipMessage(any(), any());
+        doReturn(false).when(skipPolicy).disallowBackgroundStart(any());
+        return skipPolicy;
+    }
+
     static int getUidForPackage(@NonNull String packageName) {
         switch (packageName) {
             case PACKAGE_ANDROID: return android.os.Process.SYSTEM_UID;
@@ -240,6 +277,11 @@
         public BroadcastQueue getBroadcastQueue(ActivityManagerService service) {
             return null;
         }
+
+        @Override
+        public IntentFirewall getIntentFirewall() {
+            return mIntentFirewall;
+        }
     }
 
     abstract String getTag();
@@ -281,24 +323,35 @@
         ri.activityInfo.packageName = packageName;
         ri.activityInfo.processName = processName;
         ri.activityInfo.name = name;
+        ri.activityInfo.exported = true;
         ri.activityInfo.applicationInfo = makeApplicationInfo(packageName, processName, userId);
         return ri;
     }
 
+    // TODO: Reuse BroadcastQueueTest.makeActiveProcessRecord()
+    @SuppressWarnings("GuardedBy")
+    ProcessRecord makeProcessRecord(ApplicationInfo info) {
+        final ProcessRecord r = spy(new ProcessRecord(mAms, info, info.processName, info.uid));
+        r.setPid(mNextPid.incrementAndGet());
+        ProcessRecord.updateProcessRecordNodes(r);
+        return r;
+    }
+
     BroadcastFilter makeRegisteredReceiver(ProcessRecord app) {
         return makeRegisteredReceiver(app, 0);
     }
 
     BroadcastFilter makeRegisteredReceiver(ProcessRecord app, int priority) {
         final ReceiverList receiverList = mRegisteredReceivers.get(app.getPid());
-        return makeRegisteredReceiver(receiverList, priority);
+        return makeRegisteredReceiver(receiverList, priority, null);
     }
 
-    static BroadcastFilter makeRegisteredReceiver(ReceiverList receiverList, int priority) {
+    static BroadcastFilter makeRegisteredReceiver(ReceiverList receiverList, int priority,
+            String requiredPermission) {
         final IntentFilter filter = new IntentFilter();
         filter.setPriority(priority);
         final BroadcastFilter res = new BroadcastFilter(filter, receiverList,
-                receiverList.app.info.packageName, null, null, null, receiverList.uid,
+                receiverList.app.info.packageName, null, null, requiredPermission, receiverList.uid,
                 receiverList.userId, false, false, true, receiverList.app.info,
                 mock(PlatformCompat.class));
         receiverList.add(res);
@@ -313,4 +366,62 @@
     ArgumentMatcher<ApplicationInfo> appInfoEquals(int uid) {
         return test -> (test.uid == uid);
     }
+
+    static final class BroadcastRecordBuilder {
+        private BroadcastQueue mQueue = mock(BroadcastQueue.class);
+        private Intent mIntent = mock(Intent.class);
+        private ProcessRecord mProcessRecord = mock(ProcessRecord.class);
+        private String mCallerPackage;
+        private String mCallerFeatureId;
+        private int mCallingPid;
+        private int mCallingUid;
+        private boolean mCallerInstantApp;
+        private String mResolvedType;
+        private String[] mRequiredPermissions;
+        private String[] mExcludedPermissions;
+        private String[] mExcludedPackages;
+        private int mAppOp;
+        private BroadcastOptions mOptions = BroadcastOptions.makeBasic();
+        private List mReceivers = Collections.emptyList();
+        private ProcessRecord mResultToApp;
+        private IIntentReceiver mResultTo;
+        private int mResultCode = Activity.RESULT_OK;
+        private String mResultData;
+        private Bundle mResultExtras;
+        private boolean mSerialized;
+        private boolean mSticky;
+        private boolean mInitialSticky;
+        private int mUserId = UserHandle.USER_SYSTEM;
+        private BackgroundStartPrivileges mBackgroundStartPrivileges =
+                BackgroundStartPrivileges.NONE;
+        private boolean mTimeoutExempt;
+        private BiFunction<Integer, Bundle, Bundle> mFilterExtrasForReceiver;
+        private int mCallerAppProcState = ActivityManager.PROCESS_STATE_UNKNOWN;
+        private PlatformCompat mPlatformCompat = mock(PlatformCompat.class);
+
+        public BroadcastRecordBuilder setIntent(Intent intent) {
+            mIntent = intent;
+            return this;
+        }
+
+        public BroadcastRecordBuilder setRequiredPermissions(String[] requiredPermissions) {
+            mRequiredPermissions = requiredPermissions;
+            return this;
+        }
+
+        public BroadcastRecordBuilder setAppOp(int appOp) {
+            mAppOp = appOp;
+            return this;
+        }
+
+        public BroadcastRecord build() {
+            return new BroadcastRecord(mQueue, mIntent, mProcessRecord, mCallerPackage,
+                    mCallerFeatureId, mCallingPid, mCallingUid, mCallerInstantApp, mResolvedType,
+                    mRequiredPermissions, mExcludedPermissions, mExcludedPackages, mAppOp,
+                    mOptions, mReceivers, mResultToApp, mResultTo, mResultCode, mResultData,
+                    mResultExtras, mSerialized, mSticky, mInitialSticky, mUserId,
+                    mBackgroundStartPrivileges, mTimeoutExempt, mFilterExtrasForReceiver,
+                    mCallerAppProcState, mPlatformCompat);
+        }
+    }
 }
diff --git a/services/tests/mockingservicestests/src/com/android/server/am/BroadcastQueueImplTest.java b/services/tests/mockingservicestests/src/com/android/server/am/BroadcastQueueImplTest.java
index 409706b..b32ce49 100644
--- a/services/tests/mockingservicestests/src/com/android/server/am/BroadcastQueueImplTest.java
+++ b/services/tests/mockingservicestests/src/com/android/server/am/BroadcastQueueImplTest.java
@@ -1803,6 +1803,46 @@
         assertEquals(ProcessList.SCHED_GROUP_DEFAULT, queue.getPreferredSchedulingGroupLocked());
     }
 
+    @SuppressWarnings("GuardedBy")
+    @DisableFlags(Flags.FLAG_AVOID_NOTE_OP_AT_ENQUEUE)
+    @Test
+    public void testSkipPolicy_atEnqueueTime_flagDisabled() throws Exception {
+        final Intent userPresent = new Intent(Intent.ACTION_USER_PRESENT);
+        final Object greenReceiver = makeManifestReceiver(PACKAGE_GREEN, CLASS_GREEN);
+        final Object redReceiver = makeManifestReceiver(PACKAGE_RED, CLASS_RED);
+
+        final BroadcastRecord userPresentRecord = makeBroadcastRecord(userPresent,
+                List.of(greenReceiver, redReceiver));
+
+        final Intent timeTick = new Intent(Intent.ACTION_TIME_TICK);
+        final BroadcastRecord timeTickRecord = makeBroadcastRecord(timeTick,
+                List.of(greenReceiver, redReceiver));
+
+        doAnswer(invocation -> {
+            final BroadcastRecord r = invocation.getArgument(0);
+            final Object o = invocation.getArgument(1);
+            if (userPresent.getAction().equals(r.intent.getAction())
+                    && isReceiverEquals(o, greenReceiver)) {
+                return "receiver skipped by test";
+            }
+            return null;
+        }).when(mSkipPolicy).shouldSkipMessage(any(BroadcastRecord.class), any());
+
+        mImpl.enqueueBroadcastLocked(userPresentRecord);
+        mImpl.enqueueBroadcastLocked(timeTickRecord);
+
+        final BroadcastProcessQueue greenQueue = mImpl.getProcessQueue(PACKAGE_GREEN,
+                getUidForPackage(PACKAGE_GREEN));
+        // There should be only one broadcast for green process as the other would have
+        // been skipped.
+        verifyPendingRecords(greenQueue, List.of(timeTick));
+        final BroadcastProcessQueue redQueue = mImpl.getProcessQueue(PACKAGE_RED,
+                getUidForPackage(PACKAGE_RED));
+        verifyPendingRecords(redQueue, List.of(userPresent, timeTick));
+    }
+
+    @SuppressWarnings("GuardedBy")
+    @EnableFlags(Flags.FLAG_AVOID_NOTE_OP_AT_ENQUEUE)
     @Test
     public void testSkipPolicy_atEnqueueTime() throws Exception {
         final Intent userPresent = new Intent(Intent.ACTION_USER_PRESENT);
@@ -1824,7 +1864,7 @@
                 return "receiver skipped by test";
             }
             return null;
-        }).when(mSkipPolicy).shouldSkipMessage(any(BroadcastRecord.class), any());
+        }).when(mSkipPolicy).shouldSkipAtEnqueueMessage(any(BroadcastRecord.class), any());
 
         mImpl.enqueueBroadcastLocked(userPresentRecord);
         mImpl.enqueueBroadcastLocked(timeTickRecord);
@@ -2270,19 +2310,11 @@
         assertFalse(mImpl.isProcessFreezable(greenProcess));
     }
 
-    // TODO: Reuse BroadcastQueueTest.makeActiveProcessRecord()
-    private ProcessRecord makeProcessRecord(ApplicationInfo info) {
-        final ProcessRecord r = spy(new ProcessRecord(mAms, info, info.processName, info.uid));
-        r.setPid(mNextPid.incrementAndGet());
-        ProcessRecord.updateProcessRecordNodes(r);
-        return r;
-    }
-
     BroadcastFilter makeRegisteredReceiver(ProcessRecord app, int priority) {
         final IIntentReceiver receiver = mock(IIntentReceiver.class);
         final ReceiverList receiverList = new ReceiverList(mAms, app, app.getPid(), app.info.uid,
                 UserHandle.getUserId(app.info.uid), receiver);
-        return makeRegisteredReceiver(receiverList, priority);
+        return makeRegisteredReceiver(receiverList, priority, null /* requiredPermission */);
     }
 
     private Intent createPackageChangedIntent(int uid, List<String> componentNameList) {
diff --git a/services/tests/mockingservicestests/src/com/android/server/am/BroadcastQueueTest.java b/services/tests/mockingservicestests/src/com/android/server/am/BroadcastQueueTest.java
index ad35b25..3a9c99d 100644
--- a/services/tests/mockingservicestests/src/com/android/server/am/BroadcastQueueTest.java
+++ b/services/tests/mockingservicestests/src/com/android/server/am/BroadcastQueueTest.java
@@ -2301,6 +2301,52 @@
     }
 
     /**
+     * Verify that we skip broadcasts at enqueue if {@link BroadcastSkipPolicy} decides it
+     * should be skipped.
+     */
+    @EnableFlags(Flags.FLAG_AVOID_NOTE_OP_AT_ENQUEUE)
+    @Test
+    public void testSkipPolicy_atEnqueueTime() throws Exception {
+        final ProcessRecord callerApp = makeActiveProcessRecord(PACKAGE_RED);
+        final ProcessRecord receiverGreenApp = makeActiveProcessRecord(PACKAGE_GREEN);
+        final ProcessRecord receiverBlueApp = makeActiveProcessRecord(PACKAGE_BLUE);
+
+        final Intent airplane = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED);
+        final Object greenReceiver = makeRegisteredReceiver(receiverGreenApp);
+        final Object blueReceiver = makeRegisteredReceiver(receiverBlueApp);
+        final Object yellowReceiver = makeManifestReceiver(PACKAGE_YELLOW, CLASS_YELLOW);
+        final Object orangeReceiver = makeManifestReceiver(PACKAGE_ORANGE, CLASS_ORANGE);
+
+        doAnswer(invocation -> {
+            final BroadcastRecord r = invocation.getArgument(0);
+            final Object o = invocation.getArgument(1);
+            if (airplane.getAction().equals(r.intent.getAction())
+                    && (isReceiverEquals(o, greenReceiver)
+                    || isReceiverEquals(o, orangeReceiver))) {
+                return "test skipped receiver";
+            }
+            return null;
+        }).when(mSkipPolicy).shouldSkipAtEnqueueMessage(any(BroadcastRecord.class), any());
+        enqueueBroadcast(makeBroadcastRecord(airplane, callerApp,
+                List.of(greenReceiver, blueReceiver, yellowReceiver, orangeReceiver)));
+
+        waitForIdle();
+        // Verify that only blue and yellow receiver apps received the broadcast.
+        verifyScheduleRegisteredReceiver(never(), receiverGreenApp, USER_SYSTEM);
+        verify(mSkipPolicy, never()).shouldSkipMessage(any(BroadcastRecord.class),
+                eq(greenReceiver));
+        verifyScheduleRegisteredReceiver(receiverBlueApp, airplane);
+        final ProcessRecord receiverYellowApp = mAms.getProcessRecordLocked(PACKAGE_YELLOW,
+                getUidForPackage(PACKAGE_YELLOW));
+        verifyScheduleReceiver(receiverYellowApp, airplane);
+        final ProcessRecord receiverOrangeApp = mAms.getProcessRecordLocked(PACKAGE_ORANGE,
+                getUidForPackage(PACKAGE_ORANGE));
+        assertNull(receiverOrangeApp);
+        verify(mSkipPolicy, never()).shouldSkipMessage(any(BroadcastRecord.class),
+                eq(orangeReceiver));
+    }
+
+    /**
      * Verify broadcasts to runtime receivers in cached processes are deferred
      * until that process leaves the cached state.
      */
diff --git a/services/tests/mockingservicestests/src/com/android/server/am/BroadcastSkipPolicyTest.java b/services/tests/mockingservicestests/src/com/android/server/am/BroadcastSkipPolicyTest.java
new file mode 100644
index 0000000..c8aad79e
--- /dev/null
+++ b/services/tests/mockingservicestests/src/com/android/server/am/BroadcastSkipPolicyTest.java
@@ -0,0 +1,305 @@
+/*
+ * Copyright (C) 2025 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.server.am;
+
+import static com.android.dx.mockito.inline.extended.ExtendedMockito.doReturn;
+import static com.android.dx.mockito.inline.extended.ExtendedMockito.mock;
+import static com.android.dx.mockito.inline.extended.ExtendedMockito.verify;
+
+import static org.junit.Assert.assertNull;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.ArgumentMatchers.anyString;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.ArgumentMatchers.nullable;
+import static org.mockito.Mockito.never;
+
+import android.Manifest;
+import android.app.ActivityManager;
+import android.app.AppGlobals;
+import android.app.AppOpsManager;
+import android.content.IIntentReceiver;
+import android.content.Intent;
+import android.content.pm.PackageManager;
+import android.content.pm.ResolveInfo;
+import android.os.UserHandle;
+
+import androidx.test.filters.SmallTest;
+
+import org.junit.Before;
+import org.junit.Test;
+
+@SmallTest
+public class BroadcastSkipPolicyTest extends BaseBroadcastQueueTest {
+    private static final String TAG = "BroadcastSkipPolicyTest";
+
+    BroadcastSkipPolicy mBroadcastSkipPolicy;
+
+    @Before
+    public void setUp() throws Exception {
+        super.setUp();
+        mBroadcastSkipPolicy = new BroadcastSkipPolicy(mAms);
+
+        doReturn(true).when(mIntentFirewall).checkBroadcast(any(Intent.class),
+                anyInt(), anyInt(), nullable(String.class), anyInt());
+
+        doReturn(mIPackageManager).when(AppGlobals::getPackageManager);
+        doReturn(true).when(mIPackageManager).isPackageAvailable(anyString(), anyInt());
+
+        doReturn(ActivityManager.APP_START_MODE_NORMAL).when(mAms).getAppStartModeLOSP(anyInt(),
+                anyString(), anyInt(), anyInt(), eq(true), eq(false), eq(false));
+
+        doReturn(mAppOpsManager).when(mAms).getAppOpsManager();
+        doReturn(AppOpsManager.MODE_ALLOWED).when(mAppOpsManager).checkOpNoThrow(anyString(),
+                anyInt(), anyString(), nullable(String.class));
+        doReturn(AppOpsManager.MODE_ALLOWED).when(mAppOpsManager).noteOpNoThrow(anyString(),
+                anyInt(), anyString(), nullable(String.class), anyString());
+
+        doReturn(mIPermissionManager).when(AppGlobals::getPermissionManager);
+        doReturn(PackageManager.PERMISSION_GRANTED).when(mIPermissionManager).checkUidPermission(
+                anyInt(), anyString(), anyInt());
+    }
+
+    @Override
+    public String getTag() {
+        return TAG;
+    }
+
+    @Override
+    public BroadcastSkipPolicy createBroadcastSkipPolicy() {
+        return new BroadcastSkipPolicy(mAms);
+    }
+
+    @Test
+    public void testShouldSkipMessage_withManifestRcvr_withCompPerm_invokesNoteOp() {
+        final BroadcastRecord record = new BroadcastRecordBuilder()
+                .setIntent(new Intent(Intent.ACTION_TIME_TICK))
+                .build();
+        final String msg = mBroadcastSkipPolicy.shouldSkipMessage(record,
+                makeManifestReceiverWithPermission(PACKAGE_GREEN, CLASS_GREEN,
+                        Manifest.permission.PACKAGE_USAGE_STATS));
+        assertNull(msg);
+        verify(mAppOpsManager).noteOpNoThrow(
+                eq(AppOpsManager.permissionToOp(Manifest.permission.PACKAGE_USAGE_STATS)),
+                eq(record.callingUid), eq(record.callerPackage), eq(record.callerFeatureId),
+                anyString());
+        verify(mAppOpsManager, never()).checkOpNoThrow(
+                anyString(), anyInt(), anyString(), nullable(String.class));
+    }
+
+    @Test
+    public void testShouldSkipMessage_withRegRcvr_withCompPerm_invokesNoteOp() {
+        final BroadcastRecord record = new BroadcastRecordBuilder()
+                .setIntent(new Intent(Intent.ACTION_TIME_TICK))
+                .build();
+        final ProcessRecord receiverApp = makeProcessRecord(makeApplicationInfo(PACKAGE_GREEN));
+        final String msg = mBroadcastSkipPolicy.shouldSkipMessage(record,
+                makeRegisteredReceiver(receiverApp, 0 /* priority */,
+                        Manifest.permission.PACKAGE_USAGE_STATS));
+        assertNull(msg);
+        verify(mAppOpsManager).noteOpNoThrow(
+                eq(AppOpsManager.permissionToOp(Manifest.permission.PACKAGE_USAGE_STATS)),
+                eq(record.callingUid), eq(record.callerPackage), eq(record.callerFeatureId),
+                anyString());
+        verify(mAppOpsManager, never()).checkOpNoThrow(
+                anyString(), anyInt(), anyString(), nullable(String.class));
+    }
+
+    @Test
+    public void testShouldSkipAtEnqueueMessage_withManifestRcvr_withCompPerm_invokesCheckOp() {
+        final BroadcastRecord record = new BroadcastRecordBuilder()
+                .setIntent(new Intent(Intent.ACTION_TIME_TICK))
+                .build();
+        final String msg = mBroadcastSkipPolicy.shouldSkipAtEnqueueMessage(record,
+                makeManifestReceiverWithPermission(PACKAGE_GREEN, CLASS_GREEN,
+                        Manifest.permission.PACKAGE_USAGE_STATS));
+        assertNull(msg);
+        verify(mAppOpsManager).checkOpNoThrow(
+                eq(AppOpsManager.permissionToOp(Manifest.permission.PACKAGE_USAGE_STATS)),
+                eq(record.callingUid), eq(record.callerPackage), eq(record.callerFeatureId));
+        verify(mAppOpsManager, never()).noteOpNoThrow(
+                anyString(), anyInt(), anyString(), nullable(String.class), anyString());
+    }
+
+    @Test
+    public void testShouldSkipAtEnqueueMessage_withRegRcvr_withCompPerm_invokesCheckOp() {
+        final BroadcastRecord record = new BroadcastRecordBuilder()
+                .setIntent(new Intent(Intent.ACTION_TIME_TICK))
+                .build();
+        final ProcessRecord receiverApp = makeProcessRecord(makeApplicationInfo(PACKAGE_GREEN));
+        final String msg = mBroadcastSkipPolicy.shouldSkipAtEnqueueMessage(record,
+                makeRegisteredReceiver(receiverApp, 0 /* priority */,
+                        Manifest.permission.PACKAGE_USAGE_STATS));
+        assertNull(msg);
+        verify(mAppOpsManager).checkOpNoThrow(
+                eq(AppOpsManager.permissionToOp(Manifest.permission.PACKAGE_USAGE_STATS)),
+                eq(record.callingUid), eq(record.callerPackage), eq(record.callerFeatureId));
+        verify(mAppOpsManager, never()).noteOpNoThrow(
+                anyString(), anyInt(), anyString(), nullable(String.class), anyString());
+    }
+
+    @Test
+    public void testShouldSkipMessage_withManifestRcvr_withAppOp_invokesNoteOp() {
+        final BroadcastRecord record = new BroadcastRecordBuilder()
+                .setIntent(new Intent(Intent.ACTION_TIME_TICK))
+                .setAppOp(AppOpsManager.permissionToOpCode(Manifest.permission.PACKAGE_USAGE_STATS))
+                .build();
+        final ResolveInfo receiver = makeManifestReceiver(PACKAGE_GREEN, CLASS_GREEN);
+        final String msg = mBroadcastSkipPolicy.shouldSkipMessage(record, receiver);
+        assertNull(msg);
+        verify(mAppOpsManager).noteOpNoThrow(
+                eq(AppOpsManager.permissionToOp(Manifest.permission.PACKAGE_USAGE_STATS)),
+                eq(receiver.activityInfo.applicationInfo.uid),
+                eq(receiver.activityInfo.packageName), nullable(String.class), anyString());
+        verify(mAppOpsManager, never()).checkOpNoThrow(
+                anyString(), anyInt(), anyString(), nullable(String.class));
+    }
+
+    @Test
+    public void testShouldSkipMessage_withRegRcvr_withAppOp_invokesNoteOp() {
+        final BroadcastRecord record = new BroadcastRecordBuilder()
+                .setIntent(new Intent(Intent.ACTION_TIME_TICK))
+                .setAppOp(AppOpsManager.permissionToOpCode(Manifest.permission.PACKAGE_USAGE_STATS))
+                .build();
+        final ProcessRecord receiverApp = makeProcessRecord(makeApplicationInfo(PACKAGE_GREEN));
+        final BroadcastFilter filter = makeRegisteredReceiver(receiverApp, 0 /* priority */,
+                null /* requiredPermission */);
+        final String msg = mBroadcastSkipPolicy.shouldSkipMessage(record, filter);
+        assertNull(msg);
+        verify(mAppOpsManager).noteOpNoThrow(
+                eq(AppOpsManager.permissionToOp(Manifest.permission.PACKAGE_USAGE_STATS)),
+                eq(filter.receiverList.uid),
+                eq(filter.packageName), nullable(String.class), anyString());
+        verify(mAppOpsManager, never()).checkOpNoThrow(
+                anyString(), anyInt(), anyString(), nullable(String.class));
+    }
+
+    @Test
+    public void testShouldSkipAtEnqueueMessage_withManifestRcvr_withAppOp_invokesCheckOp() {
+        final BroadcastRecord record = new BroadcastRecordBuilder()
+                .setIntent(new Intent(Intent.ACTION_TIME_TICK))
+                .setAppOp(AppOpsManager.permissionToOpCode(Manifest.permission.PACKAGE_USAGE_STATS))
+                .build();
+        final ResolveInfo receiver = makeManifestReceiver(PACKAGE_GREEN, CLASS_GREEN);
+        final String msg = mBroadcastSkipPolicy.shouldSkipAtEnqueueMessage(record, receiver);
+        assertNull(msg);
+        verify(mAppOpsManager).checkOpNoThrow(
+                eq(AppOpsManager.permissionToOp(Manifest.permission.PACKAGE_USAGE_STATS)),
+                eq(receiver.activityInfo.applicationInfo.uid),
+                eq(receiver.activityInfo.applicationInfo.packageName), nullable(String.class));
+        verify(mAppOpsManager, never()).noteOpNoThrow(
+                anyString(), anyInt(), anyString(), nullable(String.class), anyString());
+    }
+
+    @Test
+    public void testShouldSkipAtEnqueueMessage_withRegRcvr_withAppOp_invokesCheckOp() {
+        final BroadcastRecord record = new BroadcastRecordBuilder()
+                .setIntent(new Intent(Intent.ACTION_TIME_TICK))
+                .setAppOp(AppOpsManager.permissionToOpCode(Manifest.permission.PACKAGE_USAGE_STATS))
+                .build();
+        final ProcessRecord receiverApp = makeProcessRecord(makeApplicationInfo(PACKAGE_GREEN));
+        final BroadcastFilter filter = makeRegisteredReceiver(receiverApp, 0 /* priority */,
+                null /* requiredPermission */);
+        final String msg = mBroadcastSkipPolicy.shouldSkipAtEnqueueMessage(record, filter);
+        assertNull(msg);
+        verify(mAppOpsManager).checkOpNoThrow(
+                eq(AppOpsManager.permissionToOp(Manifest.permission.PACKAGE_USAGE_STATS)),
+                eq(filter.receiverList.uid),
+                eq(filter.packageName), nullable(String.class));
+        verify(mAppOpsManager, never()).noteOpNoThrow(
+                anyString(), anyInt(), anyString(), nullable(String.class), anyString());
+    }
+
+    @Test
+    public void testShouldSkipMessage_withManifestRcvr_withRequiredPerms_invokesNoteOp() {
+        final BroadcastRecord record = new BroadcastRecordBuilder()
+                .setIntent(new Intent(Intent.ACTION_TIME_TICK))
+                .setRequiredPermissions(new String[] {Manifest.permission.PACKAGE_USAGE_STATS})
+                .build();
+        final String msg = mBroadcastSkipPolicy.shouldSkipMessage(record,
+                makeManifestReceiver(PACKAGE_GREEN, CLASS_GREEN));
+        assertNull(msg);
+        verify(mPermissionManager).checkPermissionForDataDelivery(
+                eq(Manifest.permission.PACKAGE_USAGE_STATS), any(), anyString());
+        verify(mPermissionManager, never()).checkPermissionForPreflight(
+                eq(Manifest.permission.PACKAGE_USAGE_STATS), any());
+    }
+
+    @Test
+    public void testShouldSkipMessage_withRegRcvr_withRequiredPerms_invokesNoteOp() {
+        final BroadcastRecord record = new BroadcastRecordBuilder()
+                .setIntent(new Intent(Intent.ACTION_TIME_TICK))
+                .setRequiredPermissions(new String[] {Manifest.permission.PACKAGE_USAGE_STATS})
+                .build();
+        final ProcessRecord receiverApp = makeProcessRecord(makeApplicationInfo(PACKAGE_GREEN));
+        final String msg = mBroadcastSkipPolicy.shouldSkipMessage(record,
+                makeRegisteredReceiver(receiverApp, 0 /* priority */,
+                        null /* requiredPermission */));
+        assertNull(msg);
+        verify(mPermissionManager).checkPermissionForDataDelivery(
+                eq(Manifest.permission.PACKAGE_USAGE_STATS), any(), anyString());
+        verify(mPermissionManager, never()).checkPermissionForPreflight(
+                eq(Manifest.permission.PACKAGE_USAGE_STATS), any());
+    }
+
+    @Test
+    public void testShouldSkipAtEnqueueMessage_withManifestRcvr_withRequiredPerms_invokesCheckOp() {
+        final BroadcastRecord record = new BroadcastRecordBuilder()
+                .setIntent(new Intent(Intent.ACTION_TIME_TICK))
+                .setRequiredPermissions(new String[] {Manifest.permission.PACKAGE_USAGE_STATS})
+                .build();
+        final String msg = mBroadcastSkipPolicy.shouldSkipAtEnqueueMessage(record,
+                makeManifestReceiver(PACKAGE_GREEN, CLASS_GREEN));
+        assertNull(msg);
+        verify(mPermissionManager, never()).checkPermissionForDataDelivery(
+                eq(Manifest.permission.PACKAGE_USAGE_STATS), any(), anyString());
+        verify(mPermissionManager).checkPermissionForPreflight(
+                eq(Manifest.permission.PACKAGE_USAGE_STATS), any());
+    }
+
+    @Test
+    public void testShouldSkipAtEnqueueMessage_withRegRcvr_withRequiredPerms_invokesCheckOp() {
+        final BroadcastRecord record = new BroadcastRecordBuilder()
+                .setIntent(new Intent(Intent.ACTION_TIME_TICK))
+                .setRequiredPermissions(new String[] {Manifest.permission.PACKAGE_USAGE_STATS})
+                .build();
+        final ProcessRecord receiverApp = makeProcessRecord(makeApplicationInfo(PACKAGE_GREEN));
+        final String msg = mBroadcastSkipPolicy.shouldSkipAtEnqueueMessage(record,
+                makeRegisteredReceiver(receiverApp, 0 /* priority */,
+                        null /* requiredPermission */));
+        assertNull(msg);
+        verify(mPermissionManager, never()).checkPermissionForDataDelivery(
+                eq(Manifest.permission.PACKAGE_USAGE_STATS), any(), anyString());
+        verify(mPermissionManager).checkPermissionForPreflight(
+                eq(Manifest.permission.PACKAGE_USAGE_STATS), any());
+    }
+
+    private ResolveInfo makeManifestReceiverWithPermission(String packageName, String name,
+            String permission) {
+        final ResolveInfo resolveInfo = makeManifestReceiver(packageName, name);
+        resolveInfo.activityInfo.permission = permission;
+        return resolveInfo;
+    }
+
+    private BroadcastFilter makeRegisteredReceiver(ProcessRecord app, int priority,
+            String requiredPermission) {
+        final IIntentReceiver receiver = mock(IIntentReceiver.class);
+        final ReceiverList receiverList = new ReceiverList(mAms, app, app.getPid(), app.info.uid,
+                UserHandle.getUserId(app.info.uid), receiver);
+        return makeRegisteredReceiver(receiverList, priority, requiredPermission);
+    }
+}
diff --git a/services/tests/mockingservicestests/src/com/android/server/am/CachedAppOptimizerTest.java b/services/tests/mockingservicestests/src/com/android/server/am/CachedAppOptimizerTest.java
index 4b53f13..46bc70e 100644
--- a/services/tests/mockingservicestests/src/com/android/server/am/CachedAppOptimizerTest.java
+++ b/services/tests/mockingservicestests/src/com/android/server/am/CachedAppOptimizerTest.java
@@ -383,6 +383,12 @@
         // When we override new reasonable throttle values after init...
         mCountDown = new CountDownLatch(8);
         DeviceConfig.setProperty(DeviceConfig.NAMESPACE_ACTIVITY_MANAGER,
+                CachedAppOptimizer.KEY_COMPACT_THROTTLE_MIN_OOM_ADJ,
+                Long.toString(CachedAppOptimizer.DEFAULT_COMPACT_THROTTLE_MIN_OOM_ADJ + 1), false);
+        DeviceConfig.setProperty(DeviceConfig.NAMESPACE_ACTIVITY_MANAGER,
+                CachedAppOptimizer.KEY_COMPACT_THROTTLE_MAX_OOM_ADJ,
+                Long.toString(CachedAppOptimizer.DEFAULT_COMPACT_THROTTLE_MAX_OOM_ADJ - 1), false);
+        DeviceConfig.setProperty(DeviceConfig.NAMESPACE_ACTIVITY_MANAGER,
                 CachedAppOptimizer.KEY_COMPACT_THROTTLE_1,
                 Long.toString(CachedAppOptimizer.DEFAULT_COMPACT_THROTTLE_1 + 1), false);
         DeviceConfig.setProperty(DeviceConfig.NAMESPACE_ACTIVITY_MANAGER,
@@ -400,12 +406,6 @@
         DeviceConfig.setProperty(DeviceConfig.NAMESPACE_ACTIVITY_MANAGER,
                 CachedAppOptimizer.KEY_COMPACT_THROTTLE_6,
                 Long.toString(CachedAppOptimizer.DEFAULT_COMPACT_THROTTLE_6 + 1), false);
-        DeviceConfig.setProperty(DeviceConfig.NAMESPACE_ACTIVITY_MANAGER,
-                CachedAppOptimizer.KEY_COMPACT_THROTTLE_MIN_OOM_ADJ,
-                Long.toString(CachedAppOptimizer.DEFAULT_COMPACT_THROTTLE_MIN_OOM_ADJ + 1), false);
-        DeviceConfig.setProperty(DeviceConfig.NAMESPACE_ACTIVITY_MANAGER,
-                CachedAppOptimizer.KEY_COMPACT_THROTTLE_MAX_OOM_ADJ,
-                Long.toString(CachedAppOptimizer.DEFAULT_COMPACT_THROTTLE_MAX_OOM_ADJ - 1), false);
         assertThat(mCountDown.await(7, TimeUnit.SECONDS)).isTrue();
 
         // Then those flags values are reflected in the compactor.
diff --git a/services/tests/mockingservicestests/src/com/android/server/job/controllers/QuotaControllerTest.java b/services/tests/mockingservicestests/src/com/android/server/job/controllers/QuotaControllerTest.java
index 4e4b3df..3e87943 100644
--- a/services/tests/mockingservicestests/src/com/android/server/job/controllers/QuotaControllerTest.java
+++ b/services/tests/mockingservicestests/src/com/android/server/job/controllers/QuotaControllerTest.java
@@ -2388,6 +2388,104 @@
         }
     }
 
+    @Test
+    @EnableFlags({Flags.FLAG_ADJUST_QUOTA_DEFAULT_CONSTANTS,
+            Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER})
+    public void testGetTimeUntilQuotaConsumedLocked_Installer() {
+        PackageInfo pi = new PackageInfo();
+        pi.packageName = SOURCE_PACKAGE;
+        pi.requestedPermissions = new String[]{Manifest.permission.INSTALL_PACKAGES};
+        pi.requestedPermissionsFlags = new int[]{PackageInfo.REQUESTED_PERMISSION_GRANTED};
+        pi.applicationInfo = new ApplicationInfo();
+        pi.applicationInfo.uid = mSourceUid;
+        doReturn(List.of(pi)).when(mPackageManager).getInstalledPackagesAsUser(anyInt(), anyInt());
+        doReturn(PackageManager.PERMISSION_GRANTED).when(mContext).checkPermission(
+                eq(Manifest.permission.INSTALL_PACKAGES), anyInt(), eq(mSourceUid));
+        mQuotaController.onSystemServicesReady();
+
+        final long now = JobSchedulerService.sElapsedRealtimeClock.millis();
+        // Close to RARE boundary.
+        mQuotaController.saveTimingSession(SOURCE_USER_ID, SOURCE_PACKAGE,
+                createTimingSession(
+                        now - (mQcConstants.WINDOW_SIZE_RARE_MS - 30 * SECOND_IN_MILLIS),
+                        90 * SECOND_IN_MILLIS, 5), false);
+        // Far away from FREQUENT boundary.
+        mQuotaController.saveTimingSession(SOURCE_USER_ID, SOURCE_PACKAGE,
+                createTimingSession(
+                        now - (mQcConstants.WINDOW_SIZE_FREQUENT_MS -  HOUR_IN_MILLIS),
+                        2 * MINUTE_IN_MILLIS, 5), false);
+        // Overlap WORKING_SET boundary.
+        mQuotaController.saveTimingSession(SOURCE_USER_ID, SOURCE_PACKAGE,
+                createTimingSession(
+                        now - (mQcConstants.WINDOW_SIZE_WORKING_MS + MINUTE_IN_MILLIS),
+                        2 * MINUTE_IN_MILLIS, 5), false);
+        // Close to ACTIVE boundary.
+        mQuotaController.saveTimingSession(SOURCE_USER_ID, SOURCE_PACKAGE,
+                createTimingSession(
+                        now - (mQcConstants.WINDOW_SIZE_ACTIVE_MS -  MINUTE_IN_MILLIS),
+                        2 * MINUTE_IN_MILLIS, 5), false);
+        // Close to EXEMPTED boundary.
+        mQuotaController.saveTimingSession(SOURCE_USER_ID, SOURCE_PACKAGE,
+                createTimingSession(
+                        now - (mQcConstants.WINDOW_SIZE_EXEMPTED_MS -  MINUTE_IN_MILLIS),
+                        2 * MINUTE_IN_MILLIS, 5), false);
+
+        // No additional quota for the system installer when the app is in RARE, FREQUENT,
+        // WORKING_SET or ACTIVE bucket.
+        setStandbyBucket(RARE_INDEX);
+        synchronized (mQuotaController.mLock) {
+            assertEquals(30 * SECOND_IN_MILLIS,
+                    mQuotaController.getRemainingExecutionTimeLocked(
+                            SOURCE_USER_ID, SOURCE_PACKAGE));
+            assertEquals(2 * MINUTE_IN_MILLIS,
+                    mQuotaController.getTimeUntilQuotaConsumedLocked(
+                            SOURCE_USER_ID, SOURCE_PACKAGE));
+        }
+
+        setStandbyBucket(FREQUENT_INDEX);
+        synchronized (mQuotaController.mLock) {
+            assertEquals(2 * MINUTE_IN_MILLIS,
+                    mQuotaController.getRemainingExecutionTimeLocked(
+                            SOURCE_USER_ID, SOURCE_PACKAGE));
+            assertEquals(2 * MINUTE_IN_MILLIS,
+                    mQuotaController.getTimeUntilQuotaConsumedLocked(
+                            SOURCE_USER_ID, SOURCE_PACKAGE));
+        }
+
+        setStandbyBucket(WORKING_INDEX);
+        synchronized (mQuotaController.mLock) {
+            assertEquals(5 * MINUTE_IN_MILLIS,
+                    mQuotaController.getRemainingExecutionTimeLocked(
+                            SOURCE_USER_ID, SOURCE_PACKAGE));
+            assertEquals(6 * MINUTE_IN_MILLIS,
+                    mQuotaController.getTimeUntilQuotaConsumedLocked(
+                            SOURCE_USER_ID, SOURCE_PACKAGE));
+        }
+
+        // ACTIVE window != allowed time.
+        setStandbyBucket(ACTIVE_INDEX);
+        synchronized (mQuotaController.mLock) {
+            assertEquals(6 * MINUTE_IN_MILLIS,
+                    mQuotaController.getRemainingExecutionTimeLocked(
+                            SOURCE_USER_ID, SOURCE_PACKAGE));
+            assertEquals(8 * MINUTE_IN_MILLIS,
+                    mQuotaController.getTimeUntilQuotaConsumedLocked(
+                            SOURCE_USER_ID, SOURCE_PACKAGE));
+        }
+
+        // Additional quota for the system installer when the app is in EXEMPTED bucket.
+        // EXEMPTED window == allowed time.
+        setStandbyBucket(EXEMPTED_INDEX);
+        synchronized (mQuotaController.mLock) {
+            assertEquals(18 * MINUTE_IN_MILLIS,
+                    mQuotaController.getRemainingExecutionTimeLocked(
+                            SOURCE_USER_ID, SOURCE_PACKAGE));
+            assertEquals(mQcConstants.MAX_EXECUTION_TIME_MS - 8 * MINUTE_IN_MILLIS,
+                    mQuotaController.getTimeUntilQuotaConsumedLocked(
+                            SOURCE_USER_ID, SOURCE_PACKAGE));
+        }
+    }
+
     /**
      * Test getTimeUntilQuotaConsumedLocked when the app is close to the max execution limit.
      */
@@ -4119,6 +4217,12 @@
         assertEquals(85 * SECOND_IN_MILLIS, mQuotaController.getEJRewardNotificationSeenMs());
         assertEquals(84 * SECOND_IN_MILLIS, mQuotaController.getEJGracePeriodTempAllowlistMs());
         assertEquals(83 * SECOND_IN_MILLIS, mQuotaController.getEJGracePeriodTopAppMs());
+
+        mSetFlagsRule.enableFlags(Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER);
+        setDeviceConfigLong(QcConstants.KEY_ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS,
+                6 * MINUTE_IN_MILLIS);
+        assertEquals(6 * MINUTE_IN_MILLIS,
+                mQuotaController.getAllowedTimePeriodAdditionInstallerMs());
     }
 
     @Test
@@ -4222,6 +4326,13 @@
         assertEquals(0, mQuotaController.getEJGracePeriodTempAllowlistMs());
         assertEquals(0, mQuotaController.getEJGracePeriodTopAppMs());
 
+        mSetFlagsRule.enableFlags(Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER);
+        setDeviceConfigLong(QcConstants.KEY_ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS,
+                -MINUTE_IN_MILLIS);
+        assertEquals(0,
+                mQuotaController.getAllowedTimePeriodAdditionInstallerMs());
+        mSetFlagsRule.disableFlags(Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER);
+
         // Invalid configurations.
         // In_QUOTA_BUFFER should never be greater than ALLOWED_TIME_PER_PERIOD
         setDeviceConfigLong(QcConstants.KEY_ALLOWED_TIME_PER_PERIOD_EXEMPTED_MS,
@@ -4237,9 +4348,18 @@
                 10 * MINUTE_IN_MILLIS);
         setDeviceConfigLong(QcConstants.KEY_IN_QUOTA_BUFFER_MS, 5 * MINUTE_IN_MILLIS);
 
-        assertTrue(mQuotaController.getInQuotaBufferMs()
+        assertTrue(mQuotaController.getAllowedTimePeriodAdditionInstallerMs()
                 <= mQuotaController.getAllowedTimePerPeriodMs()[FREQUENT_INDEX]);
 
+        mSetFlagsRule.enableFlags(Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER);
+        // ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER should never be greater than
+        // ALLOWED_TIME_PER_PERIOD.
+        setDeviceConfigLong(QcConstants.KEY_ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS,
+                 15 * MINUTE_IN_MILLIS);
+        assertTrue(mQuotaController.getInQuotaBufferMs()
+                <= mQuotaController.getAllowedTimePerPeriodMs()[EXEMPTED_INDEX]);
+        mSetFlagsRule.disableFlags(Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER);
+
         // Test larger than a day. Controller should cap at one day.
         setDeviceConfigLong(QcConstants.KEY_ALLOWED_TIME_PER_PERIOD_EXEMPTED_MS,
                 25 * HOUR_IN_MILLIS);
@@ -4318,6 +4438,12 @@
         assertEquals(5 * MINUTE_IN_MILLIS, mQuotaController.getEJRewardNotificationSeenMs());
         assertEquals(HOUR_IN_MILLIS, mQuotaController.getEJGracePeriodTempAllowlistMs());
         assertEquals(HOUR_IN_MILLIS, mQuotaController.getEJGracePeriodTopAppMs());
+
+        mSetFlagsRule.enableFlags(Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER);
+        setDeviceConfigLong(QcConstants.KEY_ALLOWED_TIME_PER_PERIOD_ADDITION_INSTALLER_MS,
+                25 * HOUR_IN_MILLIS);
+        assertEquals(0, mQuotaController.getAllowedTimePeriodAdditionInstallerMs());
+        mSetFlagsRule.disableFlags(Flags.FLAG_ADDITIONAL_QUOTA_FOR_SYSTEM_INSTALLER);
     }
 
     /** Tests that TimingSessions aren't saved when the device is charging. */
diff --git a/services/tests/mockingservicestests/src/com/android/server/wallpaper/WallpaperManagerServiceTests.java b/services/tests/mockingservicestests/src/com/android/server/wallpaper/WallpaperManagerServiceTests.java
index bada337..6b8ef88 100644
--- a/services/tests/mockingservicestests/src/com/android/server/wallpaper/WallpaperManagerServiceTests.java
+++ b/services/tests/mockingservicestests/src/com/android/server/wallpaper/WallpaperManagerServiceTests.java
@@ -64,7 +64,6 @@
 import android.content.pm.PackageManager;
 import android.content.pm.ParceledListSlice;
 import android.content.pm.ServiceInfo;
-import android.content.res.Resources;
 import android.graphics.Color;
 import android.hardware.display.DisplayManager;
 import android.hardware.display.DisplayManager.DisplayListener;
@@ -95,6 +94,7 @@
 import com.android.modules.utils.TypedXmlPullParser;
 import com.android.modules.utils.TypedXmlSerializer;
 import com.android.server.LocalServices;
+import com.android.server.wm.DesktopModeHelper;
 import com.android.server.wm.WindowManagerInternal;
 
 import org.hamcrest.CoreMatchers;
@@ -155,8 +155,6 @@
 
     private IPackageManager mIpm = AppGlobals.getPackageManager();
 
-    private Resources mResources = sContext.getResources();
-
     @Mock
     private DisplayManager mDisplayManager;
 
@@ -178,6 +176,7 @@
                 .spyStatic(WallpaperUtils.class)
                 .spyStatic(LocalServices.class)
                 .spyStatic(WallpaperManager.class)
+                .spyStatic(DesktopModeHelper.class)
                 .startMocking();
 
         sWindowManagerInternal = mock(WindowManagerInternal.class);
@@ -246,6 +245,8 @@
             int userId = (invocation.getArgument(0));
             return getWallpaperTestDir(userId);
         }).when(() -> WallpaperUtils.getWallpaperDir(anyInt()));
+        ExtendedMockito.doAnswer(invocation -> true).when(
+                () -> DesktopModeHelper.isDeviceEligibleForDesktopMode(any()));
 
         sContext.addMockSystemService(DisplayManager.class, mDisplayManager);
 
@@ -257,10 +258,6 @@
         doReturn(displays).when(mDisplayManager).getDisplays();
 
         spyOn(mIpm);
-        spyOn(mResources);
-        doReturn(true).when(mResources).getBoolean(eq(R.bool.config_isDesktopModeSupported));
-        doReturn(true).when(mResources).getBoolean(
-                eq(R.bool.config_canInternalDisplayHostDesktops));
         mService = new TestWallpaperManagerService(sContext);
         spyOn(mService);
         mService.systemReady();
diff --git a/services/tests/powerstatstests/src/com/android/server/power/stats/BatteryStatsHistoryTest.java b/services/tests/powerstatstests/src/com/android/server/power/stats/BatteryStatsHistoryTest.java
index 8fad931..5165e34 100644
--- a/services/tests/powerstatstests/src/com/android/server/power/stats/BatteryStatsHistoryTest.java
+++ b/services/tests/powerstatstests/src/com/android/server/power/stats/BatteryStatsHistoryTest.java
@@ -456,6 +456,8 @@
     }
 
     private void fillActiveFile(BatteryStatsHistory history) {
+        awaitCompletion();      // Wait for BatteryHistoryDirectory.trim if necessary.
+
         // Create roughly 1K of history
         int initialSize = history.getHistoryUsedSize();
         while (history.getHistoryUsedSize() < initialSize + 1000) {
diff --git a/services/tests/servicestests/Android.bp b/services/tests/servicestests/Android.bp
index 009ce88..d702cae 100644
--- a/services/tests/servicestests/Android.bp
+++ b/services/tests/servicestests/Android.bp
@@ -33,9 +33,6 @@
         "test-apps/DisplayManagerTestApp/src/**/*.java",
     ],
 
-    kotlincflags: [
-        "-Werror",
-    ],
     static_libs: [
         "a11ychecker",
         "aatf",
diff --git a/services/tests/servicestests/src/com/android/server/accessibility/autoclick/AutoclickControllerTest.java b/services/tests/servicestests/src/com/android/server/accessibility/autoclick/AutoclickControllerTest.java
index 0745c68..17d8882 100644
--- a/services/tests/servicestests/src/com/android/server/accessibility/autoclick/AutoclickControllerTest.java
+++ b/services/tests/servicestests/src/com/android/server/accessibility/autoclick/AutoclickControllerTest.java
@@ -41,6 +41,7 @@
 import android.view.WindowManager;
 import android.view.accessibility.AccessibilityManager;
 
+import com.android.internal.accessibility.util.AccessibilityUtils;
 import com.android.server.accessibility.AccessibilityTraceManager;
 
 import org.junit.After;
@@ -79,7 +80,9 @@
 
     @After
     public void tearDown() {
+        mController.onDestroy();
         mTestableLooper.processAllMessages();
+        TestableLooper.remove(this);
     }
 
     @Test
@@ -403,6 +406,133 @@
 
     @Test
     @EnableFlags(com.android.server.accessibility.Flags.FLAG_ENABLE_AUTOCLICK_INDICATOR)
+    public void onCursorAreaSizeSettingsChange_moveWithinCustomRadius_clickNotTriggered() {
+        // Move mouse to initialize autoclick panel before enabling ignore minor cursor movement.
+        injectFakeMouseActionHoverMoveEvent();
+        enableIgnoreMinorCursorMovement();
+
+        // Set a custom cursor area size.
+        int customSize = 250;
+        Settings.Secure.putIntForUser(mTestableContext.getContentResolver(),
+                Settings.Secure.ACCESSIBILITY_AUTOCLICK_CURSOR_AREA_SIZE,
+                customSize,
+                mTestableContext.getUserId());
+        mController.onChangeForTesting(/* selfChange= */ true,
+                Settings.Secure.getUriFor(
+                        Settings.Secure.ACCESSIBILITY_AUTOCLICK_CURSOR_AREA_SIZE));
+        assertThat(mController.mAutoclickIndicatorView.getRadiusForTesting()).isEqualTo(customSize);
+
+        // Move the mouse down, less than customSize radius so a click is not triggered.
+        float moveDownY = customSize - 25;
+        MotionEvent hoverMove = MotionEvent.obtain(
+                /* downTime= */ 0,
+                /* eventTime= */ 150,
+                /* action= */ MotionEvent.ACTION_HOVER_MOVE,
+                /* x= */ 0f,
+                /* y= */ moveDownY,
+                /* metaState= */ 0);
+        hoverMove.setSource(InputDevice.SOURCE_MOUSE);
+        mController.onMotionEvent(hoverMove, hoverMove, /* policyFlags= */ 0);
+        assertThat(mController.mClickScheduler.getIsActiveForTesting()).isFalse();
+    }
+
+    @Test
+    @EnableFlags(com.android.server.accessibility.Flags.FLAG_ENABLE_AUTOCLICK_INDICATOR)
+    public void onCursorAreaSizeSettingsChange_moveOutsideCustomRadius_clickTriggered() {
+        // Move mouse to initialize autoclick panel before enabling ignore minor cursor movement.
+        injectFakeMouseActionHoverMoveEvent();
+        enableIgnoreMinorCursorMovement();
+
+        // Set a custom cursor area size.
+        int customSize = 250;
+        Settings.Secure.putIntForUser(mTestableContext.getContentResolver(),
+                Settings.Secure.ACCESSIBILITY_AUTOCLICK_CURSOR_AREA_SIZE,
+                customSize,
+                mTestableContext.getUserId());
+        mController.onChangeForTesting(/* selfChange= */ true,
+                Settings.Secure.getUriFor(
+                        Settings.Secure.ACCESSIBILITY_AUTOCLICK_CURSOR_AREA_SIZE));
+        assertThat(mController.mAutoclickIndicatorView.getRadiusForTesting()).isEqualTo(customSize);
+
+        // Move the mouse right, greater than customSize radius so a click is triggered.
+        float moveRightX = customSize + 100;
+        MotionEvent hoverMove = MotionEvent.obtain(
+                /* downTime= */ 0,
+                /* eventTime= */ 200,
+                /* action= */ MotionEvent.ACTION_HOVER_MOVE,
+                /* x= */ moveRightX,
+                /* y= */ 0,
+                /* metaState= */ 0);
+        hoverMove.setSource(InputDevice.SOURCE_MOUSE);
+        mController.onMotionEvent(hoverMove, hoverMove, /* policyFlags= */ 0);
+        assertThat(mController.mClickScheduler.getIsActiveForTesting()).isTrue();
+    }
+
+    @Test
+    @EnableFlags(com.android.server.accessibility.Flags.FLAG_ENABLE_AUTOCLICK_INDICATOR)
+    public void onIgnoreCursorMovementFromSettingsChange_clickTriggered() {
+        // Send initial mouse movement.
+        injectFakeMouseActionHoverMoveEvent();
+
+        // Set a custom cursor area size.
+        int customSize = 250;
+        Settings.Secure.putIntForUser(mTestableContext.getContentResolver(),
+                Settings.Secure.ACCESSIBILITY_AUTOCLICK_CURSOR_AREA_SIZE,
+                customSize,
+                mTestableContext.getUserId());
+        mController.onChangeForTesting(/* selfChange= */ true,
+                Settings.Secure.getUriFor(
+                        Settings.Secure.ACCESSIBILITY_AUTOCLICK_CURSOR_AREA_SIZE));
+
+        // Move the mouse down less than customSize radius but ignore custom movement is not enabled
+        // so a click is triggered.
+        float moveDownY = customSize - 100;
+        MotionEvent hoverMove = MotionEvent.obtain(
+                /* downTime= */ 0,
+                /* eventTime= */ 150,
+                /* action= */ MotionEvent.ACTION_HOVER_MOVE,
+                /* x= */ 0f,
+                /* y= */ moveDownY,
+                /* metaState= */ 0);
+        hoverMove.setSource(InputDevice.SOURCE_MOUSE);
+        mController.onMotionEvent(hoverMove, hoverMove, /* policyFlags= */ 0);
+        assertThat(mController.mClickScheduler.getIsActiveForTesting()).isTrue();
+    }
+
+    @Test
+    @EnableFlags(com.android.server.accessibility.Flags.FLAG_ENABLE_AUTOCLICK_INDICATOR)
+    public void onIgnoreCursorMovementFromSettingsChange_clickNotTriggered() {
+        // Move mouse to initialize autoclick panel before enabling ignore minor cursor movement.
+        injectFakeMouseActionHoverMoveEvent();
+        enableIgnoreMinorCursorMovement();
+
+        // Set a custom cursor area size.
+        int customSize = 250;
+        Settings.Secure.putIntForUser(mTestableContext.getContentResolver(),
+                Settings.Secure.ACCESSIBILITY_AUTOCLICK_CURSOR_AREA_SIZE,
+                customSize,
+                mTestableContext.getUserId());
+        mController.onChangeForTesting(/* selfChange= */ true,
+                Settings.Secure.getUriFor(
+                        Settings.Secure.ACCESSIBILITY_AUTOCLICK_CURSOR_AREA_SIZE));
+
+        // After enabling ignore custom movement, move the mouse right, less than customSize radius
+        // so a click won't be triggered.
+        float moveRightX = customSize - 100;
+        MotionEvent hoverMove = MotionEvent.obtain(
+                /* downTime= */ 0,
+                /* eventTime= */ 200,
+                /* action= */ MotionEvent.ACTION_HOVER_MOVE,
+                /* x= */ moveRightX,
+                /* y= */ 0,
+                /* metaState= */ 0);
+        hoverMove.setSource(InputDevice.SOURCE_MOUSE);
+        mController.onMotionEvent(hoverMove, hoverMove, /* policyFlags= */ 0);
+        assertThat(mController.mClickScheduler.getIsActiveForTesting()).isFalse();
+    }
+
+    @Test
+    @EnableFlags(com.android.server.accessibility.Flags.FLAG_ENABLE_AUTOCLICK_INDICATOR)
     public void pauseButton_flagOn_clickNotTriggeredWhenPaused() {
         injectFakeMouseActionHoverMoveEvent();
 
@@ -473,4 +603,14 @@
                 /* y= */ 0,
                 /* metaState= */ 0);
     }
+
+    private void enableIgnoreMinorCursorMovement() {
+        Settings.Secure.putIntForUser(mTestableContext.getContentResolver(),
+                Settings.Secure.ACCESSIBILITY_AUTOCLICK_IGNORE_MINOR_CURSOR_MOVEMENT,
+                AccessibilityUtils.State.ON,
+                mTestableContext.getUserId());
+        mController.onChangeForTesting(/* selfChange= */ true,
+                Settings.Secure.getUriFor(
+                        Settings.Secure.ACCESSIBILITY_AUTOCLICK_IGNORE_MINOR_CURSOR_MOVEMENT));
+    }
 }
diff --git a/services/tests/servicestests/src/com/android/server/accessibility/autoclick/AutoclickTypePanelTest.java b/services/tests/servicestests/src/com/android/server/accessibility/autoclick/AutoclickTypePanelTest.java
index c60c4b6..9e12340 100644
--- a/services/tests/servicestests/src/com/android/server/accessibility/autoclick/AutoclickTypePanelTest.java
+++ b/services/tests/servicestests/src/com/android/server/accessibility/autoclick/AutoclickTypePanelTest.java
@@ -16,6 +16,8 @@
 
 package com.android.server.accessibility.autoclick;
 
+import static android.provider.Settings.Secure.ACCESSIBILITY_AUTOCLICK_PANEL_POSITION;
+
 import static androidx.test.platform.app.InstrumentationRegistry.getInstrumentation;
 
 import static com.android.server.accessibility.autoclick.AutoclickTypePanel.AUTOCLICK_TYPE_LEFT_CLICK;
@@ -23,13 +25,16 @@
 import static com.android.server.accessibility.autoclick.AutoclickTypePanel.AutoclickType;
 import static com.android.server.accessibility.autoclick.AutoclickTypePanel.CORNER_BOTTOM_LEFT;
 import static com.android.server.accessibility.autoclick.AutoclickTypePanel.CORNER_BOTTOM_RIGHT;
+import static com.android.server.accessibility.autoclick.AutoclickTypePanel.CORNER_TOP_LEFT;
 import static com.android.server.accessibility.autoclick.AutoclickTypePanel.CORNER_TOP_RIGHT;
 import static com.android.server.accessibility.autoclick.AutoclickTypePanel.ClickPanelControllerInterface;
+import static com.android.server.accessibility.autoclick.AutoclickTypePanel.POSITION_DELIMITER;
 
 import static com.google.common.truth.Truth.assertThat;
 
 import android.content.Context;
 import android.graphics.drawable.GradientDrawable;
+import android.provider.Settings;
 import android.testing.AndroidTestingRunner;
 import android.testing.TestableContext;
 import android.testing.TestableLooper;
@@ -92,7 +97,8 @@
         mTestableContext.addMockSystemService(Context.WINDOW_SERVICE, mMockWindowManager);
 
         mAutoclickTypePanel =
-                new AutoclickTypePanel(mTestableContext, mMockWindowManager, clickPanelController);
+                new AutoclickTypePanel(mTestableContext, mMockWindowManager,
+                        mTestableContext.getUserId(), clickPanelController);
         View contentView = mAutoclickTypePanel.getContentViewForTesting();
         mLeftClickButton = contentView.findViewById(R.id.accessibility_autoclick_left_click_layout);
         mRightClickButton =
@@ -294,6 +300,96 @@
                 .isEqualTo(CORNER_BOTTOM_LEFT);
     }
 
+    @Test
+    public void restorePanelPosition_noSavedPosition_useDefault() {
+        // Given no saved position in Settings.
+        Settings.Secure.putString(mTestableContext.getContentResolver(),
+                ACCESSIBILITY_AUTOCLICK_PANEL_POSITION, null);
+
+        // Create panel which triggers position restoration internally.
+        AutoclickTypePanel panel = new AutoclickTypePanel(mTestableContext, mMockWindowManager,
+                mTestableContext.getUserId(),
+                clickPanelController);
+
+        // Verify panel is positioned at default bottom-right corner.
+        WindowManager.LayoutParams params = panel.getLayoutParamsForTesting();
+        assertThat(panel.getCurrentCornerIndexForTesting()).isEqualTo(CORNER_BOTTOM_RIGHT);
+        assertThat(params.gravity).isEqualTo(Gravity.END | Gravity.BOTTOM);
+        assertThat(params.x).isEqualTo(15);  // Default edge margin.
+        assertThat(params.y).isEqualTo(90);  // Default bottom offset.
+    }
+
+    @Test
+    public void restorePanelPosition_position_button() {
+        // Move panel to top-left by clicking position button twice.
+        mPositionButton.callOnClick();
+        mPositionButton.callOnClick();
+
+        // Hide panel to trigger position saving.
+        mAutoclickTypePanel.hide();
+
+        // Verify position is correctly saved in Settings.
+        String savedPosition = Settings.Secure.getStringForUser(
+                mTestableContext.getContentResolver(),
+                ACCESSIBILITY_AUTOCLICK_PANEL_POSITION, mTestableContext.getUserId());
+        String[] parts = savedPosition.split(POSITION_DELIMITER);
+        assertThat(parts).hasLength(4);
+        assertThat(Integer.parseInt(parts[0])).isEqualTo(Gravity.START | Gravity.TOP);
+        assertThat(Integer.parseInt(parts[1])).isEqualTo(15);
+        assertThat(Integer.parseInt(parts[2])).isEqualTo(30);
+        assertThat(Integer.parseInt(parts[3])).isEqualTo(CORNER_TOP_LEFT);
+
+        // Show panel to trigger position restoration.
+        mAutoclickTypePanel.show();
+
+        // Then verify position is restored correctly.
+        WindowManager.LayoutParams params = mAutoclickTypePanel.getLayoutParamsForTesting();
+        assertThat(params.gravity).isEqualTo(Gravity.START | Gravity.TOP);
+        assertThat(params.x).isEqualTo(15);
+        assertThat(params.y).isEqualTo(30);
+        assertThat(mAutoclickTypePanel.getCurrentCornerIndexForTesting()).isEqualTo(
+                CORNER_TOP_LEFT);
+    }
+
+    @Test
+    public void restorePanelPosition_dragToLeft() {
+        // Get initial panel position.
+        View contentView = mAutoclickTypePanel.getContentViewForTesting();
+        int[] panelLocation = new int[2];
+        contentView.getLocationOnScreen(panelLocation);
+
+        // Simulate drag from initial position to left side of screen.
+        int screenWidth = mTestableContext.getResources().getDisplayMetrics().widthPixels;
+        dispatchDragSequence(contentView,
+                /* startX =*/ panelLocation[0], /* startY =*/ panelLocation[1],
+                /* endX =*/ (float) screenWidth / 4, /* endY =*/ panelLocation[1] + 10);
+
+        // Hide panel to trigger position saving.
+        mAutoclickTypePanel.hide();
+
+        // Verify position is saved correctly.
+        String savedPosition = Settings.Secure.getStringForUser(
+                mTestableContext.getContentResolver(),
+                ACCESSIBILITY_AUTOCLICK_PANEL_POSITION, mTestableContext.getUserId());
+        String[] parts = savedPosition.split(POSITION_DELIMITER);
+        assertThat(parts).hasLength(4);
+        assertThat(Integer.parseInt(parts[0])).isEqualTo(Gravity.START | Gravity.TOP);
+        assertThat(Integer.parseInt(parts[1])).isEqualTo(15);
+        assertThat(Integer.parseInt(parts[2])).isEqualTo(panelLocation[1] + 10);
+        assertThat(Integer.parseInt(parts[3])).isEqualTo(CORNER_BOTTOM_LEFT);
+
+        // Show panel to trigger position restoration.
+        mAutoclickTypePanel.show();
+
+        // Then verify dragged position is restored.
+        WindowManager.LayoutParams params = mAutoclickTypePanel.getLayoutParamsForTesting();
+        assertThat(params.gravity).isEqualTo(Gravity.START | Gravity.TOP);
+        assertThat(params.x).isEqualTo(15); // PANEL_EDGE_MARGIN
+        assertThat(params.y).isEqualTo(panelLocation[1] + 10);
+        assertThat(mAutoclickTypePanel.getCurrentCornerIndexForTesting()).isEqualTo(
+                CORNER_BOTTOM_LEFT);
+    }
+
     // Helper method to handle drag event sequences
     private void dispatchDragSequence(View view, float startX, float startY, float endX,
             float endY) {
diff --git a/services/tests/servicestests/src/com/android/server/hdmi/ActiveSourceActionTest.java b/services/tests/servicestests/src/com/android/server/hdmi/ActiveSourceActionTest.java
index fcde405..c84cc00 100644
--- a/services/tests/servicestests/src/com/android/server/hdmi/ActiveSourceActionTest.java
+++ b/services/tests/servicestests/src/com/android/server/hdmi/ActiveSourceActionTest.java
@@ -60,6 +60,7 @@
     private TestLooper mTestLooper = new TestLooper();
     private ArrayList<HdmiCecLocalDevice> mLocalDevices = new ArrayList<>();
     private int mPhysicalAddress;
+    private boolean mIsPowerStandby;
 
     @Before
     public void setUp() throws Exception {
@@ -68,12 +69,13 @@
                         .hasSystemFeature(FEATURE_HDMI_CEC));
         mContextSpy = spy(new ContextWrapper(InstrumentationRegistry.getTargetContext()));
 
+        mIsPowerStandby = false;
         FakeAudioFramework audioFramework = new FakeAudioFramework();
         mHdmiControlService = new HdmiControlService(mContextSpy, Collections.emptyList(),
                 audioFramework.getAudioManager(), audioFramework.getAudioDeviceVolumeManager()) {
             @Override
             boolean isPowerStandby() {
-                return false;
+                return mIsPowerStandby;
             }
 
             @Override
@@ -151,4 +153,41 @@
         assertThat(playbackDevice.getActiveSource().physicalAddress).isEqualTo(mPhysicalAddress);
         assertThat(playbackDevice.isActiveSource()).isTrue();
     }
+
+    @Test
+    public void onActiveSourceLost_removePendingActiveSourceAction() {
+        HdmiCecLocalDevicePlayback playbackDevice = new HdmiCecLocalDevicePlayback(
+                mHdmiControlService);
+        playbackDevice.init();
+        mLocalDevices.add(playbackDevice);
+        mHdmiControlService.allocateLogicalAddress(mLocalDevices, INITIATED_BY_ENABLE_CEC);
+        mIsPowerStandby = true;
+        mTestLooper.dispatchAll();
+
+        mNativeWrapper.clearResultMessages();
+        mTestLooper.dispatchAll();
+
+        int otherPlaybackLogicalAddress = playbackDevice.getDeviceInfo().getLogicalAddress()
+                == Constants.ADDR_PLAYBACK_2
+                ? Constants.ADDR_PLAYBACK_1 : Constants.ADDR_PLAYBACK_2;
+        HdmiCecMessage activeSourceFromOtherDevice =
+                HdmiCecMessageBuilder.buildActiveSource(
+                        otherPlaybackLogicalAddress, 0x2200);
+        HdmiCecMessage activeSourceFromDevice =
+                HdmiCecMessageBuilder.buildActiveSource(
+                        playbackDevice.getDeviceInfo().getLogicalAddress(), mPhysicalAddress);
+
+        HdmiCecFeatureAction action = new com.android.server.hdmi.ActiveSourceAction(
+                playbackDevice, ADDR_TV);
+        playbackDevice.addAndStartAction(action);
+        mTestLooper.dispatchAll();
+
+        assertThat(playbackDevice.getActions(ActiveSourceAction.class)).hasSize(1);
+        playbackDevice.handleActiveSource(activeSourceFromOtherDevice);
+        mTestLooper.dispatchAll();
+
+        // Action is removed
+        assertThat(playbackDevice.getActions(ActiveSourceAction.class)).hasSize(0);
+        assertThat(mNativeWrapper.getResultMessages()).doesNotContain(activeSourceFromDevice);
+    }
 }
diff --git a/services/tests/servicestests/src/com/android/server/hdmi/HdmiCecLocalDeviceTvTest.java b/services/tests/servicestests/src/com/android/server/hdmi/HdmiCecLocalDeviceTvTest.java
index 563baac..b0ffebb 100644
--- a/services/tests/servicestests/src/com/android/server/hdmi/HdmiCecLocalDeviceTvTest.java
+++ b/services/tests/servicestests/src/com/android/server/hdmi/HdmiCecLocalDeviceTvTest.java
@@ -2441,6 +2441,80 @@
         assertFalse(mWasCecDisabledOnStandbyByLowEnergyMode);
     }
 
+    @Test
+    public void sendSystemAudioModeRequest_sendsRequest_retry() throws Exception {
+        // Enable System Audio Control
+        mHdmiControlService.getHdmiCecConfig().setIntValue(
+                HdmiControlManager.CEC_SETTING_NAME_SYSTEM_AUDIO_CONTROL,
+                HdmiControlManager.SYSTEM_AUDIO_CONTROL_ENABLED);
+        mNativeWrapper.setPortConnectionStatus(1, true);
+
+        HdmiCecMessage reportPhysicalAddress =
+                HdmiCecMessageBuilder.buildReportPhysicalAddressCommand(
+                        ADDR_AUDIO_SYSTEM, 0x1000, HdmiDeviceInfo.DEVICE_AUDIO_SYSTEM);
+        HdmiCecMessage reportPowerStatus =
+                HdmiCecMessageBuilder.buildReportPowerStatus(ADDR_AUDIO_SYSTEM, ADDR_TV,
+                        HdmiControlManager.POWER_STATUS_STANDBY);
+        mNativeWrapper.onCecMessage(reportPhysicalAddress);
+        mNativeWrapper.onCecMessage(reportPowerStatus);
+        mTestLooper.dispatchAll();
+
+        mNativeWrapper.setMessageSendResult(Constants.MESSAGE_SYSTEM_AUDIO_MODE_REQUEST,
+                SendMessageResult.NACK);
+        mTestLooper.dispatchAll();
+
+        // Use SystemAudioAutoInitiationAction to trigger SystemAudioActionFromTv
+        HdmiCecFeatureAction systemAudioAutoInitiationAction =
+                new SystemAudioAutoInitiationAction(mHdmiCecLocalDeviceTv, ADDR_AUDIO_SYSTEM);
+        mHdmiCecLocalDeviceTv.addAndStartAction(systemAudioAutoInitiationAction);
+        HdmiCecMessage reportSystemAudioMode =
+                HdmiCecMessageBuilder.buildReportSystemAudioMode(
+                        ADDR_AUDIO_SYSTEM,
+                        mHdmiCecLocalDeviceTv.getDeviceInfo().getLogicalAddress(),
+                        true);
+        mHdmiControlService.handleCecCommand(reportSystemAudioMode);
+        mTestLooper.dispatchAll();
+
+        assertThat(mHdmiCecLocalDeviceTv.getActions(SystemAudioActionFromTv.class)).hasSize(1);
+    }
+
+    @Test
+    public void sendSystemAudioModeRequest_sendsRequest_return() throws Exception {
+        // Enable System Audio Control
+        mHdmiControlService.getHdmiCecConfig().setIntValue(
+                HdmiControlManager.CEC_SETTING_NAME_SYSTEM_AUDIO_CONTROL,
+                HdmiControlManager.SYSTEM_AUDIO_CONTROL_ENABLED);
+        mNativeWrapper.setPortConnectionStatus(1, true);
+
+        HdmiCecMessage reportPhysicalAddress =
+                HdmiCecMessageBuilder.buildReportPhysicalAddressCommand(
+                        ADDR_AUDIO_SYSTEM, 0x1000, HdmiDeviceInfo.DEVICE_AUDIO_SYSTEM);
+        HdmiCecMessage reportPowerStatus =
+                HdmiCecMessageBuilder.buildReportPowerStatus(ADDR_AUDIO_SYSTEM, ADDR_TV,
+                        HdmiControlManager.POWER_STATUS_STANDBY);
+        mNativeWrapper.onCecMessage(reportPhysicalAddress);
+        mNativeWrapper.onCecMessage(reportPowerStatus);
+        mTestLooper.dispatchAll();
+
+        mNativeWrapper.setMessageSendResult(Constants.MESSAGE_SYSTEM_AUDIO_MODE_REQUEST,
+                SendMessageResult.FAIL);
+        mTestLooper.dispatchAll();
+
+        // Use SystemAudioAutoInitiationAction to trigger SystemAudioActionFromTv
+        HdmiCecFeatureAction systemAudioAutoInitiationAction =
+                new SystemAudioAutoInitiationAction(mHdmiCecLocalDeviceTv, ADDR_AUDIO_SYSTEM);
+        mHdmiCecLocalDeviceTv.addAndStartAction(systemAudioAutoInitiationAction);
+        HdmiCecMessage reportSystemAudioMode =
+                HdmiCecMessageBuilder.buildReportSystemAudioMode(
+                        ADDR_AUDIO_SYSTEM,
+                        mHdmiCecLocalDeviceTv.getDeviceInfo().getLogicalAddress(),
+                        true);
+        mHdmiControlService.handleCecCommand(reportSystemAudioMode);
+        mTestLooper.dispatchAll();
+
+        assertThat(mHdmiCecLocalDeviceTv.getActions(SystemAudioActionFromTv.class)).hasSize(0);
+    }
+
     protected static class MockTvDevice extends HdmiCecLocalDeviceTv {
         MockTvDevice(HdmiControlService service) {
             super(service);
diff --git a/services/tests/servicestests/src/com/android/server/location/contexthub/ContextHubEndpointTest.java b/services/tests/servicestests/src/com/android/server/location/contexthub/ContextHubEndpointTest.java
index a4e77c0..1de864c 100644
--- a/services/tests/servicestests/src/com/android/server/location/contexthub/ContextHubEndpointTest.java
+++ b/services/tests/servicestests/src/com/android/server/location/contexthub/ContextHubEndpointTest.java
@@ -17,9 +17,9 @@
 package com.android.server.location.contexthub;
 
 import static com.google.common.truth.Truth.assertThat;
-
 import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.timeout;
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
@@ -33,15 +33,21 @@
 import android.hardware.contexthub.IContextHubEndpoint;
 import android.hardware.contexthub.IContextHubEndpointCallback;
 import android.hardware.contexthub.IEndpointCommunication;
+import android.hardware.contexthub.Message;
 import android.hardware.contexthub.MessageDeliveryStatus;
 import android.hardware.contexthub.Reason;
+import android.hardware.location.IContextHubTransactionCallback;
+import android.hardware.location.NanoAppState;
 import android.os.Binder;
 import android.os.RemoteException;
 import android.platform.test.annotations.Presubmit;
-
+import android.util.Log;
 import androidx.test.ext.junit.runners.AndroidJUnit4;
 import androidx.test.platform.app.InstrumentationRegistry;
 
+import java.util.Collections;
+import java.util.List;
+
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
@@ -51,11 +57,11 @@
 import org.mockito.junit.MockitoJUnit;
 import org.mockito.junit.MockitoRule;
 
-import java.util.Collections;
-
 @RunWith(AndroidJUnit4.class)
 @Presubmit
 public class ContextHubEndpointTest {
+    private static final String TAG = "ContextHubEndpointTest";
+
     private static final int SESSION_ID_RANGE = ContextHubEndpointManager.SERVICE_SESSION_RANGE;
     private static final int MIN_SESSION_ID = 0;
     private static final int MAX_SESSION_ID = MIN_SESSION_ID + SESSION_ID_RANGE - 1;
@@ -206,6 +212,68 @@
         assertThat(mEndpointManager.getNumAvailableSessions()).isEqualTo(SESSION_ID_RANGE);
     }
 
+    @Test
+    public void testMessageTransaction() throws RemoteException {
+        IContextHubEndpoint endpoint = registerExampleEndpoint();
+        testMessageTransactionInternal(endpoint, /* deliverMessageStatus= */ true);
+
+        unregisterExampleEndpoint(endpoint);
+    }
+
+    @Test
+    public void testMessageTransactionCleanupOnUnregistration() throws RemoteException {
+        IContextHubEndpoint endpoint = registerExampleEndpoint();
+        testMessageTransactionInternal(endpoint, /* deliverMessageStatus= */ false);
+
+        unregisterExampleEndpoint(endpoint);
+        assertThat(mTransactionManager.numReliableMessageTransactionPending()).isEqualTo(0);
+    }
+
+    /** A helper method to create a session and validates reliable message sending. */
+    private void testMessageTransactionInternal(
+            IContextHubEndpoint endpoint, boolean deliverMessageStatus) throws RemoteException {
+        HubEndpointInfo targetInfo =
+                new HubEndpointInfo(
+                        TARGET_ENDPOINT_NAME,
+                        TARGET_ENDPOINT_ID,
+                        ENDPOINT_PACKAGE_NAME,
+                        Collections.emptyList());
+        int sessionId = endpoint.openSession(targetInfo, /* serviceDescriptor= */ null);
+        mEndpointManager.onEndpointSessionOpenComplete(sessionId);
+
+        final int messageType = 1234;
+        HubMessage message =
+                new HubMessage.Builder(messageType, new byte[] {1, 2, 3, 4, 5})
+                        .setResponseRequired(true)
+                        .build();
+        IContextHubTransactionCallback callback =
+                new IContextHubTransactionCallback.Stub() {
+                    @Override
+                    public void onQueryResponse(int result, List<NanoAppState> nanoappList) {
+                        Log.i(TAG, "Received onQueryResponse callback, result=" + result);
+                    }
+
+                    @Override
+                    public void onTransactionComplete(int result) {
+                        Log.i(TAG, "Received onTransactionComplete callback, result=" + result);
+                    }
+                };
+        endpoint.sendMessage(sessionId, message, callback);
+        ArgumentCaptor<Message> messageCaptor = ArgumentCaptor.forClass(Message.class);
+        verify(mMockEndpointCommunications, timeout(1000))
+                .sendMessageToEndpoint(eq(sessionId), messageCaptor.capture());
+        Message halMessage = messageCaptor.getValue();
+        assertThat(halMessage.type).isEqualTo(message.getMessageType());
+        assertThat(halMessage.content).isEqualTo(message.getMessageBody());
+        assertThat(mTransactionManager.numReliableMessageTransactionPending()).isEqualTo(1);
+
+        if (deliverMessageStatus) {
+            mEndpointManager.onMessageDeliveryStatusReceived(
+                    sessionId, halMessage.sequenceNumber, ErrorCode.OK);
+            assertThat(mTransactionManager.numReliableMessageTransactionPending()).isEqualTo(0);
+        }
+    }
+
     private IContextHubEndpoint registerExampleEndpoint() throws RemoteException {
         HubEndpointInfo info =
                 new HubEndpointInfo(
diff --git a/services/tests/servicestests/src/com/android/server/pm/ShortcutManagerTest1.java b/services/tests/servicestests/src/com/android/server/pm/ShortcutManagerTest1.java
index d6de314..bbc2cb2 100644
--- a/services/tests/servicestests/src/com/android/server/pm/ShortcutManagerTest1.java
+++ b/services/tests/servicestests/src/com/android/server/pm/ShortcutManagerTest1.java
@@ -196,7 +196,7 @@
     /**
      * Test for the restoration from saved file.
      */
-    public void testInitializeFromSavedFile() {
+    public void disabled_testInitializeFromSavedFile() {
 
         mInjectedCurrentTimeMillis = START_TIME + 4 * INTERVAL + 50;
         assertResetTimes(START_TIME + 4 * INTERVAL, START_TIME + 5 * INTERVAL);
@@ -220,7 +220,7 @@
         // TODO Add various broken cases.
     }
 
-    public void testLoadConfig() {
+    public void disabled_testLoadConfig() {
         mService.updateConfigurationLocked(
                 ConfigConstants.KEY_RESET_INTERVAL_SEC + "=123,"
                         + ConfigConstants.KEY_MAX_SHORTCUTS + "=4,"
@@ -270,13 +270,13 @@
         assertEquals(MAX_UPDATES_PER_INTERVAL, mManager.getRemainingCallCount());
     }
 
-    public void testGetIconMaxDimensions() {
+    public void disabled_testGetIconMaxDimensions() {
         assertEquals(MAX_ICON_DIMENSION, mManager.getIconMaxWidth());
         assertEquals(MAX_ICON_DIMENSION, mManager.getIconMaxHeight());
     }
 
     /** Test for {@link android.content.pm.ShortcutManager#getRateLimitResetTime()} */
-    public void testGetRateLimitResetTime() {
+    public void disabled_testGetRateLimitResetTime() {
         assertEquals(START_TIME + INTERVAL, mManager.getRateLimitResetTime());
 
         mInjectedCurrentTimeMillis = START_TIME + 4 * INTERVAL + 50;
@@ -354,7 +354,7 @@
         });
     }
 
-    public void testAddDynamicShortcuts() {
+    public void disabled_testAddDynamicShortcuts() {
         setCaller(CALLING_PACKAGE_1, USER_10);
 
         final ShortcutInfo si1 = makeShortcut("shortcut1");
@@ -752,7 +752,7 @@
         });
     }
 
-    public void testDeleteDynamicShortcuts() {
+    public void disabled_testDeleteDynamicShortcuts() {
         final ShortcutInfo si1 = makeShortcut("shortcut1");
         final ShortcutInfo si2 = makeShortcut("shortcut2");
         final ShortcutInfo si3 = makeShortcut("shortcut3");
@@ -822,7 +822,7 @@
         assertEquals(1, mManager.getRemainingCallCount());
     }
 
-    public void testIcons() throws IOException {
+    public void disabled_testIcons() throws IOException {
         final Icon res32x32 = Icon.createWithResource(getTestContext(), R.drawable.black_32x32);
         final Icon res64x64 = Icon.createWithResource(getTestContext(), R.drawable.black_64x64);
         final Icon res512x512 = Icon.createWithResource(getTestContext(), R.drawable.black_512x512);
@@ -1228,7 +1228,7 @@
         return out.getFile();
     }
 
-    public void testOpenIconFileForWrite() throws IOException {
+    public void disabled_testOpenIconFileForWrite() throws IOException {
         mInjectedCurrentTimeMillis = 1000;
 
         final File p10_1_1 = openIconFileForWriteAndGetPath(10, CALLING_PACKAGE_1);
@@ -1618,7 +1618,7 @@
         assertShortcutIds(mManager.getShortcuts(ShortcutManager.FLAG_MATCH_CACHED), "s1", "s2");
     }
 
-    public void testCachedShortcuts() {
+    public void disabled_testCachedShortcuts() {
         runWithCaller(CALLING_PACKAGE_1, USER_10, () -> {
             assertTrue(mManager.setDynamicShortcuts(list(makeShortcut("s1"),
                     makeLongLivedShortcut("s2"), makeLongLivedShortcut("s3"),
@@ -1999,7 +1999,7 @@
                 "s1", "s3");
     }
 
-    public void testGetShortcuts_shortcutKinds() throws Exception {
+    public void disabled_testGetShortcuts_shortcutKinds() throws Exception {
         // Create 3 manifest and 3 dynamic shortcuts
         addManifestShortcutResource(
                 new ComponentName(CALLING_PACKAGE_1, ShortcutActivity.class.getName()),
@@ -2110,7 +2110,7 @@
         });
     }
 
-    public void testGetShortcuts_resolveStrings() throws Exception {
+    public void disabled_testGetShortcuts_resolveStrings() throws Exception {
         runWithCaller(CALLING_PACKAGE_1, USER_10, () -> {
             ShortcutInfo si = new ShortcutInfo.Builder(mClientContext)
                     .setId("id")
@@ -2833,7 +2833,7 @@
         });
     }
 
-    public void testPinShortcutAndGetPinnedShortcuts_assistant() {
+    public void disabled_testPinShortcutAndGetPinnedShortcuts_assistant() {
         // Create some shortcuts.
         runWithCaller(CALLING_PACKAGE_1, USER_10, () -> {
             assertTrue(mManager.setDynamicShortcuts(list(
@@ -3613,7 +3613,7 @@
         // TODO Check extra, etc
     }
 
-    public void testLauncherCallback() throws Throwable {
+    public void disabled_testLauncherCallback() throws Throwable {
         // Disable throttling for this test.
         mService.updateConfigurationLocked(
                 ConfigConstants.KEY_MAX_UPDATES_PER_INTERVAL + "=99999999,"
@@ -3779,7 +3779,7 @@
                 .isEmpty();
     }
 
-    public void testLauncherCallback_crossProfile() throws Throwable {
+    public void disabled_testLauncherCallback_crossProfile() throws Throwable {
         prepareCrossProfileDataSet();
 
         final Handler h = new Handler(Looper.getMainLooper());
@@ -4060,7 +4060,7 @@
         // TODO Check all other fields
     }
 
-    public void testLoadCorruptedShortcuts() throws Exception {
+    public void disabled_testLoadCorruptedShortcuts() throws Exception {
         initService();
 
         addPackage("com.android.chrome", 0, 0);
@@ -4575,7 +4575,7 @@
         });
     }
 
-    public void testHandleGonePackage_crossProfile() {
+    public void disabled_testHandleGonePackage_crossProfile() {
         // Create some shortcuts.
         runWithCaller(CALLING_PACKAGE_1, USER_10, () -> {
             assertTrue(mManager.setDynamicShortcuts(list(
@@ -4910,7 +4910,7 @@
         checkCanRestoreTo(DISABLED_REASON_BACKUP_NOT_SUPPORTED, spi3, true, 10, true, "sig1");
     }
 
-    public void testHandlePackageDelete() {
+    public void disabled_testHandlePackageDelete() {
         checkHandlePackageDeleteInner((userId, packageName) -> {
             uninstallPackage(userId, packageName);
             mService.mPackageMonitor.onReceive(getTestContext(),
@@ -4918,7 +4918,7 @@
         });
     }
 
-    public void testHandlePackageDisable() {
+    public void disabled_testHandlePackageDisable() {
         checkHandlePackageDeleteInner((userId, packageName) -> {
             disablePackage(userId, packageName);
             mService.mPackageMonitor.onReceive(getTestContext(),
@@ -5050,7 +5050,7 @@
     }
 
     /** Almost ame as testHandlePackageDelete, except it doesn't uninstall packages. */
-    public void testHandlePackageClearData() {
+    public void disabled_testHandlePackageClearData() {
         final Icon bmp32x32 = Icon.createWithBitmap(BitmapFactory.decodeResource(
                 getTestContext().getResources(), R.drawable.black_32x32));
         setCaller(CALLING_PACKAGE_1, USER_10);
@@ -5126,7 +5126,7 @@
         assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_3, USER_11));
     }
 
-    public void testHandlePackageClearData_manifestRepublished() {
+    public void disabled_testHandlePackageClearData_manifestRepublished() {
 
         mRunningUsers.put(USER_11, true);
 
@@ -5168,7 +5168,7 @@
         });
     }
 
-    public void testHandlePackageUpdate() throws Throwable {
+    public void disabled_testHandlePackageUpdate() throws Throwable {
         // Set up shortcuts and launchers.
 
         final Icon res32x32 = Icon.createWithResource(getTestContext(), R.drawable.black_32x32);
@@ -5342,7 +5342,7 @@
     /**
      * Test the case where an updated app has resource IDs changed.
      */
-    public void testHandlePackageUpdate_resIdChanged() throws Exception {
+    public void disabled_testHandlePackageUpdate_resIdChanged() throws Exception {
         final Icon icon1 = Icon.createWithResource(getTestContext(), /* res ID */ 1000);
         final Icon icon2 = Icon.createWithResource(getTestContext(), /* res ID */ 1001);
 
@@ -5417,7 +5417,7 @@
         });
     }
 
-    public void testHandlePackageUpdate_systemAppUpdate() {
+    public void disabled_testHandlePackageUpdate_systemAppUpdate() {
 
         // Package1 is a system app.  Package 2 is not a system app, so it's not scanned
         // in this test at all.
@@ -5523,7 +5523,7 @@
                 mService.getUserShortcutsLocked(USER_10).getLastAppScanOsFingerprint());
     }
 
-    public void testHandlePackageChanged() {
+    public void disabled_testHandlePackageChanged() {
         final ComponentName ACTIVITY1 = new ComponentName(CALLING_PACKAGE_1, "act1");
         final ComponentName ACTIVITY2 = new ComponentName(CALLING_PACKAGE_1, "act2");
 
@@ -5653,7 +5653,7 @@
         });
     }
 
-    public void testHandlePackageUpdate_activityNoLongerMain() throws Throwable {
+    public void disabled_testHandlePackageUpdate_activityNoLongerMain() throws Throwable {
         runWithCaller(CALLING_PACKAGE_1, USER_10, () -> {
             assertTrue(mManager.setDynamicShortcuts(list(
                     makeShortcutWithActivity("s1a",
@@ -5739,7 +5739,7 @@
      * - Unpinned dynamic shortcuts
      * - Bitmaps
      */
-    public void testBackupAndRestore() {
+    public void disabled_testBackupAndRestore() {
 
         assertFileNotExists("user-0/shortcut_dump/restore-0-start.txt");
         assertFileNotExists("user-0/shortcut_dump/restore-1-payload.xml");
@@ -5760,7 +5760,7 @@
         checkBackupAndRestore_success(/*firstRestore=*/ true);
     }
 
-    public void testBackupAndRestore_backupRestoreTwice() {
+    public void disabled_testBackupAndRestore_backupRestoreTwice() {
         prepareForBackupTest();
 
         checkBackupAndRestore_success(/*firstRestore=*/ true);
@@ -5776,7 +5776,7 @@
         checkBackupAndRestore_success(/*firstRestore=*/ false);
     }
 
-    public void testBackupAndRestore_restoreToNewVersion() {
+    public void disabled_testBackupAndRestore_restoreToNewVersion() {
         prepareForBackupTest();
 
         addPackage(CALLING_PACKAGE_1, CALLING_UID_1, 2);
@@ -5982,7 +5982,7 @@
         });
     }
 
-    public void testBackupAndRestore_publisherWrongSignature() {
+    public void disabled_testBackupAndRestore_publisherWrongSignature() {
         prepareForBackupTest();
 
         addPackage(CALLING_PACKAGE_1, CALLING_UID_1, 10, "sigx"); // different signature
@@ -5990,7 +5990,7 @@
         checkBackupAndRestore_publisherNotRestored(ShortcutInfo.DISABLED_REASON_SIGNATURE_MISMATCH);
     }
 
-    public void testBackupAndRestore_publisherNoLongerBackupTarget() {
+    public void disabled_testBackupAndRestore_publisherNoLongerBackupTarget() {
         prepareForBackupTest();
 
         updatePackageInfo(CALLING_PACKAGE_1,
@@ -6119,7 +6119,7 @@
         });
     }
 
-    public void testBackupAndRestore_launcherLowerVersion() {
+    public void disabled_testBackupAndRestore_launcherLowerVersion() {
         prepareForBackupTest();
 
         addPackage(LAUNCHER_1, LAUNCHER_UID_1, 0); // Lower version
@@ -6128,7 +6128,7 @@
         checkBackupAndRestore_success(/*firstRestore=*/ true);
     }
 
-    public void testBackupAndRestore_launcherWrongSignature() {
+    public void disabled_testBackupAndRestore_launcherWrongSignature() {
         prepareForBackupTest();
 
         addPackage(LAUNCHER_1, LAUNCHER_UID_1, 10, "sigx"); // different signature
@@ -6136,7 +6136,7 @@
         checkBackupAndRestore_launcherNotRestored(true);
     }
 
-    public void testBackupAndRestore_launcherNoLongerBackupTarget() {
+    public void disabled_testBackupAndRestore_launcherNoLongerBackupTarget() {
         prepareForBackupTest();
 
         updatePackageInfo(LAUNCHER_1,
@@ -6241,7 +6241,7 @@
         });
     }
 
-    public void testBackupAndRestore_launcherAndPackageNoLongerBackupTarget() {
+    public void disabled_testBackupAndRestore_launcherAndPackageNoLongerBackupTarget() {
         prepareForBackupTest();
 
         updatePackageInfo(CALLING_PACKAGE_1,
@@ -6339,7 +6339,7 @@
         });
     }
 
-    public void testBackupAndRestore_disabled() {
+    public void disabled_testBackupAndRestore_disabled() {
         prepareCrossProfileDataSet();
 
         // Before doing backup & restore, disable s1.
@@ -6404,7 +6404,7 @@
     }
 
 
-    public void testBackupAndRestore_manifestRePublished() {
+    public void disabled_testBackupAndRestore_manifestRePublished() {
         // Publish two manifest shortcuts.
         addManifestShortcutResource(
                 new ComponentName(CALLING_PACKAGE_1, ShortcutActivity.class.getName()),
@@ -6495,7 +6495,7 @@
      * logcat.
      * - if it has allowBackup=false, we don't touch any of the existing shortcuts.
      */
-    public void testBackupAndRestore_appAlreadyInstalledWhenRestored() {
+    public void disabled_testBackupAndRestore_appAlreadyInstalledWhenRestored() {
         // Pre-backup.  Same as testBackupAndRestore_manifestRePublished().
 
         // Publish two manifest shortcuts.
@@ -6620,7 +6620,7 @@
     /**
      * Test for restoring the pre-P backup format.
      */
-    public void testBackupAndRestore_api27format() throws Exception {
+    public void disabled_testBackupAndRestore_api27format() throws Exception {
         final byte[] payload = readTestAsset("shortcut/shortcut_api27_backup.xml").getBytes();
 
         addPackage(CALLING_PACKAGE_1, CALLING_UID_1, 10, "22222");
@@ -6861,7 +6861,7 @@
                         .getPackageUserId());
     }
 
-    public void testOnApplicationActive_permission() {
+    public void disabled_testOnApplicationActive_permission() {
         assertExpectException(SecurityException.class, "Missing permission", () ->
                 mManager.onApplicationActive(CALLING_PACKAGE_1, USER_10));
 
@@ -6870,7 +6870,7 @@
         mManager.onApplicationActive(CALLING_PACKAGE_1, USER_10);
     }
 
-    public void testGetShareTargets_permission() {
+    public void disabled_testGetShareTargets_permission() {
         addPackage(CHOOSER_ACTIVITY_PACKAGE, CHOOSER_ACTIVITY_UID, 10, "sig1");
         mInjectedChooserActivity =
                 ComponentName.createRelative(CHOOSER_ACTIVITY_PACKAGE, ".ChooserActivity");
@@ -6889,7 +6889,7 @@
         });
     }
 
-    public void testHasShareTargets_permission() {
+    public void disabled_testHasShareTargets_permission() {
         assertExpectException(SecurityException.class, "Missing permission", () ->
                 mManager.hasShareTargets(CALLING_PACKAGE_1));
 
@@ -6898,7 +6898,8 @@
         mManager.hasShareTargets(CALLING_PACKAGE_1);
     }
 
-    public void testisSharingShortcut_permission() throws IntentFilter.MalformedMimeTypeException {
+    public void disabled_testisSharingShortcut_permission()
+            throws IntentFilter.MalformedMimeTypeException {
         setCaller(LAUNCHER_1, USER_10);
 
         IntentFilter filter_any = new IntentFilter();
@@ -6919,12 +6920,12 @@
     }
 
     public void disabled_testDumpsys_withIcons() throws IOException {
-        testIcons();
+        disabled_testIcons();
         // Dump after having some icons.
         dumpsysOnLogcat("test1", /* force= */ true);
     }
 
-    public void testManifestShortcut_publishOnUnlockUser() {
+    public void disabled_testManifestShortcut_publishOnUnlockUser() {
         addManifestShortcutResource(
                 new ComponentName(CALLING_PACKAGE_1, ShortcutActivity.class.getName()),
                 R.xml.shortcut_1);
@@ -7138,7 +7139,7 @@
         assertNull(mService.getPackageShortcutForTest(LAUNCHER_1, USER_10));
     }
 
-    public void testManifestShortcut_publishOnBroadcast() {
+    public void disabled_testManifestShortcut_publishOnBroadcast() {
         // First, no packages are installed.
         uninstallPackage(USER_10, CALLING_PACKAGE_1);
         uninstallPackage(USER_10, CALLING_PACKAGE_2);
@@ -7394,7 +7395,7 @@
         });
     }
 
-    public void testManifestShortcuts_missingMandatoryFields() {
+    public void disabled_testManifestShortcuts_missingMandatoryFields() {
         // Start with no apps installed.
         uninstallPackage(USER_10, CALLING_PACKAGE_1);
         uninstallPackage(USER_10, CALLING_PACKAGE_2);
@@ -7463,7 +7464,7 @@
         });
     }
 
-    public void testManifestShortcuts_intentDefinitions() {
+    public void disabled_testManifestShortcuts_intentDefinitions() {
         addManifestShortcutResource(
                 new ComponentName(CALLING_PACKAGE_1, ShortcutActivity.class.getName()),
                 R.xml.shortcut_error_4);
@@ -7605,7 +7606,7 @@
         });
     }
 
-    public void testManifestShortcuts_checkAllFields() {
+    public void disabled_testManifestShortcuts_checkAllFields() {
         mService.handleUnlockUser(USER_10);
 
         // Package 1 updated, which has one valid manifest shortcut and one invalid.
@@ -7710,7 +7711,7 @@
         });
     }
 
-    public void testManifestShortcuts_localeChange() throws InterruptedException {
+    public void disabled_testManifestShortcuts_localeChange() throws InterruptedException {
         mService.handleUnlockUser(USER_10);
 
         // Package 1 updated, which has one valid manifest shortcut and one invalid.
@@ -7814,7 +7815,7 @@
         });
     }
 
-    public void testManifestShortcuts_updateAndDisabled_notPinned() {
+    public void disabled_testManifestShortcuts_updateAndDisabled_notPinned() {
         mService.handleUnlockUser(USER_10);
 
         // First, just publish a manifest shortcut.
@@ -7854,7 +7855,7 @@
         });
     }
 
-    public void testManifestShortcuts_updateAndDisabled_pinned() {
+    public void disabled_testManifestShortcuts_updateAndDisabled_pinned() {
         mService.handleUnlockUser(USER_10);
 
         // First, just publish a manifest shortcut.
@@ -7910,7 +7911,7 @@
         });
     }
 
-    public void testManifestShortcuts_duplicateInSingleActivity() {
+    public void disabled_testManifestShortcuts_duplicateInSingleActivity() {
         mService.handleUnlockUser(USER_10);
 
         // The XML has two shortcuts with the same ID.
@@ -7935,7 +7936,7 @@
         });
     }
 
-    public void testManifestShortcuts_duplicateInTwoActivities() {
+    public void disabled_testManifestShortcuts_duplicateInTwoActivities() {
         mService.handleUnlockUser(USER_10);
 
         // ShortcutActivity has shortcut ms1
@@ -7987,7 +7988,7 @@
     /**
      * Manifest shortcuts cannot override shortcuts that were published via the APIs.
      */
-    public void testManifestShortcuts_cannotOverrideNonManifest() {
+    public void disabled_testManifestShortcuts_cannotOverrideNonManifest() {
         mService.handleUnlockUser(USER_10);
 
         // Create a non-pinned dynamic shortcut and a non-dynamic pinned shortcut.
@@ -8060,7 +8061,7 @@
     /**
      * Make sure the APIs won't work on manifest shortcuts.
      */
-    public void testManifestShortcuts_immutable() {
+    public void disabled_testManifestShortcuts_immutable() {
         mService.handleUnlockUser(USER_10);
 
         // Create a non-pinned manifest shortcut, a pinned shortcut that was originally
@@ -8153,7 +8154,7 @@
     /**
      * Make sure the APIs won't work on manifest shortcuts.
      */
-    public void testManifestShortcuts_tooMany() {
+    public void disabled_testManifestShortcuts_tooMany() {
         // Change the max number of shortcuts.
         mService.updateConfigurationLocked(ConfigConstants.KEY_MAX_SHORTCUTS + "=3");
 
@@ -8172,7 +8173,7 @@
         });
     }
 
-    public void testMaxShortcutCount_set() {
+    public void disabled_testMaxShortcutCount_set() {
         // Change the max number of shortcuts.
         mService.updateConfigurationLocked(ConfigConstants.KEY_MAX_SHORTCUTS + "=3");
 
@@ -8253,7 +8254,7 @@
         });
     }
 
-    public void testMaxShortcutCount_add() {
+    public void disabled_testMaxShortcutCount_add() {
         // Change the max number of shortcuts.
         mService.updateConfigurationLocked(ConfigConstants.KEY_MAX_SHORTCUTS + "=3");
 
@@ -8380,7 +8381,7 @@
         });
     }
 
-    public void testMaxShortcutCount_update() {
+    public void disabled_testMaxShortcutCount_update() {
         // Change the max number of shortcuts.
         mService.updateConfigurationLocked(ConfigConstants.KEY_MAX_SHORTCUTS + "=3");
 
@@ -8625,7 +8626,7 @@
         });
     }
 
-    public void testIsForegroundDefaultLauncher_true() {
+    public void disabled_testIsForegroundDefaultLauncher_true() {
         // random uid in the USER_10 range.
         final int uid = 1000024;
 
@@ -8636,7 +8637,7 @@
     }
 
 
-    public void testIsForegroundDefaultLauncher_defaultButNotForeground() {
+    public void disabled_testIsForegroundDefaultLauncher_defaultButNotForeground() {
         // random uid in the USER_10 range.
         final int uid = 1000024;
 
@@ -8646,7 +8647,7 @@
         assertFalse(mInternal.isForegroundDefaultLauncher("default", uid));
     }
 
-    public void testIsForegroundDefaultLauncher_foregroundButNotDefault() {
+    public void disabled_testIsForegroundDefaultLauncher_foregroundButNotDefault() {
         // random uid in the USER_10 range.
         final int uid = 1000024;
 
@@ -8656,7 +8657,7 @@
         assertFalse(mInternal.isForegroundDefaultLauncher("another", uid));
     }
 
-    public void testParseShareTargetsFromManifest() {
+    public void disabled_testParseShareTargetsFromManifest() {
         // These values must exactly match the content of shortcuts_share_targets.xml resource
         List<ShareTargetInfo> expectedValues = new ArrayList<>();
         expectedValues.add(new ShareTargetInfo(
@@ -8774,7 +8775,7 @@
         }
     }
 
-    public void testIsSharingShortcut() throws IntentFilter.MalformedMimeTypeException {
+    public void disabled_testIsSharingShortcut() throws IntentFilter.MalformedMimeTypeException {
         addManifestShortcutResource(
                 new ComponentName(CALLING_PACKAGE_1, ShortcutActivity.class.getName()),
                 R.xml.shortcut_share_targets);
@@ -8824,7 +8825,7 @@
                 filter_any));
     }
 
-    public void testIsSharingShortcut_PinnedAndCachedOnlyShortcuts()
+    public void disabled_testIsSharingShortcut_PinnedAndCachedOnlyShortcuts()
             throws IntentFilter.MalformedMimeTypeException {
         addManifestShortcutResource(
                 new ComponentName(CALLING_PACKAGE_1, ShortcutActivity.class.getName()),
@@ -8881,7 +8882,7 @@
                 filter_any));
     }
 
-    public void testAddingShortcuts_ExcludesHiddenFromLauncherShortcuts() {
+    public void disabled_testAddingShortcuts_ExcludesHiddenFromLauncherShortcuts() {
         final ShortcutInfo s1 = makeShortcutExcludedFromLauncher("s1");
         final ShortcutInfo s2 = makeShortcutExcludedFromLauncher("s2");
         final ShortcutInfo s3 = makeShortcutExcludedFromLauncher("s3");
@@ -8915,7 +8916,7 @@
         });
     }
 
-    public void testPinHiddenShortcuts_ThrowsException() {
+    public void disabled_testPinHiddenShortcuts_ThrowsException() {
         runWithCaller(CALLING_PACKAGE_1, USER_10, () -> {
             assertThrown(IllegalArgumentException.class, () -> {
                 mManager.requestPinShortcut(makeShortcutExcludedFromLauncher("s1"), null);
diff --git a/services/tests/servicestests/src/com/android/server/pm/UserManagerServiceUserTypeTest.java b/services/tests/servicestests/src/com/android/server/pm/UserManagerServiceUserTypeTest.java
index 3047bcf..78a7e31 100644
--- a/services/tests/servicestests/src/com/android/server/pm/UserManagerServiceUserTypeTest.java
+++ b/services/tests/servicestests/src/com/android/server/pm/UserManagerServiceUserTypeTest.java
@@ -106,6 +106,7 @@
                 .setMaxAllowed(21)
                 .setBaseType(FLAG_PROFILE)
                 .setDefaultUserInfoPropertyFlags(FLAG_EPHEMERAL)
+                .setProfileParentRequired(true)
                 .setBadgeLabels(23, 24, 25)
                 .setBadgeColors(26, 27)
                 .setIconBadge(28)
@@ -125,6 +126,7 @@
         assertTrue(type.isEnabled());
         assertEquals(21, type.getMaxAllowed());
         assertEquals(FLAG_PROFILE | FLAG_EPHEMERAL, type.getDefaultUserInfoFlags());
+        assertTrue(type.isProfileParentRequired());
         assertEquals(28, type.getIconBadge());
         assertEquals(29, type.getBadgePlain());
         assertEquals(30, type.getBadgeNoBackground());
@@ -452,9 +454,10 @@
         assertTrue(aospType.getDefaultUserPropertiesReference().areItemsRestrictedOnHomeScreen());
 
         // userTypeOem1 should be created.
-        UserTypeDetails.Builder customType = builders.get(userTypeOem1);
-        assertNotNull(customType);
-        assertEquals(14, customType.createUserTypeDetails().getMaxAllowedPerParent());
+        assertNotNull(builders.get(userTypeOem1));
+        UserTypeDetails customType = builders.get(userTypeOem1).createUserTypeDetails();
+        assertEquals(14, customType.getMaxAllowedPerParent());
+        assertTrue(customType.isProfileParentRequired());
     }
 
     /** Tests {@link UserTypeFactory#customizeBuilders} for customizing a FULL user. */
diff --git a/services/tests/uiservicestests/src/com/android/server/notification/ConditionProvidersTest.java b/services/tests/uiservicestests/src/com/android/server/notification/ConditionProvidersTest.java
index b332331..6b989cb 100644
--- a/services/tests/uiservicestests/src/com/android/server/notification/ConditionProvidersTest.java
+++ b/services/tests/uiservicestests/src/com/android/server/notification/ConditionProvidersTest.java
@@ -38,6 +38,7 @@
 import android.platform.test.flag.junit.SetFlagsRule;
 import android.service.notification.Condition;
 
+import com.android.internal.R;
 import com.android.server.UiServiceTestCase;
 
 import org.junit.Before;
@@ -46,6 +47,8 @@
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
 
+import java.util.List;
+
 public class ConditionProvidersTest extends UiServiceTestCase {
 
     private ConditionProviders mProviders;
@@ -169,4 +172,15 @@
 
         assertTrue(mProviders.getApproved(userId, true).isEmpty());
     }
+
+    @Test
+    public void getDefaultDndAccessPackages_returnsPackages() {
+        mContext.getOrCreateTestableResources().addOverride(
+                R.string.config_defaultDndAccessPackages,
+                "com.example.a:com.example.b::::com.example.c");
+
+        List<String> packages = ConditionProviders.getDefaultDndAccessPackages(mContext);
+
+        assertThat(packages).containsExactly("com.example.a", "com.example.b", "com.example.c");
+    }
 }
diff --git a/services/tests/uiservicestests/src/com/android/server/notification/PreferencesHelperTest.java b/services/tests/uiservicestests/src/com/android/server/notification/PreferencesHelperTest.java
index 67e85ff..5dea44d 100644
--- a/services/tests/uiservicestests/src/com/android/server/notification/PreferencesHelperTest.java
+++ b/services/tests/uiservicestests/src/com/android/server/notification/PreferencesHelperTest.java
@@ -4495,27 +4495,6 @@
     }
 
     @Test
-    public void testBubblePreference_sameVersionWithSAWPermission() throws Exception {
-        when(mAppOpsManager.noteOpNoThrow(eq(OP_SYSTEM_ALERT_WINDOW), anyInt(),
-                anyString(), eq(null), anyString())).thenReturn(MODE_ALLOWED);
-
-        final String xml = "<ranking version=\"4\">\n"
-                + "<package name=\"" + PKG_O + "\" uid=\"" + UID_O + "\">\n"
-                + "<channel id=\"someId\" name=\"hi\""
-                + " importance=\"3\"/>"
-                + "</package>"
-                + "</ranking>";
-        TypedXmlPullParser parser = Xml.newFastPullParser();
-        parser.setInput(new BufferedInputStream(new ByteArrayInputStream(xml.getBytes())),
-                null);
-        parser.nextTag();
-        mHelper.readXml(parser, false, UserHandle.USER_ALL);
-
-        assertEquals(BUBBLE_PREFERENCE_ALL, mHelper.getBubblePreference(PKG_O, UID_O));
-        assertEquals(0, mHelper.getAppLockedFields(PKG_O, UID_O));
-    }
-
-    @Test
     public void testBubblePreference_upgradeWithSAWThenUserOverride() throws Exception {
         when(mAppOpsManager.noteOpNoThrow(eq(OP_SYSTEM_ALERT_WINDOW), anyInt(),
                 anyString(), eq(null), anyString())).thenReturn(MODE_ALLOWED);
diff --git a/services/tests/uiservicestests/src/com/android/server/notification/ZenConfigTrimmerTest.java b/services/tests/uiservicestests/src/com/android/server/notification/ZenConfigTrimmerTest.java
new file mode 100644
index 0000000..154a905
--- /dev/null
+++ b/services/tests/uiservicestests/src/com/android/server/notification/ZenConfigTrimmerTest.java
@@ -0,0 +1,124 @@
+/*
+ * Copyright (C) 2025 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.server.notification;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import android.os.Parcel;
+import android.service.notification.ZenModeConfig;
+import android.service.notification.ZenModeConfig.ZenRule;
+
+import androidx.test.ext.junit.runners.AndroidJUnit4;
+
+import com.android.internal.R;
+import com.android.server.UiServiceTestCase;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+@RunWith(AndroidJUnit4.class)
+public class ZenConfigTrimmerTest extends UiServiceTestCase {
+
+    private static final String TRUSTED_PACKAGE = "com.trust.me";
+    private static final int ONE_PERCENT = 1_500;
+
+    private ZenConfigTrimmer mTrimmer;
+
+    @Before
+    public void setUp() {
+        mContext.getOrCreateTestableResources().addOverride(
+                R.string.config_defaultDndAccessPackages, TRUSTED_PACKAGE);
+
+        mTrimmer = new ZenConfigTrimmer(mContext);
+    }
+
+    @Test
+    public void trimToMaximumSize_belowMax_untouched() {
+        ZenModeConfig config = new ZenModeConfig();
+        addZenRule(config, "1", "pkg1", 10 * ONE_PERCENT);
+        addZenRule(config, "2", "pkg1", 10 * ONE_PERCENT);
+        addZenRule(config, "3", "pkg1", 10 * ONE_PERCENT);
+        addZenRule(config, "4", "pkg2", 20 * ONE_PERCENT);
+        addZenRule(config, "5", "pkg2", 20 * ONE_PERCENT);
+
+        mTrimmer.trimToMaximumSize(config);
+
+        assertThat(config.automaticRules.keySet()).containsExactly("1", "2", "3", "4", "5");
+    }
+
+    @Test
+    public void trimToMaximumSize_exceedsMax_removesAllRulesOfLargestPackages() {
+        ZenModeConfig config = new ZenModeConfig();
+        addZenRule(config, "1", "pkg1", 10 * ONE_PERCENT);
+        addZenRule(config, "2", "pkg1", 10 * ONE_PERCENT);
+        addZenRule(config, "3", "pkg1", 10 * ONE_PERCENT);
+        addZenRule(config, "4", "pkg2", 20 * ONE_PERCENT);
+        addZenRule(config, "5", "pkg2", 20 * ONE_PERCENT);
+        addZenRule(config, "6", "pkg3", 35 * ONE_PERCENT);
+        addZenRule(config, "7", "pkg4", 38 * ONE_PERCENT);
+
+        mTrimmer.trimToMaximumSize(config);
+
+        assertThat(config.automaticRules.keySet()).containsExactly("1", "2", "3", "6");
+        assertThat(config.automaticRules.values().stream().map(r -> r.pkg).distinct())
+                .containsExactly("pkg1", "pkg3");
+    }
+
+    @Test
+    public void trimToMaximumSize_keepsRulesFromTrustedPackages() {
+        ZenModeConfig config = new ZenModeConfig();
+        addZenRule(config, "1", "pkg1", 10 * ONE_PERCENT);
+        addZenRule(config, "2", "pkg1", 10 * ONE_PERCENT);
+        addZenRule(config, "3", "pkg1", 10 * ONE_PERCENT);
+        addZenRule(config, "4", TRUSTED_PACKAGE, 60 * ONE_PERCENT);
+        addZenRule(config, "5", "pkg2", 20 * ONE_PERCENT);
+        addZenRule(config, "6", "pkg3", 35 * ONE_PERCENT);
+
+        mTrimmer.trimToMaximumSize(config);
+
+        assertThat(config.automaticRules.keySet()).containsExactly("4", "5");
+        assertThat(config.automaticRules.values().stream().map(r -> r.pkg).distinct())
+                .containsExactly(TRUSTED_PACKAGE, "pkg2");
+    }
+
+    /**
+     * Create a ZenRule that, when serialized to a Parcel, will take <em>approximately</em>
+     * {@code desiredSize} bytes (within 100 bytes). Try to make the tests not rely on a very tight
+     * fit.
+     */
+    private static void addZenRule(ZenModeConfig config, String id, String pkg, int desiredSize) {
+        ZenRule rule = new ZenRule();
+        rule.id = id;
+        rule.pkg = pkg;
+        config.automaticRules.put(id, rule);
+
+        // Make the ZenRule as large as desired. Not to the exact byte, because otherwise this
+        // test would have to be adjusted whenever we change the parceling of ZenRule in any way.
+        // (Still might need adjustment if we change the serialization _significantly_).
+        int nameLength = desiredSize - id.length() - pkg.length() - 232;
+        rule.name = "A".repeat(nameLength);
+
+        Parcel verification = Parcel.obtain();
+        try {
+            verification.writeParcelable(rule, 0);
+            assertThat(verification.dataSize()).isWithin(100).of(desiredSize);
+        } finally {
+            verification.recycle();
+        }
+    }
+}
diff --git a/services/tests/uiservicestests/src/com/android/server/notification/ZenModeHelperTest.java b/services/tests/uiservicestests/src/com/android/server/notification/ZenModeHelperTest.java
index f8387a4..51891ef 100644
--- a/services/tests/uiservicestests/src/com/android/server/notification/ZenModeHelperTest.java
+++ b/services/tests/uiservicestests/src/com/android/server/notification/ZenModeHelperTest.java
@@ -90,6 +90,7 @@
 import static com.android.os.dnd.DNDProtoEnums.ROOT_CONFIG;
 import static com.android.os.dnd.DNDProtoEnums.STATE_ALLOW;
 import static com.android.os.dnd.DNDProtoEnums.STATE_DISALLOW;
+import static com.android.server.notification.Flags.FLAG_LIMIT_ZEN_CONFIG_SIZE;
 import static com.android.server.notification.Flags.FLAG_PREVENT_ZEN_DEVICE_EFFECTS_WHILE_DRIVING;
 import static com.android.server.notification.ZenModeEventLogger.ACTIVE_RULE_TYPE_MANUAL;
 import static com.android.server.notification.ZenModeHelper.RULE_LIMIT_PER_PACKAGE;
@@ -236,6 +237,7 @@
 @SmallTest
 @SuppressLint("GuardedBy") // It's ok for this test to access guarded methods from the service.
 @RunWith(ParameterizedAndroidJunit4.class)
+@EnableFlags(FLAG_LIMIT_ZEN_CONFIG_SIZE) // Should be parameterization, but off path does nothing.
 @TestableLooper.RunWithLooper
 public class ZenModeHelperTest extends UiServiceTestCase {
 
@@ -7480,6 +7482,45 @@
         assertThat(getZenRule(ruleId).lastActivation).isNull();
     }
 
+    @Test
+    @EnableFlags(FLAG_LIMIT_ZEN_CONFIG_SIZE)
+    public void addAutomaticZenRule_trimsConfiguration() {
+        mZenModeHelper.mConfig.automaticRules.clear();
+        AutomaticZenRule smallRule = new AutomaticZenRule.Builder("Reasonable", CONDITION_ID)
+                .setConfigurationActivity(new ComponentName(mPkg, "cls"))
+                .build();
+        AutomaticZenRule systemRule = new AutomaticZenRule.Builder("System", CONDITION_ID)
+                .setOwner(new ComponentName("android", "ScheduleConditionProvider"))
+                .build();
+
+        AutomaticZenRule bigRule = new AutomaticZenRule.Builder("Yuge", CONDITION_ID)
+                .setConfigurationActivity(new ComponentName("evil.package", "cls"))
+                .setTriggerDescription("0123456789".repeat(6000)) // ~60k bytes utf16.
+                .build();
+
+        String systemRuleId = mZenModeHelper.addAutomaticZenRule(UserHandle.CURRENT, "android",
+                systemRule, ORIGIN_SYSTEM, "add", SYSTEM_UID);
+        String smallRuleId = mZenModeHelper.addAutomaticZenRule(UserHandle.CURRENT, mPkg, smallRule,
+                ORIGIN_APP, "add", CUSTOM_PKG_UID);
+        String bigRuleId1 =  mZenModeHelper.addAutomaticZenRule(UserHandle.CURRENT, "evil.package",
+                bigRule, ORIGIN_APP, "add", CUSTOM_PKG_UID);
+        assertThat(mZenModeHelper.mConfig.automaticRules.keySet()).containsExactly(
+                systemRuleId, smallRuleId, bigRuleId1);
+
+        String bigRuleId2 =  mZenModeHelper.addAutomaticZenRule(UserHandle.CURRENT, "evil.package",
+                bigRule, ORIGIN_APP, "add", CUSTOM_PKG_UID);
+        assertThat(mZenModeHelper.mConfig.automaticRules.keySet()).containsExactly(
+                systemRuleId, smallRuleId, bigRuleId1, bigRuleId2);
+
+        // This should go over the threshold
+        String bigRuleId3 = mZenModeHelper.addAutomaticZenRule(UserHandle.CURRENT, "evil.package",
+                bigRule, ORIGIN_APP, "add", CUSTOM_PKG_UID);
+
+        // Rules from evil.package are gone.
+        assertThat(mZenModeHelper.mConfig.automaticRules.keySet()).containsExactly(
+                systemRuleId, smallRuleId);
+    }
+
     private static void addZenRule(ZenModeConfig config, String id, String ownerPkg, int zenMode,
             @Nullable ZenPolicy zenPolicy) {
         ZenRule rule = new ZenRule();
diff --git a/services/tests/vibrator/src/com/android/server/vibrator/VibratorManagerServiceTest.java b/services/tests/vibrator/src/com/android/server/vibrator/VibratorManagerServiceTest.java
index b248218..132a324 100644
--- a/services/tests/vibrator/src/com/android/server/vibrator/VibratorManagerServiceTest.java
+++ b/services/tests/vibrator/src/com/android/server/vibrator/VibratorManagerServiceTest.java
@@ -147,6 +147,9 @@
             new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_ALARM).build();
     private static final AudioAttributes AUDIO_NOTIFICATION_ATTRS =
             new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_NOTIFICATION).build();
+    private static final AudioAttributes AUDIO_HAPTIC_FEEDBACK_ATTRS =
+            new AudioAttributes.Builder().setUsage(
+                    AudioAttributes.USAGE_ASSISTANCE_SONIFICATION).build();
     private static final VibrationAttributes ALARM_ATTRS =
             new VibrationAttributes.Builder().setUsage(VibrationAttributes.USAGE_ALARM).build();
     private static final VibrationAttributes HAPTIC_FEEDBACK_ATTRS =
@@ -2674,7 +2677,8 @@
     }
 
     @Test
-    public void onExternalVibration_thenDeniedAppOps_doNotCancelVibration() throws Throwable {
+    @DisableFlags(android.os.vibrator.Flags.FLAG_FIX_EXTERNAL_VIBRATION_SYSTEM_UPDATE_AWARE)
+    public void onExternalVibration_legacyDeniedAppOps_doNotCancelVibration() throws Throwable {
         mockVibrators(1);
         mVibratorProviders.get(1).setCapabilities(IVibrator.CAP_EXTERNAL_CONTROL);
         VibratorManagerService service = createSystemReadyService();
@@ -2697,7 +2701,32 @@
     }
 
     @Test
-    public void onExternalVibration_thenPowerModeChanges_doNotCancelVibration() throws Exception {
+    @EnableFlags(android.os.vibrator.Flags.FLAG_FIX_EXTERNAL_VIBRATION_SYSTEM_UPDATE_AWARE)
+    public void onExternalVibration_thenDeniedAppOps_cancelVibration() throws Throwable {
+        mockVibrators(1);
+        mVibratorProviders.get(1).setCapabilities(IVibrator.CAP_EXTERNAL_CONTROL);
+        VibratorManagerService service = createSystemReadyService();
+
+        IExternalVibrationController externalVibrationControllerMock =
+                mock(IExternalVibrationController.class);
+        ExternalVibration externalVibration = new ExternalVibration(UID, PACKAGE_NAME,
+                AUDIO_ALARM_ATTRS, externalVibrationControllerMock, mock(IBinder.class));
+        ExternalVibrationScale scale = mExternalVibratorService.onExternalVibrationStart(
+                externalVibration);
+
+        assertThat(scale.scaleLevel).isNotEqualTo(ExternalVibrationScale.ScaleLevel.SCALE_MUTE);
+
+        when(mAppOpsManagerMock.checkAudioOpNoThrow(eq(AppOpsManager.OP_VIBRATE),
+                eq(AudioAttributes.USAGE_ALARM), anyInt(), anyString()))
+                .thenReturn(AppOpsManager.MODE_IGNORED);
+        service.mAppOpsChangeListener.onOpChanged(AppOpsManager.OP_VIBRATE, null);
+
+        verify(externalVibrationControllerMock).mute();
+    }
+
+    @Test
+    @DisableFlags(android.os.vibrator.Flags.FLAG_FIX_EXTERNAL_VIBRATION_SYSTEM_UPDATE_AWARE)
+    public void onExternalVibration_legacyPowerModeChanges_doNotCancelVibration() throws Exception {
         mockVibrators(1);
         mVibratorProviders.get(1).setCapabilities(IVibrator.CAP_EXTERNAL_CONTROL);
         createSystemReadyService();
@@ -2705,7 +2734,7 @@
         IExternalVibrationController externalVibrationControllerMock =
                 mock(IExternalVibrationController.class);
         ExternalVibration externalVibration = new ExternalVibration(UID, PACKAGE_NAME,
-                AUDIO_ALARM_ATTRS, externalVibrationControllerMock, mock(IBinder.class));
+                AUDIO_HAPTIC_FEEDBACK_ATTRS, externalVibrationControllerMock, mock(IBinder.class));
         ExternalVibrationScale scale = mExternalVibratorService.onExternalVibrationStart(
                 externalVibration);
 
@@ -2717,7 +2746,29 @@
     }
 
     @Test
-    public void onExternalVibration_thenSettingsChange_doNotCancelVibration() throws Exception {
+    @EnableFlags(android.os.vibrator.Flags.FLAG_FIX_EXTERNAL_VIBRATION_SYSTEM_UPDATE_AWARE)
+    public void onExternalVibration_thenPowerModeChanges_cancelVibration() throws Exception {
+        mockVibrators(1);
+        mVibratorProviders.get(1).setCapabilities(IVibrator.CAP_EXTERNAL_CONTROL);
+        createSystemReadyService();
+
+        IExternalVibrationController externalVibrationControllerMock =
+                mock(IExternalVibrationController.class);
+        ExternalVibration externalVibration = new ExternalVibration(UID, PACKAGE_NAME,
+                AUDIO_HAPTIC_FEEDBACK_ATTRS, externalVibrationControllerMock, mock(IBinder.class));
+        ExternalVibrationScale scale = mExternalVibratorService.onExternalVibrationStart(
+                externalVibration);
+
+        assertThat(scale.scaleLevel).isNotEqualTo(ExternalVibrationScale.ScaleLevel.SCALE_MUTE);
+
+        mRegisteredPowerModeListener.onLowPowerModeChanged(LOW_POWER_STATE);
+
+        verify(externalVibrationControllerMock).mute();
+    }
+
+    @Test
+    @DisableFlags(android.os.vibrator.Flags.FLAG_FIX_EXTERNAL_VIBRATION_SYSTEM_UPDATE_AWARE)
+    public void onExternalVibration_legacySettingsChange_doNotCancelVibration() throws Exception {
         mockVibrators(1);
         mVibratorProviders.get(1).setCapabilities(IVibrator.CAP_EXTERNAL_CONTROL);
         VibratorManagerService service = createSystemReadyService();
@@ -2739,7 +2790,31 @@
     }
 
     @Test
-    public void onExternalVibration_thenScreenTurnsOff_doNotCancelVibration() throws Throwable {
+    @EnableFlags(android.os.vibrator.Flags.FLAG_FIX_EXTERNAL_VIBRATION_SYSTEM_UPDATE_AWARE)
+    public void onExternalVibration_thenSettingsChange_cancelVibration() throws Exception {
+        mockVibrators(1);
+        mVibratorProviders.get(1).setCapabilities(IVibrator.CAP_EXTERNAL_CONTROL);
+        VibratorManagerService service = createSystemReadyService();
+
+        IExternalVibrationController externalVibrationControllerMock =
+                mock(IExternalVibrationController.class);
+        ExternalVibration externalVibration = new ExternalVibration(UID, PACKAGE_NAME,
+                AUDIO_ALARM_ATTRS, externalVibrationControllerMock, mock(IBinder.class));
+        ExternalVibrationScale scale = mExternalVibratorService.onExternalVibrationStart(
+                externalVibration);
+
+        assertThat(scale.scaleLevel).isNotEqualTo(ExternalVibrationScale.ScaleLevel.SCALE_MUTE);
+
+        setUserSetting(Settings.System.ALARM_VIBRATION_INTENSITY, Vibrator.VIBRATION_INTENSITY_OFF);
+        service.mVibrationSettings.mSettingObserver.onChange(false);
+        service.updateServiceState();
+
+        verify(externalVibrationControllerMock).mute();
+    }
+
+    @Test
+    @DisableFlags(android.os.vibrator.Flags.FLAG_FIX_EXTERNAL_VIBRATION_SYSTEM_UPDATE_AWARE)
+    public void onExternalVibration_legacyScreenTurnsOff_doNotCancelVibration() throws Exception {
         mockVibrators(1);
         mVibratorProviders.get(1).setCapabilities(IVibrator.CAP_EXTERNAL_CONTROL);
         VibratorManagerService service = createSystemReadyService();
@@ -2759,7 +2834,30 @@
     }
 
     @Test
-    public void onExternalVibration_thenFgUserRequestsMute_doNotCancelVibration() throws Throwable {
+    @EnableFlags(android.os.vibrator.Flags.FLAG_FIX_EXTERNAL_VIBRATION_SYSTEM_UPDATE_AWARE)
+    public void onExternalVibration_thenScreenTurnsOff_cancelVibration() throws Exception {
+        mockVibrators(1);
+        mVibratorProviders.get(1).setCapabilities(IVibrator.CAP_EXTERNAL_CONTROL);
+        VibratorManagerService service = createSystemReadyService();
+
+        IExternalVibrationController externalVibrationControllerMock =
+                mock(IExternalVibrationController.class);
+        ExternalVibration externalVibration = new ExternalVibration(UID, PACKAGE_NAME,
+                AUDIO_ALARM_ATTRS, externalVibrationControllerMock, mock(IBinder.class));
+        ExternalVibrationScale scale = mExternalVibratorService.onExternalVibrationStart(
+                externalVibration);
+
+        assertThat(scale.scaleLevel).isNotEqualTo(ExternalVibrationScale.ScaleLevel.SCALE_MUTE);
+
+        service.mIntentReceiver.onReceive(mContextSpy, new Intent(Intent.ACTION_SCREEN_OFF));
+
+        verify(externalVibrationControllerMock).mute();
+    }
+
+    @Test
+    @DisableFlags(android.os.vibrator.Flags.FLAG_FIX_EXTERNAL_VIBRATION_SYSTEM_UPDATE_AWARE)
+    public void onExternalVibration_legacyFgUserRequestsMute_doNotCancelVibration()
+            throws Exception {
         assumeTrue(UserManagerInternal.shouldShowNotificationForBackgroundUserSounds());
         mockVibrators(1);
         mVibratorProviders.get(1).setCapabilities(IVibrator.CAP_EXTERNAL_CONTROL);
@@ -2781,6 +2879,29 @@
     }
 
     @Test
+    @EnableFlags(android.os.vibrator.Flags.FLAG_FIX_EXTERNAL_VIBRATION_SYSTEM_UPDATE_AWARE)
+    public void onExternalVibration_thenFgUserRequestsMute_cancelVibration() throws Exception {
+        assumeTrue(UserManagerInternal.shouldShowNotificationForBackgroundUserSounds());
+        mockVibrators(1);
+        mVibratorProviders.get(1).setCapabilities(IVibrator.CAP_EXTERNAL_CONTROL);
+        VibratorManagerService service = createSystemReadyService();
+
+        IExternalVibrationController externalVibrationControllerMock =
+                mock(IExternalVibrationController.class);
+        ExternalVibration externalVibration = new ExternalVibration(UID, PACKAGE_NAME,
+                AUDIO_ALARM_ATTRS, externalVibrationControllerMock, mock(IBinder.class));
+        ExternalVibrationScale scale = mExternalVibratorService.onExternalVibrationStart(
+                externalVibration);
+
+        assertThat(scale.scaleLevel).isNotEqualTo(ExternalVibrationScale.ScaleLevel.SCALE_MUTE);
+
+        service.mIntentReceiver.onReceive(mContextSpy, new Intent(
+                BackgroundUserSoundNotifier.ACTION_MUTE_SOUND));
+
+        verify(externalVibrationControllerMock).mute();
+    }
+
+    @Test
     @DisableFlags(android.os.vibrator.Flags.FLAG_VENDOR_VIBRATION_EFFECTS)
     public void startVibrationSession_withoutFeatureFlag_throwsException() throws Exception {
         mockCapabilities(IVibratorManager.CAP_START_SESSIONS);
diff --git a/services/tests/wmtests/src/com/android/server/TransitionSubject.java b/services/tests/wmtests/src/com/android/server/TransitionSubject.java
new file mode 100644
index 0000000..07026b9
--- /dev/null
+++ b/services/tests/wmtests/src/com/android/server/TransitionSubject.java
@@ -0,0 +1,79 @@
+/*
+ * Copyright (C) 2025 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.server.wm;
+
+import android.annotation.Nullable;
+
+import com.google.common.truth.FailureMetadata;
+import com.google.common.truth.IterableSubject;
+import com.google.common.truth.Subject;
+import com.google.common.truth.Truth;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class TransitionSubject extends Subject {
+
+    @Nullable
+    private final Transition actual;
+
+    /**
+     * Internal constructor.
+     *
+     * @see TransitionSubject#assertThat(Transition)
+     */
+    private TransitionSubject(FailureMetadata metadata, @Nullable Transition actual) {
+        super(metadata, actual);
+        this.actual = actual;
+    }
+
+    /**
+     * In a fluent assertion chain, the argument to the "custom" overload of {@link
+     * StandardSubjectBuilder#about(CustomSubjectBuilder.Factory) about}, the method that specifies
+     * what kind of {@link Subject} to create.
+     */
+    public static Factory<TransitionSubject, Transition> transitions() {
+        return TransitionSubject::new;
+    }
+
+    /**
+     * Typical entry point for making assertions about Transitions.
+     *
+     * @see @Truth#assertThat(Object)
+     */
+    public static TransitionSubject assertThat(Transition transition) {
+        return Truth.assertAbout(transitions()).that(transition);
+    }
+
+    /**
+     * Converts to a {@link IterableSubject} containing {@link Transition#getFlags()} separated into
+     * a list of individual flags for assertions such as {@code flags().contains(TRANSIT_FLAG_XYZ)}.
+     *
+     * <p>If the subject is null, this will fail instead of returning a null subject.
+     */
+    public IterableSubject flags() {
+        isNotNull();
+
+        final List<Integer> sortedFlags = new ArrayList<>();
+        for (int i = 0; i < 32; i++) {
+            if ((actual.getFlags() & (1 << i)) != 0) {
+                sortedFlags.add((1 << i));
+            }
+        }
+        return com.google.common.truth.Truth.assertThat(sortedFlags);
+    }
+}
diff --git a/services/tests/wmtests/src/com/android/server/policy/PhoneWindowManagerTests.java b/services/tests/wmtests/src/com/android/server/policy/PhoneWindowManagerTests.java
index 22c86eb..32a3b7f 100644
--- a/services/tests/wmtests/src/com/android/server/policy/PhoneWindowManagerTests.java
+++ b/services/tests/wmtests/src/com/android/server/policy/PhoneWindowManagerTests.java
@@ -272,19 +272,6 @@
     }
 
     @Test
-    public void powerPress_withoutDreamManagerInternal_doesNotCrash() {
-        when(mDisplayPolicy.isAwake()).thenReturn(true);
-        mDreamManagerInternal = null;
-        initPhoneWindowManager();
-
-        // Power button pressed.
-        int eventTime = 0;
-        mPhoneWindowManager.powerPress(eventTime, 1, 0);
-
-        // verify no crash
-    }
-
-    @Test
     public void powerPress_hubOrDreamOrSleep_hubAvailableLocks() {
         when(mDisplayPolicy.isAwake()).thenReturn(true);
         mContext.getTestablePermissions().setPermission(android.Manifest.permission.DEVICE_POWER,
@@ -365,10 +352,5 @@
         WindowWakeUpPolicy getWindowWakeUpPolicy() {
             return mock(WindowWakeUpPolicy.class);
         }
-
-        @Override
-        DreamManagerInternal getDreamManagerInternal() {
-            return mDreamManagerInternal;
-        }
     }
 }
diff --git a/services/tests/wmtests/src/com/android/server/wm/ActivityStartInterceptorTest.java b/services/tests/wmtests/src/com/android/server/wm/ActivityStartInterceptorTest.java
index bacf5ed..6c4f638 100644
--- a/services/tests/wmtests/src/com/android/server/wm/ActivityStartInterceptorTest.java
+++ b/services/tests/wmtests/src/com/android/server/wm/ActivityStartInterceptorTest.java
@@ -53,7 +53,6 @@
 import android.os.RemoteException;
 import android.os.UserHandle;
 import android.os.UserManager;
-import android.platform.test.annotations.EnableFlags;
 import android.platform.test.annotations.Presubmit;
 import android.platform.test.flag.junit.SetFlagsRule;
 import android.testing.DexmakerShareClassLoaderRule;
@@ -68,7 +67,6 @@
 import com.android.internal.app.UnlaunchableAppActivity;
 import com.android.server.LocalServices;
 import com.android.server.am.ActivityManagerService;
-import com.android.window.flags.Flags;
 
 import org.junit.After;
 import org.junit.Before;
@@ -242,7 +240,6 @@
     }
 
     @Test
-    @EnableFlags(Flags.FLAG_NORMALIZE_HOME_INTENT)
     public void testInterceptIncorrectHomeIntent() {
         // Create a non-standard home intent
         final Intent homeIntent = new Intent(Intent.ACTION_MAIN);
diff --git a/services/tests/wmtests/src/com/android/server/wm/AppCompatCameraOverridesTest.java b/services/tests/wmtests/src/com/android/server/wm/AppCompatCameraOverridesTest.java
index d4be7f8..51da511 100644
--- a/services/tests/wmtests/src/com/android/server/wm/AppCompatCameraOverridesTest.java
+++ b/services/tests/wmtests/src/com/android/server/wm/AppCompatCameraOverridesTest.java
@@ -18,6 +18,7 @@
 
 import static android.content.pm.ActivityInfo.OVERRIDE_CAMERA_COMPAT_DISABLE_FORCE_ROTATION;
 import static android.content.pm.ActivityInfo.OVERRIDE_CAMERA_COMPAT_DISABLE_REFRESH;
+import static android.content.pm.ActivityInfo.OVERRIDE_CAMERA_COMPAT_DISABLE_SIMULATE_REQUESTED_ORIENTATION;
 import static android.content.pm.ActivityInfo.OVERRIDE_CAMERA_COMPAT_ENABLE_FREEFORM_WINDOWING_TREATMENT;
 import static android.content.pm.ActivityInfo.OVERRIDE_CAMERA_COMPAT_ENABLE_REFRESH_VIA_PAUSE;
 import static android.content.pm.ActivityInfo.OVERRIDE_MIN_ASPECT_RATIO_ONLY_FOR_CAMERA;
@@ -231,6 +232,7 @@
 
     @Test
     @EnableFlags(FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING)
+    @DisableFlags(FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING_OPT_OUT)
     public void testShouldApplyCameraCompatFreeformTreatment_notEnabledByOverride_returnsFalse() {
         runTestScenario((robot) -> {
             robot.activity().createActivityWithComponentInNewTask();
@@ -240,21 +242,19 @@
     }
 
     @Test
-    @EnableCompatChanges({OVERRIDE_CAMERA_COMPAT_ENABLE_FREEFORM_WINDOWING_TREATMENT})
+    @EnableCompatChanges({OVERRIDE_CAMERA_COMPAT_DISABLE_SIMULATE_REQUESTED_ORIENTATION})
     @EnableFlags({FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING,
             FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING_OPT_OUT})
-    public void testShouldApplyCameraCompatFreeformTreatment_propertyFalse_returnsFalse() {
+    public void testShouldApplyCameraCompatFreeformTreatment_disablePropertyOn_returnsFalse() {
         runTestScenario((robot) -> {
             robot.activity().createActivityWithComponentInNewTask();
 
-            robot.prop().disable(PROPERTY_CAMERA_COMPAT_ALLOW_SIMULATE_REQUESTED_ORIENTATION);
-
             robot.checkShouldApplyFreeformTreatmentForCameraCompat(false);
         });
     }
 
     @Test
-    @EnableCompatChanges({OVERRIDE_CAMERA_COMPAT_ENABLE_FREEFORM_WINDOWING_TREATMENT})
+    @EnableCompatChanges(OVERRIDE_CAMERA_COMPAT_ENABLE_FREEFORM_WINDOWING_TREATMENT)
     @EnableFlags(FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING)
     @DisableFlags(FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING_OPT_OUT)
     public void testShouldApplyCameraCompatFreeformTreatment_optOutFlagNotEnabled_optOutIgnored() {
@@ -262,18 +262,50 @@
             robot.activity().createActivityWithComponentInNewTask();
 
             robot.prop().disable(PROPERTY_CAMERA_COMPAT_ALLOW_SIMULATE_REQUESTED_ORIENTATION);
+            robot.activity().createActivityWithComponentInNewTask();
 
             robot.checkShouldApplyFreeformTreatmentForCameraCompat(true);
         });
     }
 
     @Test
-    @EnableCompatChanges({OVERRIDE_CAMERA_COMPAT_ENABLE_FREEFORM_WINDOWING_TREATMENT})
-    @EnableFlags(FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING)
-    public void testShouldApplyCameraCompatFreeformTreatment_overrideAndFlagEnabled_returnsTrue() {
+    @EnableFlags({FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING,
+            FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING_OPT_OUT})
+    public void testShouldApplyCameraCompatFreeformTreatment_optedOutViaProperty_returnsFalse() {
         runTestScenario((robot) -> {
             robot.activity().createActivityWithComponentInNewTask();
 
+            robot.prop().disable(PROPERTY_CAMERA_COMPAT_ALLOW_SIMULATE_REQUESTED_ORIENTATION);
+            robot.activity().createActivityWithComponentInNewTask();
+
+            robot.checkShouldApplyFreeformTreatmentForCameraCompat(false);
+        });
+    }
+
+    @Test
+    @EnableCompatChanges(OVERRIDE_CAMERA_COMPAT_ENABLE_FREEFORM_WINDOWING_TREATMENT)
+    @EnableFlags(FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING)
+    @DisableFlags(FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING_OPT_OUT)
+    public void testShouldApplyCameraCompatFreeformTreatment_optInAndFlagEnabled_returnsTrue() {
+        runTestScenario((robot) -> {
+            robot.activity().createActivityWithComponentInNewTask();
+
+            robot.checkShouldApplyFreeformTreatmentForCameraCompat(true);
+        });
+    }
+
+
+    @Test
+    @EnableFlags({FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING,
+            FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING_OPT_OUT})
+    public void testShouldApplyCameraCompatFreeformTreatment_notOptedOut_flagEnabled_returnsTrue() {
+        runTestScenario((robot) -> {
+            robot.conf().enableCameraCompatTreatment(true);
+            robot.applyOnActivity((a) -> {
+                a.createActivityWithComponentInNewTask();
+                robot.prop().enable(PROPERTY_CAMERA_COMPAT_ALLOW_SIMULATE_REQUESTED_ORIENTATION);
+            });
+
             robot.checkShouldApplyFreeformTreatmentForCameraCompat(true);
         });
     }
@@ -294,6 +326,8 @@
     @EnableCompatChanges({OVERRIDE_ORIENTATION_ONLY_FOR_CAMERA,
             OVERRIDE_MIN_ASPECT_RATIO_ONLY_FOR_CAMERA,
             OVERRIDE_CAMERA_COMPAT_ENABLE_FREEFORM_WINDOWING_TREATMENT})
+    @EnableFlags(FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING)
+    @DisableFlags(FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING_OPT_OUT)
     public void testShouldRecomputeConfigurationForFreeformTreatment() {
         runTestScenario((robot) -> {
             robot.conf().enableCameraCompatSplitScreenAspectRatio(true);
@@ -307,6 +341,24 @@
     }
 
     @Test
+    @EnableCompatChanges({OVERRIDE_ORIENTATION_ONLY_FOR_CAMERA,
+            OVERRIDE_MIN_ASPECT_RATIO_ONLY_FOR_CAMERA})
+    @EnableFlags({FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING,
+            FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING_OPT_OUT})
+    public void testShouldRecomputeConfigurationForFreeformTreatmentWithOptOutMechanism() {
+        runTestScenario((robot) -> {
+            robot.conf().enableCameraCompatSplitScreenAspectRatio(true);
+            robot.conf().enableCameraCompatTreatment(true);
+            robot.applyOnActivity((a) -> {
+                a.createActivityWithComponentInNewTask();
+                robot.prop().enable(PROPERTY_CAMERA_COMPAT_ALLOW_SIMULATE_REQUESTED_ORIENTATION);
+            });
+
+            robot.checkShouldApplyFreeformTreatmentForCameraCompat(true);
+        });
+    }
+
+    @Test
     @EnableCompatChanges({OVERRIDE_MIN_ASPECT_RATIO_ONLY_FOR_CAMERA})
     public void shouldOverrideMinAspectRatioForCamera_overrideEnabled_returnsTrue() {
         runTestScenario((robot) -> {
diff --git a/services/tests/wmtests/src/com/android/server/wm/AppCompatComponentPropRobot.java b/services/tests/wmtests/src/com/android/server/wm/AppCompatComponentPropRobot.java
index 361177f..fc1d105 100644
--- a/services/tests/wmtests/src/com/android/server/wm/AppCompatComponentPropRobot.java
+++ b/services/tests/wmtests/src/com/android/server/wm/AppCompatComponentPropRobot.java
@@ -20,8 +20,10 @@
 import static com.android.dx.mockito.inline.extended.ExtendedMockito.spyOn;
 
 import static org.junit.Assert.fail;
+import static org.mockito.ArgumentMatchers.anyInt;
 import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.ArgumentMatchers.nullable;
 
 import android.content.pm.PackageManager;
 
@@ -52,7 +54,8 @@
         final PackageManager.Property property = new PackageManager.Property(propertyName,
                 /* value */ enabled, packageName, className);
         try {
-            doReturn(property).when(mPackageManager).getProperty(eq(propertyName), anyString());
+            doReturn(property).when(mPackageManager).getPropertyAsUser(eq(propertyName),
+                    anyString(), nullable(String.class), anyInt());
         } catch (PackageManager.NameNotFoundException e) {
             fail(e.getLocalizedMessage());
         }
diff --git a/services/tests/wmtests/src/com/android/server/wm/AppCompatLetterboxPolicyTest.java b/services/tests/wmtests/src/com/android/server/wm/AppCompatLetterboxPolicyTest.java
index 2603d78..d38f3b0 100644
--- a/services/tests/wmtests/src/com/android/server/wm/AppCompatLetterboxPolicyTest.java
+++ b/services/tests/wmtests/src/com/android/server/wm/AppCompatLetterboxPolicyTest.java
@@ -350,8 +350,8 @@
             mWindowState.mInvGlobalScale = 1f;
             final WindowManager.LayoutParams attrs = new WindowManager.LayoutParams();
             attrs.type = TYPE_BASE_APPLICATION;
+            setFieldValue(mWindowState, "mAttrs", attrs);
             doReturn(mInsetsState).when(mWindowState).getInsetsState();
-            doReturn(attrs).when(mWindowState).getAttrs();
             doReturn(true).when(mWindowState).isDrawn();
             doReturn(true).when(mWindowState).isOnScreen();
             doReturn(false).when(mWindowState).isLetterboxedForDisplayCutout();
diff --git a/services/tests/wmtests/src/com/android/server/wm/CameraCompatFreeformPolicyTests.java b/services/tests/wmtests/src/com/android/server/wm/CameraCompatFreeformPolicyTests.java
index 5607252..50876c7 100644
--- a/services/tests/wmtests/src/com/android/server/wm/CameraCompatFreeformPolicyTests.java
+++ b/services/tests/wmtests/src/com/android/server/wm/CameraCompatFreeformPolicyTests.java
@@ -25,6 +25,7 @@
 import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN;
 import static android.app.servertransaction.ActivityLifecycleItem.ON_PAUSE;
 import static android.app.servertransaction.ActivityLifecycleItem.ON_STOP;
+import static android.content.pm.ActivityInfo.OVERRIDE_CAMERA_COMPAT_DISABLE_SIMULATE_REQUESTED_ORIENTATION;
 import static android.content.pm.ActivityInfo.OVERRIDE_CAMERA_COMPAT_ENABLE_FREEFORM_WINDOWING_TREATMENT;
 import static android.content.pm.ActivityInfo.RESIZE_MODE_RESIZEABLE;
 import static android.content.pm.ActivityInfo.SCREEN_ORIENTATION_FULL_USER;
@@ -42,6 +43,7 @@
 import static com.android.dx.mockito.inline.extended.ExtendedMockito.when;
 import static com.android.server.wm.AppCompatConfiguration.MIN_FIXED_ORIENTATION_LETTERBOX_ASPECT_RATIO;
 import static com.android.window.flags.Flags.FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING;
+import static com.android.window.flags.Flags.FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING_OPT_OUT;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
@@ -134,8 +136,10 @@
     }
 
     @Test
-    @EnableFlags(FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING)
-    public void testIsCameraRunningAndWindowingModeEligible_overrideDisabled_returnsFalse() {
+    @EnableFlags({FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING,
+            FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING_OPT_OUT})
+    @EnableCompatChanges({OVERRIDE_CAMERA_COMPAT_DISABLE_SIMULATE_REQUESTED_ORIENTATION})
+    public void testIsCameraRunningAndWindowingModeEligible_disabledViaOverride_returnsFalse() {
         configureActivity(SCREEN_ORIENTATION_PORTRAIT);
 
         mCameraAvailabilityCallback.onCameraOpened(CAMERA_ID_1, TEST_PACKAGE_1);
@@ -165,6 +169,7 @@
 
     @Test
     @EnableFlags(FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING)
+    @DisableFlags(FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING_OPT_OUT)
     @EnableCompatChanges({OVERRIDE_CAMERA_COMPAT_ENABLE_FREEFORM_WINDOWING_TREATMENT})
     public void testIsCameraRunningAndWindowingModeEligible_optInFreeformCameraRunning_true() {
         configureActivity(SCREEN_ORIENTATION_PORTRAIT);
@@ -175,6 +180,17 @@
     }
 
     @Test
+    @EnableFlags({FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING,
+            FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING_OPT_OUT})
+    public void testIsCameraRunningAndWindowingModeEligible_freeformCameraRunning_true() {
+        configureActivity(SCREEN_ORIENTATION_PORTRAIT);
+
+        onCameraOpened(CAMERA_ID_1, TEST_PACKAGE_1);
+
+        assertTrue(mCameraCompatFreeformPolicy.isCameraRunningAndWindowingModeEligible(mActivity));
+    }
+
+    @Test
     @EnableFlags(FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING)
     public void testIsFreeformLetterboxingForCameraAllowed_overrideDisabled_returnsFalse() {
         configureActivity(SCREEN_ORIENTATION_PORTRAIT);
diff --git a/services/tests/wmtests/src/com/android/server/wm/DesktopModeLaunchParamsModifierTests.java b/services/tests/wmtests/src/com/android/server/wm/DesktopModeLaunchParamsModifierTests.java
index d305c2f..3a06fff 100644
--- a/services/tests/wmtests/src/com/android/server/wm/DesktopModeLaunchParamsModifierTests.java
+++ b/services/tests/wmtests/src/com/android/server/wm/DesktopModeLaunchParamsModifierTests.java
@@ -49,6 +49,8 @@
 import static org.junit.Assert.assertEquals;
 import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.when;
 
 import android.app.ActivityOptions;
 import android.compat.testing.PlatformCompatChangeRule;
@@ -98,7 +100,8 @@
         mResult = new LaunchParamsController.LaunchParams();
         mResult.reset();
 
-        mTarget = new DesktopModeLaunchParamsModifier(mContext);
+        mTarget = spy(new DesktopModeLaunchParamsModifier(mContext));
+        doReturn(true).when(mTarget).isEnteringDesktopMode(any(), any(), any());
     }
 
     @Test
@@ -137,6 +140,81 @@
     }
 
     @Test
+    @EnableFlags({Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE,
+            Flags.FLAG_DISABLE_DESKTOP_LAUNCH_PARAMS_OUTSIDE_DESKTOP_BUG_FIX})
+    public void testReturnsSkipIfIsEnteringDesktopModeFalse() {
+        setupDesktopModeLaunchParamsModifier();
+        when(mTarget.isEnteringDesktopMode(any(), any(), any())).thenReturn(false);
+
+        final Task task = new TaskBuilder(mSupervisor).build();
+
+        assertEquals(RESULT_SKIP, new CalculateRequestBuilder().setTask(task).calculate());
+    }
+
+    @Test
+    @EnableFlags({Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE,
+            Flags.FLAG_DISABLE_DESKTOP_LAUNCH_PARAMS_OUTSIDE_DESKTOP_BUG_FIX})
+    public void testReturnsContinueIfVisibleFreeformTaskExists() {
+        setupDesktopModeLaunchParamsModifier();
+        when(mTarget.isEnteringDesktopMode(any(), any(), any())).thenCallRealMethod();
+
+        final DisplayContent dc = spy(createNewDisplay());
+        final Task existingFreeformTask = new TaskBuilder(mSupervisor).setCreateActivity(true)
+                .setWindowingMode(WINDOWING_MODE_FREEFORM).build();
+        doReturn(existingFreeformTask.getRootActivity()).when(dc)
+                .getTopMostVisibleFreeformActivity();
+        final Task launchingTask = new TaskBuilder(mSupervisor).build();
+        launchingTask.onDisplayChanged(dc);
+
+        assertEquals(RESULT_CONTINUE,
+                new CalculateRequestBuilder().setTask(launchingTask).calculate());
+    }
+
+    @Test
+    @EnableFlags({Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE,
+            Flags.FLAG_DISABLE_DESKTOP_LAUNCH_PARAMS_OUTSIDE_DESKTOP_BUG_FIX})
+    public void testReturnsContinueIfTaskInFreeform() {
+        setupDesktopModeLaunchParamsModifier();
+        when(mTarget.isEnteringDesktopMode(any(), any(), any())).thenCallRealMethod();
+
+        final Task task = new TaskBuilder(mSupervisor).setWindowingMode(WINDOWING_MODE_FREEFORM)
+                .build();
+
+        assertEquals(RESULT_CONTINUE,
+                new CalculateRequestBuilder().setTask(task).calculate());
+    }
+
+    @Test
+    @EnableFlags({Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE,
+            Flags.FLAG_DISABLE_DESKTOP_LAUNCH_PARAMS_OUTSIDE_DESKTOP_BUG_FIX})
+    public void testReturnsContinueIfFreeformRequestViaActivityOptions() {
+        setupDesktopModeLaunchParamsModifier();
+        when(mTarget.isEnteringDesktopMode(any(), any(), any())).thenCallRealMethod();
+
+        final Task task = new TaskBuilder(mSupervisor).build();
+        final ActivityOptions options = ActivityOptions.makeBasic();
+        options.setLaunchWindowingMode(WINDOWING_MODE_FREEFORM);
+
+        assertEquals(RESULT_CONTINUE,
+                new CalculateRequestBuilder().setTask(task).setOptions(options).calculate());
+    }
+
+    @Test
+    @EnableFlags({Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE,
+            Flags.FLAG_DISABLE_DESKTOP_LAUNCH_PARAMS_OUTSIDE_DESKTOP_BUG_FIX})
+    public void testReturnsContinueIfFreeformRequestViaPreviousModifier() {
+        setupDesktopModeLaunchParamsModifier();
+        when(mTarget.isEnteringDesktopMode(any(), any(), any())).thenCallRealMethod();
+
+        final Task task = new TaskBuilder(mSupervisor).build();
+        final ActivityOptions options = ActivityOptions.makeBasic();
+        options.setLaunchWindowingMode(WINDOWING_MODE_FREEFORM);
+
+        assertEquals(RESULT_CONTINUE,
+                new CalculateRequestBuilder().setTask(task).setOptions(options).calculate());
+    }
+
+    @Test
     @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE)
     public void testReturnsSkipIfNotBoundsPhase() {
         setupDesktopModeLaunchParamsModifier();
diff --git a/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java b/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java
index a99bc49..61ed0b5 100644
--- a/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java
+++ b/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java
@@ -63,6 +63,9 @@
 import static android.view.WindowManager.LayoutParams.TYPE_STATUS_BAR;
 import static android.view.WindowManager.LayoutParams.TYPE_VOICE_INTERACTION;
 import static android.view.WindowManager.LayoutParams.TYPE_WALLPAPER;
+import static android.view.WindowManager.TRANSIT_FLAG_AOD_APPEARING;
+import static android.view.WindowManager.TRANSIT_FLAG_KEYGUARD_GOING_AWAY;
+import static android.view.WindowManager.TRANSIT_FLAG_KEYGUARD_APPEARING;
 import static android.window.DisplayAreaOrganizer.FEATURE_WINDOWED_MAGNIFICATION;
 
 import static com.android.dx.mockito.inline.extended.ExtendedMockito.any;
@@ -80,9 +83,11 @@
 import static com.android.server.wm.WindowContainer.AnimationFlags.PARENTS;
 import static com.android.server.wm.WindowContainer.POSITION_TOP;
 import static com.android.server.wm.WindowManagerService.UPDATE_FOCUS_NORMAL;
+import static com.android.server.wm.TransitionSubject.assertThat;
 import static com.android.window.flags.Flags.FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING;
 import static com.android.window.flags.Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE;
 import static com.android.server.display.feature.flags.Flags.FLAG_ENABLE_DISPLAY_CONTENT_MODE_MANAGEMENT;
+import static com.android.window.flags.Flags.FLAG_ENABLE_PERSISTING_DENSITY_SCALE_FOR_CONNECTED_DISPLAYS;
 
 import static com.google.common.truth.Truth.assertThat;
 
@@ -146,6 +151,7 @@
 import com.android.server.LocalServices;
 import com.android.server.policy.WindowManagerPolicy;
 import com.android.server.wm.utils.WmDisplayCutout;
+import com.android.window.flags.Flags;
 
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -1414,7 +1420,7 @@
         final DisplayContent dc = createNewDisplay();
         final WindowState win = newWindowBuilder("win", TYPE_BASE_APPLICATION).setDisplay(
                 dc).build();
-        win.getAttrs().flags |= FLAG_LAYOUT_IN_SCREEN | FLAG_LAYOUT_INSET_DECOR;
+        win.mAttrs.flags |= FLAG_LAYOUT_IN_SCREEN | FLAG_LAYOUT_INSET_DECOR;
         win.setSystemGestureExclusion(Collections.singletonList(new Rect(10, 20, 30, 40)));
 
         performLayout(dc);
@@ -1447,11 +1453,11 @@
         final DisplayContent dc = createNewDisplay();
         final WindowState win = newWindowBuilder("win", TYPE_BASE_APPLICATION).setDisplay(
                 dc).build();
-        win.getAttrs().flags |= FLAG_LAYOUT_IN_SCREEN | FLAG_LAYOUT_INSET_DECOR;
+        win.mAttrs.flags |= FLAG_LAYOUT_IN_SCREEN | FLAG_LAYOUT_INSET_DECOR;
         win.setSystemGestureExclusion(Collections.singletonList(new Rect(10, 20, 30, 40)));
 
         final WindowState win2 = newWindowBuilder("win2", TYPE_APPLICATION).setDisplay(dc).build();
-        win2.getAttrs().flags |= FLAG_LAYOUT_IN_SCREEN | FLAG_LAYOUT_INSET_DECOR;
+        win2.mAttrs.flags |= FLAG_LAYOUT_IN_SCREEN | FLAG_LAYOUT_INSET_DECOR;
         win2.setSystemGestureExclusion(Collections.singletonList(new Rect(20, 30, 40, 50)));
 
         performLayout(dc);
@@ -1476,14 +1482,14 @@
         final DisplayContent dc = createNewDisplay();
         final WindowState win = newWindowBuilder("base", TYPE_BASE_APPLICATION).setDisplay(
                 dc).build();
-        win.getAttrs().flags |= FLAG_LAYOUT_IN_SCREEN | FLAG_LAYOUT_INSET_DECOR;
+        win.mAttrs.flags |= FLAG_LAYOUT_IN_SCREEN | FLAG_LAYOUT_INSET_DECOR;
         win.setSystemGestureExclusion(Collections.singletonList(new Rect(0, 0, 1000, 1000)));
 
         final WindowState win2 = newWindowBuilder("modal", TYPE_APPLICATION).setDisplay(dc).build();
-        win2.getAttrs().flags |= FLAG_LAYOUT_IN_SCREEN | FLAG_LAYOUT_INSET_DECOR;
-        win2.getAttrs().privateFlags |= PRIVATE_FLAG_NO_MOVE_ANIMATION;
-        win2.getAttrs().width = 10;
-        win2.getAttrs().height = 10;
+        win2.mAttrs.flags |= FLAG_LAYOUT_IN_SCREEN | FLAG_LAYOUT_INSET_DECOR;
+        win2.mAttrs.privateFlags |= PRIVATE_FLAG_NO_MOVE_ANIMATION;
+        win2.mAttrs.width = 10;
+        win2.mAttrs.height = 10;
         win2.setSystemGestureExclusion(Collections.emptyList());
 
         performLayout(dc);
@@ -1502,10 +1508,10 @@
         final DisplayContent dc = createNewDisplay();
         final WindowState win = newWindowBuilder("win", TYPE_BASE_APPLICATION).setDisplay(
                 dc).build();
-        win.getAttrs().flags |= FLAG_LAYOUT_IN_SCREEN | FLAG_LAYOUT_INSET_DECOR;
-        win.getAttrs().layoutInDisplayCutoutMode = LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES;
-        win.getAttrs().privateFlags |= PRIVATE_FLAG_NO_MOVE_ANIMATION;
-        win.getAttrs().insetsFlags.behavior = BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE;
+        win.mAttrs.flags |= FLAG_LAYOUT_IN_SCREEN | FLAG_LAYOUT_INSET_DECOR;
+        win.mAttrs.layoutInDisplayCutoutMode = LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES;
+        win.mAttrs.privateFlags |= PRIVATE_FLAG_NO_MOVE_ANIMATION;
+        win.mAttrs.insetsFlags.behavior = BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE;
         win.setRequestedVisibleTypes(0, navigationBars() | statusBars());
         win.mActivityRecord.mTargetSdk = P;
 
@@ -1527,9 +1533,9 @@
         final DisplayContent dc = createNewDisplay();
         final WindowState win = newWindowBuilder("win", TYPE_BASE_APPLICATION).setDisplay(
                 dc).build();
-        win.getAttrs().flags |= FLAG_LAYOUT_IN_SCREEN | FLAG_LAYOUT_INSET_DECOR;
-        win.getAttrs().layoutInDisplayCutoutMode = LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS;
-        win.getAttrs().privateFlags |= PRIVATE_FLAG_UNRESTRICTED_GESTURE_EXCLUSION;
+        win.mAttrs.flags |= FLAG_LAYOUT_IN_SCREEN | FLAG_LAYOUT_INSET_DECOR;
+        win.mAttrs.layoutInDisplayCutoutMode = LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS;
+        win.mAttrs.privateFlags |= PRIVATE_FLAG_UNRESTRICTED_GESTURE_EXCLUSION;
         win.setSystemGestureExclusion(Collections.singletonList(dc.getBounds()));
 
         performLayout(dc);
@@ -2619,6 +2625,7 @@
         final KeyguardController keyguard = mAtm.mKeyguardController;
         final ActivityRecord activity = new ActivityBuilder(mAtm).setCreateTask(true).build();
         final int displayId = mDisplayContent.getDisplayId();
+        final TestTransitionPlayer transitions = registerTestTransitionPlayer();
 
         final BooleanSupplier keyguardShowing = () -> keyguard.isKeyguardShowing(displayId);
         final BooleanSupplier keyguardGoingAway = () -> keyguard.isKeyguardGoingAway(displayId);
@@ -2628,21 +2635,40 @@
         keyguard.setKeyguardShown(displayId, true /* keyguard */, true /* aod */);
         assertFalse(keyguardGoingAway.getAsBoolean());
         assertFalse(appVisible.getAsBoolean());
+        transitions.flush();
 
         // Start unlocking from AOD.
         keyguard.keyguardGoingAway(displayId, 0x0 /* flags */);
         assertTrue(keyguardGoingAway.getAsBoolean());
         assertTrue(appVisible.getAsBoolean());
 
+        if (Flags.ensureKeyguardDoesTransitionStarting()) {
+            assertThat(transitions.mLastTransit).isNull();
+        } else {
+            assertThat(transitions.mLastTransit).flags()
+                    .containsExactly(TRANSIT_FLAG_KEYGUARD_GOING_AWAY);
+        }
+        transitions.flush();
+
         // Clear AOD. This does *not* clear the going-away status.
         keyguard.setKeyguardShown(displayId, true /* keyguard */, false /* aod */);
         assertTrue(keyguardGoingAway.getAsBoolean());
         assertTrue(appVisible.getAsBoolean());
 
+        if (Flags.aodTransition()) {
+            assertThat(transitions.mLastTransit).flags()
+                    .containsExactly(TRANSIT_FLAG_AOD_APPEARING);
+        } else {
+            assertThat(transitions.mLastTransit).isNull();
+        }
+        transitions.flush();
+
         // Finish unlock
         keyguard.setKeyguardShown(displayId, false /* keyguard */, false /* aod */);
         assertFalse(keyguardGoingAway.getAsBoolean());
         assertTrue(appVisible.getAsBoolean());
+
+        assertThat(transitions.mLastTransit).isNull();
     }
 
     @Test
@@ -2652,6 +2678,7 @@
         final KeyguardController keyguard = mAtm.mKeyguardController;
         final ActivityRecord activity = new ActivityBuilder(mAtm).setCreateTask(true).build();
         final int displayId = mDisplayContent.getDisplayId();
+        final TestTransitionPlayer transitions = registerTestTransitionPlayer();
 
         final BooleanSupplier keyguardShowing = () -> keyguard.isKeyguardShowing(displayId);
         final BooleanSupplier keyguardGoingAway = () -> keyguard.isKeyguardGoingAway(displayId);
@@ -2661,22 +2688,44 @@
         keyguard.setKeyguardShown(displayId, true /* keyguard */, true /* aod */);
         assertFalse(keyguardGoingAway.getAsBoolean());
         assertFalse(appVisible.getAsBoolean());
+        transitions.flush();
 
         // Start unlocking from AOD.
         keyguard.keyguardGoingAway(displayId, 0x0 /* flags */);
         assertTrue(keyguardGoingAway.getAsBoolean());
         assertTrue(appVisible.getAsBoolean());
 
+        if (!Flags.ensureKeyguardDoesTransitionStarting()) {
+            assertThat(transitions.mLastTransit).flags()
+                    .containsExactly(TRANSIT_FLAG_KEYGUARD_GOING_AWAY);
+        }
+        transitions.flush();
+
         // Clear AOD. This does *not* clear the going-away status.
         keyguard.setKeyguardShown(displayId, true /* keyguard */, false /* aod */);
         assertTrue(keyguardGoingAway.getAsBoolean());
         assertTrue(appVisible.getAsBoolean());
 
+        if (Flags.aodTransition()) {
+            assertThat(transitions.mLastTransit).flags()
+                    .containsExactly(TRANSIT_FLAG_AOD_APPEARING);
+        } else {
+            assertThat(transitions.mLastTransit).isNull();
+        }
+        transitions.flush();
+
         // Same API call a second time cancels the unlock, because AOD isn't changing.
         keyguard.setKeyguardShown(displayId, true /* keyguard */, false /* aod */);
         assertTrue(keyguardShowing.getAsBoolean());
         assertFalse(keyguardGoingAway.getAsBoolean());
         assertFalse(appVisible.getAsBoolean());
+
+        if (Flags.ensureKeyguardDoesTransitionStarting()) {
+            assertThat(transitions.mLastTransit).isNull();
+        } else {
+            assertThat(transitions.mLastTransit).flags()
+                    .containsExactly(TRANSIT_FLAG_KEYGUARD_APPEARING);
+        }
     }
 
     @Test
@@ -2872,6 +2921,74 @@
         assertFalse(dc.mWmService.mDisplayWindowSettings.shouldShowSystemDecorsLocked(dc));
     }
 
+    @EnableFlags(FLAG_ENABLE_PERSISTING_DENSITY_SCALE_FOR_CONNECTED_DISPLAYS)
+    @Test
+    public void testForcedDensityRatioSetForExternalDisplays_persistDensityScaleFlagEnabled() {
+        final DisplayInfo displayInfo = new DisplayInfo(mDisplayInfo);
+        displayInfo.displayId = DEFAULT_DISPLAY + 1;
+        displayInfo.type = Display.TYPE_EXTERNAL;
+        final DisplayContent displayContent = createNewDisplay(displayInfo);
+        final int baseWidth = 1280;
+        final int baseHeight = 720;
+        final int baseDensity = 320;
+        final float baseXDpi = 60;
+        final float baseYDpi = 60;
+
+        displayContent.mInitialDisplayWidth = baseWidth;
+        displayContent.mInitialDisplayHeight = baseHeight;
+        displayContent.mInitialDisplayDensity = baseDensity;
+        displayContent.updateBaseDisplayMetrics(baseWidth, baseHeight, baseDensity, baseXDpi,
+                baseYDpi);
+
+        final int forcedDensity = 640;
+
+        // Verify that forcing the density is honored and the size doesn't change.
+        displayContent.setForcedDensity(forcedDensity, 0 /* userId */);
+        verifySizes(displayContent, baseWidth, baseHeight, forcedDensity);
+
+        // Verify that density ratio is set correctly.
+        assertEquals((float) forcedDensity / baseDensity,
+                displayContent.mExternalDisplayForcedDensityRatio, 0.01);
+    }
+
+    @EnableFlags(FLAG_ENABLE_PERSISTING_DENSITY_SCALE_FOR_CONNECTED_DISPLAYS)
+    @Test
+    public void testForcedDensityUpdateForExternalDisplays_persistDensityScaleFlagEnabled() {
+        final DisplayInfo displayInfo = new DisplayInfo(mDisplayInfo);
+        displayInfo.displayId = DEFAULT_DISPLAY + 1;
+        displayInfo.type = Display.TYPE_EXTERNAL;
+        final DisplayContent displayContent = createNewDisplay(displayInfo);
+        final int baseWidth = 1280;
+        final int baseHeight = 720;
+        final int baseDensity = 320;
+        final float baseXDpi = 60;
+        final float baseYDpi = 60;
+
+        displayContent.mInitialDisplayWidth = baseWidth;
+        displayContent.mInitialDisplayHeight = baseHeight;
+        displayContent.mInitialDisplayDensity = baseDensity;
+        displayContent.updateBaseDisplayMetrics(baseWidth, baseHeight, baseDensity, baseXDpi,
+                baseYDpi);
+
+        final int forcedDensity = 640;
+
+        // Verify that forcing the density is honored and the size doesn't change.
+        displayContent.setForcedDensity(forcedDensity, 0 /* userId */);
+        verifySizes(displayContent, baseWidth, baseHeight, forcedDensity);
+
+        // Verify that density ratio is set correctly.
+        assertEquals((float) 2.0f,
+                displayContent.mExternalDisplayForcedDensityRatio, 0.001);
+
+
+        displayContent.mInitialDisplayDensity = 160;
+        displayContent.updateBaseDisplayMetrics(baseWidth, baseHeight, baseDensity, baseXDpi,
+                baseYDpi);
+
+        // Verify that forced density is updated based on the ratio.
+        assertEquals(320, displayContent.mBaseDisplayDensity);
+    }
+
     @EnableFlags(FLAG_ENABLE_DISPLAY_CONTENT_MODE_MANAGEMENT)
     @Test
     public void testSetShouldShowSystemDecorations_nonDefaultNonPrivateDisplay() {
diff --git a/services/tests/wmtests/src/com/android/server/wm/DisplayRotationTests.java b/services/tests/wmtests/src/com/android/server/wm/DisplayRotationTests.java
index 09fe75d..19cdb13 100644
--- a/services/tests/wmtests/src/com/android/server/wm/DisplayRotationTests.java
+++ b/services/tests/wmtests/src/com/android/server/wm/DisplayRotationTests.java
@@ -1084,7 +1084,7 @@
         final WindowManager.LayoutParams attrs = new WindowManager.LayoutParams();
         attrs.rotationAnimation = WindowManager.LayoutParams.ROTATION_ANIMATION_SEAMLESS;
 
-        doReturn(attrs).when(win).getAttrs();
+        WindowTestsBase.setFieldValue(win, "mAttrs", attrs);
         doReturn(true).when(mMockDisplayPolicy).navigationBarCanMove();
         doReturn(win).when(mMockDisplayPolicy).getTopFullscreenOpaqueWindow();
         mMockDisplayContent.mCurrentFocus = win;
diff --git a/services/tests/wmtests/src/com/android/server/wm/DisplayWindowSettingsTests.java b/services/tests/wmtests/src/com/android/server/wm/DisplayWindowSettingsTests.java
index b1cad51..a57577a96 100644
--- a/services/tests/wmtests/src/com/android/server/wm/DisplayWindowSettingsTests.java
+++ b/services/tests/wmtests/src/com/android/server/wm/DisplayWindowSettingsTests.java
@@ -42,6 +42,7 @@
 import android.annotation.NonNull;
 import android.app.WindowConfiguration;
 import android.content.ContentResolver;
+import android.platform.test.annotations.EnableFlags;
 import android.platform.test.annotations.Presubmit;
 import android.provider.Settings;
 import android.view.Display;
@@ -53,6 +54,7 @@
 import com.android.server.LocalServices;
 import com.android.server.policy.WindowManagerPolicy;
 import com.android.server.wm.DisplayWindowSettings.SettingsProvider.SettingsEntry;
+import com.android.window.flags.Flags;
 
 import org.junit.Before;
 import org.junit.Test;
@@ -272,6 +274,23 @@
                 mSecondaryDisplay.mBaseDisplayDensity);
     }
 
+    @EnableFlags(Flags.FLAG_ENABLE_PERSISTING_DENSITY_SCALE_FOR_CONNECTED_DISPLAYS)
+    @Test
+    public void testSetForcedDensityRatio() {
+        mDisplayWindowSettings.setForcedDensity(mSecondaryDisplay.getDisplayInfo(),
+                300 /* density */, 0 /* userId */);
+        mDisplayWindowSettings.setForcedDensityRatio(mSecondaryDisplay.getDisplayInfo(),
+                2.0f /* ratio */);
+        mDisplayWindowSettings.applySettingsToDisplayLocked(mSecondaryDisplay);
+
+        assertEquals(mSecondaryDisplay.mInitialDisplayDensity * 2.0f,
+                mSecondaryDisplay.mBaseDisplayDensity, 0.01);
+
+        mWm.clearForcedDisplayDensityForUser(mSecondaryDisplay.getDisplayId(), 0 /* userId */);
+        assertEquals(mSecondaryDisplay.mInitialDisplayDensity,
+                mSecondaryDisplay.mBaseDisplayDensity);
+    }
+
     @Test
     public void testSetForcedScalingMode() {
         mDisplayWindowSettings.setForcedScalingMode(mSecondaryDisplay,
diff --git a/services/tests/wmtests/src/com/android/server/wm/PresentationControllerTests.java b/services/tests/wmtests/src/com/android/server/wm/PresentationControllerTests.java
index 2d4101e..6e0f7fb 100644
--- a/services/tests/wmtests/src/com/android/server/wm/PresentationControllerTests.java
+++ b/services/tests/wmtests/src/com/android/server/wm/PresentationControllerTests.java
@@ -16,9 +16,12 @@
 
 package com.android.server.wm;
 
+import static android.view.Display.DEFAULT_DISPLAY;
 import static android.view.Display.FLAG_PRESENTATION;
+import static android.view.Display.FLAG_TRUSTED;
 import static android.view.WindowManager.TRANSIT_CLOSE;
 import static android.view.WindowManager.TRANSIT_OPEN;
+import static android.view.WindowManager.TRANSIT_WAKE;
 
 import static com.android.dx.mockito.inline.extended.ExtendedMockito.doReturn;
 import static com.android.window.flags.Flags.FLAG_ENABLE_PRESENTATION_FOR_CONNECTED_DISPLAYS;
@@ -30,6 +33,7 @@
 
 import android.annotation.NonNull;
 import android.graphics.Rect;
+import android.os.Binder;
 import android.os.UserHandle;
 import android.platform.test.annotations.DisableFlags;
 import android.platform.test.annotations.EnableFlags;
@@ -118,6 +122,112 @@
         assertFalse(window.isAttached());
     }
 
+    @EnableFlags(FLAG_ENABLE_PRESENTATION_FOR_CONNECTED_DISPLAYS)
+    @Test
+    public void testPresentationCannotCoverHostTask() {
+        int uid = Binder.getCallingUid();
+        final DisplayContent presentationDisplay = createPresentationDisplay();
+        final Task task = createTask(presentationDisplay);
+        task.effectiveUid = uid;
+        final ActivityRecord activity = createActivityRecord(task);
+        assertTrue(activity.isVisible());
+
+        // Adding a presentation window over its host task must fail.
+        assertAddPresentationWindowFails(uid, presentationDisplay.mDisplayId);
+
+        // Adding a presentation window on the other display must succeed.
+        final WindowState window = addPresentationWindow(uid, DEFAULT_DISPLAY);
+        final Transition addTransition = window.mTransitionController.getCollectingTransition();
+        completeTransition(addTransition, /*abortSync=*/ true);
+        assertTrue(window.isVisible());
+
+        // Moving the host task to the presenting display will remove the presentation.
+        task.reparent(mDefaultDisplay.getDefaultTaskDisplayArea(), true);
+        waitHandlerIdle(window.mWmService.mAtmService.mH);
+        final Transition removeTransition = window.mTransitionController.getCollectingTransition();
+        assertEquals(TRANSIT_CLOSE, removeTransition.mType);
+        completeTransition(removeTransition, /*abortSync=*/ false);
+        assertFalse(window.isVisible());
+    }
+
+    @EnableFlags(FLAG_ENABLE_PRESENTATION_FOR_CONNECTED_DISPLAYS)
+    @Test
+    public void testPresentationCannotLaunchOnAllDisplays() {
+        final int uid = Binder.getCallingUid();
+        final DisplayContent presentationDisplay = createPresentationDisplay();
+        final Task task = createTask(presentationDisplay);
+        task.effectiveUid = uid;
+        final ActivityRecord activity = createActivityRecord(task);
+        assertTrue(activity.isVisible());
+
+        // Add a presentation window on the default display.
+        final WindowState window = addPresentationWindow(uid, DEFAULT_DISPLAY);
+        final Transition addTransition = window.mTransitionController.getCollectingTransition();
+        completeTransition(addTransition, /*abortSync=*/ true);
+        assertTrue(window.isVisible());
+
+        // Adding another presentation window over the task even if it's a different UID because
+        // it would end up showing presentations on all displays.
+        assertAddPresentationWindowFails(uid + 1, presentationDisplay.mDisplayId);
+    }
+
+    @EnableFlags(FLAG_ENABLE_PRESENTATION_FOR_CONNECTED_DISPLAYS)
+    @Test
+    public void testPresentationCannotLaunchOnNonPresentationDisplayWithoutHostHavingGlobalFocus() {
+        final int uid = Binder.getCallingUid();
+        // Adding a presentation window on an internal display requires a host task
+        // with global focus on another display.
+        assertAddPresentationWindowFails(uid, DEFAULT_DISPLAY);
+
+        final DisplayContent presentationDisplay = createPresentationDisplay();
+        final Task taskWiSameUid = createTask(presentationDisplay);
+        taskWiSameUid.effectiveUid = uid;
+        final ActivityRecord activity = createActivityRecord(taskWiSameUid);
+        assertTrue(activity.isVisible());
+        final Task taskWithDifferentUid = createTask(presentationDisplay);
+        taskWithDifferentUid.effectiveUid = uid + 1;
+        createActivityRecord(taskWithDifferentUid);
+        assertEquals(taskWithDifferentUid, presentationDisplay.getFocusedRootTask());
+
+        // The task with the same UID is covered by another task with a different UID, so this must
+        // also fail.
+        assertAddPresentationWindowFails(uid, DEFAULT_DISPLAY);
+
+        // Moving the task with the same UID to front and giving it global focus allows a
+        // presentation to show on the default display.
+        taskWiSameUid.moveToFront("test");
+        final WindowState window = addPresentationWindow(uid, DEFAULT_DISPLAY);
+        final Transition addTransition = window.mTransitionController.getCollectingTransition();
+        completeTransition(addTransition, /*abortSync=*/ true);
+        assertTrue(window.isVisible());
+    }
+
+    @EnableFlags(FLAG_ENABLE_PRESENTATION_FOR_CONNECTED_DISPLAYS)
+    @Test
+    public void testReparentingActivityToSameDisplayClosesPresentation() {
+        final int uid = Binder.getCallingUid();
+        final Task task = createTask(mDefaultDisplay);
+        task.effectiveUid = uid;
+        final ActivityRecord activity = createActivityRecord(task);
+        assertTrue(activity.isVisible());
+
+        // Add a presentation window on a presentation display.
+        final DisplayContent presentationDisplay = createPresentationDisplay();
+        final WindowState window = addPresentationWindow(uid, presentationDisplay.getDisplayId());
+        final Transition addTransition = window.mTransitionController.getCollectingTransition();
+        completeTransition(addTransition, /*abortSync=*/ true);
+        assertTrue(window.isVisible());
+
+        // Reparenting the host task below the presentation must close the presentation.
+        task.reparent(presentationDisplay.getDefaultTaskDisplayArea(), true);
+        waitHandlerIdle(window.mWmService.mAtmService.mH);
+        final Transition removeTransition = window.mTransitionController.getCollectingTransition();
+        // It's a WAKE transition instead of CLOSE because
+        assertEquals(TRANSIT_WAKE, removeTransition.mType);
+        completeTransition(removeTransition, /*abortSync=*/ false);
+        assertFalse(window.isVisible());
+    }
+
     private WindowState addPresentationWindow(int uid, int displayId) {
         final Session session = createTestSession(mAtm, 1234 /* pid */, uid);
         final int userId = UserHandle.getUserId(uid);
@@ -134,10 +244,29 @@
         return window;
     }
 
+    private void assertAddPresentationWindowFails(int uid, int displayId) {
+        final Session session = createTestSession(mAtm, 1234 /* pid */, uid);
+        final IWindow clientWindow = new TestIWindow();
+        final int res = addPresentationWindowInner(uid, displayId, session, clientWindow);
+        assertEquals(WindowManagerGlobal.ADD_INVALID_DISPLAY, res);
+    }
+
+    private int addPresentationWindowInner(int uid, int displayId, Session session,
+            IWindow clientWindow) {
+        final int userId = UserHandle.getUserId(uid);
+        doReturn(true).when(mWm.mUmInternal).isUserVisible(eq(userId), eq(displayId));
+        final WindowManager.LayoutParams params = new WindowManager.LayoutParams(
+                WindowManager.LayoutParams.TYPE_PRESENTATION);
+        return mWm.addWindow(session, clientWindow, params, View.VISIBLE, displayId, userId,
+                WindowInsets.Type.defaultVisible(), null, new InsetsState(),
+                new InsetsSourceControl.Array(), new Rect(), new float[1]);
+    }
+
     private DisplayContent createPresentationDisplay() {
         final DisplayInfo displayInfo = new DisplayInfo();
         displayInfo.copyFrom(mDisplayInfo);
-        displayInfo.flags = FLAG_PRESENTATION;
+        displayInfo.flags = FLAG_PRESENTATION | FLAG_TRUSTED;
+        displayInfo.displayId = DEFAULT_DISPLAY + 1;
         final DisplayContent dc = createNewDisplay(displayInfo);
         final int displayId = dc.getDisplayId();
         doReturn(dc).when(mWm.mRoot).getDisplayContentOrCreate(displayId);
diff --git a/services/tests/wmtests/src/com/android/server/wm/RefreshRatePolicyTest.java b/services/tests/wmtests/src/com/android/server/wm/RefreshRatePolicyTest.java
index 45436e4..d3f3269 100644
--- a/services/tests/wmtests/src/com/android/server/wm/RefreshRatePolicyTest.java
+++ b/services/tests/wmtests/src/com/android/server/wm/RefreshRatePolicyTest.java
@@ -33,6 +33,7 @@
 import android.platform.test.annotations.Presubmit;
 import android.view.Display.Mode;
 import android.view.Surface;
+import android.view.WindowInsets;
 import android.view.WindowManager.LayoutParams;
 
 import androidx.test.filters.SmallTest;
@@ -283,7 +284,7 @@
         assertEquals(0, mPolicy.getPreferredMinRefreshRate(overrideWindow), FLOAT_TOLERANCE);
         assertEquals(0, mPolicy.getPreferredMaxRefreshRate(overrideWindow), FLOAT_TOLERANCE);
 
-        overrideWindow.notifyInsetsAnimationRunningStateChanged(true);
+        overrideWindow.setAnimatingTypes(WindowInsets.Type.statusBars());
         assertEquals(LOW_MODE_ID, mPolicy.getPreferredModeId(overrideWindow));
         assertTrue(mPolicy.updateFrameRateVote(overrideWindow));
         assertEquals(FRAME_RATE_VOTE_NONE, overrideWindow.mFrameRateVote);
@@ -303,7 +304,7 @@
         assertEquals(0, mPolicy.getPreferredMinRefreshRate(overrideWindow), FLOAT_TOLERANCE);
         assertEquals(0, mPolicy.getPreferredMaxRefreshRate(overrideWindow), FLOAT_TOLERANCE);
 
-        overrideWindow.notifyInsetsAnimationRunningStateChanged(true);
+        overrideWindow.setAnimatingTypes(WindowInsets.Type.statusBars());
         assertEquals(0, mPolicy.getPreferredModeId(overrideWindow));
         assertTrue(mPolicy.updateFrameRateVote(overrideWindow));
         assertEquals(FRAME_RATE_VOTE_NONE, overrideWindow.mFrameRateVote);
diff --git a/services/tests/wmtests/src/com/android/server/wm/SizeCompatTests.java b/services/tests/wmtests/src/com/android/server/wm/SizeCompatTests.java
index 1dc32b0..4e09d6a 100644
--- a/services/tests/wmtests/src/com/android/server/wm/SizeCompatTests.java
+++ b/services/tests/wmtests/src/com/android/server/wm/SizeCompatTests.java
@@ -5128,9 +5128,9 @@
 
         // Application level.
         try {
-            doReturn(property).when(pm).getProperty(
+            doReturn(property).when(pm).getPropertyAsUser(
                     WindowManager.PROPERTY_COMPAT_ALLOW_RESTRICTED_RESIZABILITY,
-                    name.getPackageName());
+                    name.getPackageName(), null /* className */, 0 /* userId */);
         } catch (PackageManager.NameNotFoundException e) {
             throw new RuntimeException(e);
         }
diff --git a/services/tests/wmtests/src/com/android/server/wm/TransitionTests.java b/services/tests/wmtests/src/com/android/server/wm/TransitionTests.java
index c0cb09f..5699c29 100644
--- a/services/tests/wmtests/src/com/android/server/wm/TransitionTests.java
+++ b/services/tests/wmtests/src/com/android/server/wm/TransitionTests.java
@@ -2088,14 +2088,16 @@
 
     @Test
     public void testOverrideAnimationOptionsToInfoIfNecessary_customAnimOptions() {
-        ActivityRecord r = initializeOverrideAnimationOptionsTest();
-        TransitionInfo.AnimationOptions options = TransitionInfo.AnimationOptions
+        final ActivityRecord r = initializeOverrideAnimationOptionsTest();
+        final TransitionInfo.AnimationOptions options = TransitionInfo.AnimationOptions
                 .makeCustomAnimOptions("testPackage", Resources.ID_NULL,
                         TransitionInfo.AnimationOptions.DEFAULT_ANIMATION_RESOURCES_ID,
                         TransitionInfo.AnimationOptions.DEFAULT_ANIMATION_RESOURCES_ID,
-                        Color.GREEN, false /* overrideTaskTransition */);
+                        false /* overrideTaskTransition */);
         mTransition.setOverrideAnimation(options, r, null /* startCallback */,
                 null /* finishCallback */);
+        final int expectedBackgroundColor = Color.GREEN;
+        mTransition.setOverrideBackgroundColor(expectedBackgroundColor);
 
         mTransition.overrideAnimationOptionsToInfoIfNecessary(mInfo);
 
@@ -2115,12 +2117,13 @@
         assertEquals("Activity change's AnimationOptions must be overridden.",
                 options, activityChange.getAnimationOptions());
         assertEquals("Activity change's background color must be overridden.",
-                options.getBackgroundColor(), activityChange.getBackgroundColor());
+                expectedBackgroundColor, activityChange.getBackgroundColor());
+
     }
 
     @Test
     public void testOverrideAnimationOptionsToInfoIfNecessary_haveTaskFragmentAnimParams() {
-        ActivityRecord r = initializeOverrideAnimationOptionsTest();
+        final ActivityRecord r = initializeOverrideAnimationOptionsTest();
 
         final TaskFragment embeddedTf = mTransition.mTargets.get(2).mContainer.asTaskFragment();
         embeddedTf.setAnimationParams(new TaskFragmentAnimationParams.Builder()
@@ -2128,13 +2131,15 @@
                 .setOpenAnimationResId(0x12345678)
                 .build());
 
-        TransitionInfo.AnimationOptions options = TransitionInfo.AnimationOptions
+        final TransitionInfo.AnimationOptions options = TransitionInfo.AnimationOptions
                 .makeCustomAnimOptions("testPackage", Resources.ID_NULL,
                         TransitionInfo.AnimationOptions.DEFAULT_ANIMATION_RESOURCES_ID,
                         TransitionInfo.AnimationOptions.DEFAULT_ANIMATION_RESOURCES_ID,
-                        Color.GREEN, false /* overrideTaskTransition */);
+                        false /* overrideTaskTransition */);
         mTransition.setOverrideAnimation(options, r, null /* startCallback */,
                 null /* finishCallback */);
+        final int expectedBackgroundColor = Color.GREEN;
+        mTransition.setOverrideBackgroundColor(expectedBackgroundColor);
 
         final TransitionInfo.Change displayChange = mInfo.getChanges().get(0);
         final TransitionInfo.Change taskChange = mInfo.getChanges().get(1);
@@ -2147,7 +2152,7 @@
                 .makeCustomAnimOptions("testPackage", 0x12345678,
                         TransitionInfo.AnimationOptions.DEFAULT_ANIMATION_RESOURCES_ID,
                         TransitionInfo.AnimationOptions.DEFAULT_ANIMATION_RESOURCES_ID,
-                        0, false /* overrideTaskTransition */);
+                        false /* overrideTaskTransition */);
         embeddedTfChange.setAnimationOptions(expectedOptions);
 
         mTransition.overrideAnimationOptionsToInfoIfNecessary(mInfo);
@@ -2163,19 +2168,21 @@
         assertEquals("Activity change's AnimationOptions must be overridden.",
                 options, activityChange.getAnimationOptions());
         assertEquals("Activity change's background color must be overridden.",
-                options.getBackgroundColor(), activityChange.getBackgroundColor());
+                expectedBackgroundColor, activityChange.getBackgroundColor());
     }
 
     @Test
     public void testOverrideAnimationOptionsToInfoIfNecessary_customAnimOptionsWithTaskOverride() {
-        ActivityRecord r = initializeOverrideAnimationOptionsTest();
-        TransitionInfo.AnimationOptions options = TransitionInfo.AnimationOptions
+        final ActivityRecord r = initializeOverrideAnimationOptionsTest();
+        final TransitionInfo.AnimationOptions options = TransitionInfo.AnimationOptions
                 .makeCustomAnimOptions("testPackage", Resources.ID_NULL,
                         TransitionInfo.AnimationOptions.DEFAULT_ANIMATION_RESOURCES_ID,
                         TransitionInfo.AnimationOptions.DEFAULT_ANIMATION_RESOURCES_ID,
-                        Color.GREEN, true /* overrideTaskTransition */);
+                        true /* overrideTaskTransition */);
         mTransition.setOverrideAnimation(options, r, null /* startCallback */,
                 null /* finishCallback */);
+        final int expectedBackgroundColor = Color.GREEN;
+        mTransition.setOverrideBackgroundColor(expectedBackgroundColor);
 
         mTransition.overrideAnimationOptionsToInfoIfNecessary(mInfo);
 
@@ -2189,7 +2196,7 @@
         assertEquals("Task change's AnimationOptions must be overridden.",
                 options, taskChange.getAnimationOptions());
         assertEquals("Task change's background color must be overridden.",
-                options.getBackgroundColor(), taskChange.getBackgroundColor());
+                expectedBackgroundColor, taskChange.getBackgroundColor());
         assertEquals("Embedded TF change's AnimationOptions must be overridden.",
                 options, embeddedTfChange.getAnimationOptions());
         assertEquals("Embedded TF change's background color must be overridden.",
@@ -2197,7 +2204,7 @@
         assertEquals("Activity change's AnimationOptions must be overridden.",
                 options, activityChange.getAnimationOptions());
         assertEquals("Activity change's background color must be overridden.",
-                options.getBackgroundColor(), activityChange.getBackgroundColor());
+                expectedBackgroundColor, activityChange.getBackgroundColor());
     }
 
     private ActivityRecord initializeOverrideAnimationOptionsTest() {
diff --git a/services/tests/wmtests/src/com/android/server/wm/WallpaperControllerTests.java b/services/tests/wmtests/src/com/android/server/wm/WallpaperControllerTests.java
index 358448e..adeeb98 100644
--- a/services/tests/wmtests/src/com/android/server/wm/WallpaperControllerTests.java
+++ b/services/tests/wmtests/src/com/android/server/wm/WallpaperControllerTests.java
@@ -120,7 +120,7 @@
         // No wallpaper WSA Surface
         final WindowState wallpaperWindow = createWallpaperWindow(dc);
 
-        WindowManager.LayoutParams attrs = wallpaperWindow.getAttrs();
+        WindowManager.LayoutParams attrs = wallpaperWindow.mAttrs;
         Rect bounds = dc.getBounds();
         int displayWidth = dc.getBounds().width();
         int displayHeight = dc.getBounds().height();
@@ -170,7 +170,7 @@
     public void testWallpaperZoom() throws RemoteException {
         final DisplayContent dc = mWm.mRoot.getDefaultDisplay();
         final WindowState wallpaperWindow = createWallpaperWindow(dc);
-        wallpaperWindow.getAttrs().privateFlags |=
+        wallpaperWindow.mAttrs.privateFlags |=
                 WindowManager.LayoutParams.PRIVATE_FLAG_WANTS_OFFSET_NOTIFICATIONS;
 
         final WindowState homeWindow = createWallpaperTargetWindow(dc);
@@ -201,7 +201,7 @@
     public void testWallpaperZoom_shouldNotScaleWallpaper() throws RemoteException {
         final DisplayContent dc = mWm.mRoot.getDefaultDisplay();
         final WindowState wallpaperWindow = createWallpaperWindow(dc);
-        wallpaperWindow.getAttrs().privateFlags |=
+        wallpaperWindow.mAttrs.privateFlags |=
                 WindowManager.LayoutParams.PRIVATE_FLAG_WANTS_OFFSET_NOTIFICATIONS;
 
         final WindowState homeWindow = createWallpaperTargetWindow(dc);
@@ -234,7 +234,7 @@
     public void testWallpaperZoom_multipleCallers() {
         final DisplayContent dc = mWm.mRoot.getDefaultDisplay();
         final WindowState wallpaperWindow = createWallpaperWindow(dc);
-        wallpaperWindow.getAttrs().privateFlags |=
+        wallpaperWindow.mAttrs.privateFlags |=
                 WindowManager.LayoutParams.PRIVATE_FLAG_WANTS_OFFSET_NOTIFICATIONS;
 
 
@@ -580,7 +580,7 @@
 
         WindowState appWindow = newWindowBuilder("wallpaperTargetWindow",
                 TYPE_BASE_APPLICATION).setWindowToken(homeActivity).build();
-        appWindow.getAttrs().flags |= FLAG_SHOW_WALLPAPER;
+        appWindow.mAttrs.flags |= FLAG_SHOW_WALLPAPER;
         appWindow.mHasSurface = true;
         spyOn(appWindow);
         doReturn(true).when(appWindow).isDrawFinishedLw();
diff --git a/services/tests/wmtests/src/com/android/server/wm/WindowTestsBase.java b/services/tests/wmtests/src/com/android/server/wm/WindowTestsBase.java
index c641685..57ab13f 100644
--- a/services/tests/wmtests/src/com/android/server/wm/WindowTestsBase.java
+++ b/services/tests/wmtests/src/com/android/server/wm/WindowTestsBase.java
@@ -136,6 +136,7 @@
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
+import java.lang.reflect.Field;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -1024,6 +1025,16 @@
         displayContent.performDisplayOverrideConfigUpdate(c);
     }
 
+    static void setFieldValue(Object o, String fieldName, Object value) {
+        try {
+            final Field field = o.getClass().getDeclaredField(fieldName);
+            field.setAccessible(true);
+            field.set(o, value);
+        } catch (IllegalArgumentException | IllegalAccessException | NoSuchFieldException e) {
+            throw new RuntimeException(e);
+        }
+    }
+
     static void makeDisplayLargeScreen(DisplayContent displayContent) {
         final int swDp = displayContent.getConfiguration().smallestScreenWidthDp;
         if (swDp < WindowManager.LARGE_SCREEN_SMALLEST_SCREEN_WIDTH_DP) {
@@ -2140,6 +2151,14 @@
             mLastRequest = null;
         }
 
+        void flush() {
+            if (mLastTransit != null) {
+                start();
+                finish();
+                clear();
+            }
+        }
+
         @Override
         public void onTransitionReady(IBinder transitToken, TransitionInfo transitionInfo,
                 SurfaceControl.Transaction transaction, SurfaceControl.Transaction finishT)
diff --git a/services/tests/wmtests/src/com/android/server/wm/utils/OptPropFactoryTest.java b/services/tests/wmtests/src/com/android/server/wm/utils/OptPropFactoryTest.java
index 004de1f..3769d98 100644
--- a/services/tests/wmtests/src/com/android/server/wm/utils/OptPropFactoryTest.java
+++ b/services/tests/wmtests/src/com/android/server/wm/utils/OptPropFactoryTest.java
@@ -20,7 +20,10 @@
 import static junit.framework.Assert.assertFalse;
 import static junit.framework.Assert.assertTrue;
 
+import static org.mockito.ArgumentMatchers.anyInt;
 import static org.mockito.ArgumentMatchers.anyString;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.ArgumentMatchers.isNull;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.never;
 import static org.mockito.Mockito.verify;
@@ -47,27 +50,30 @@
 @Presubmit
 public class OptPropFactoryTest {
 
+    private static final String PACKAGE_NAME = "";
+    private static final int USER_ID = 10;
     private PackageManager mPackageManager;
     private OptPropFactory mOptPropFactory;
 
     @Before
     public void setUp() {
         mPackageManager = mock(PackageManager.class);
-        mOptPropFactory = new OptPropFactory(mPackageManager, "");
+        mOptPropFactory = new OptPropFactory(mPackageManager, PACKAGE_NAME, USER_ID);
     }
 
     @Test
     public void optProp_laziness() throws PackageManager.NameNotFoundException {
         initPropAs(/* propertyValue */ true);
         // When OptPropBuilder is created the PackageManager is not used
-        verify(mPackageManager, never()).getProperty(anyString(), anyString());
+        verify(mPackageManager, never()).getPropertyAsUser(anyString(), anyString(), isNull(),
+                anyInt());
 
         // Accessing the value multiple times only uses PackageManager once
         final OptProp optProp = createOptProp();
         optProp.isTrue();
         optProp.isFalse();
 
-        verify(mPackageManager).getProperty(anyString(), anyString());
+        verify(mPackageManager).getPropertyAsUser(anyString(), anyString(), isNull(), eq(USER_ID));
     }
 
     @Test
@@ -241,13 +247,15 @@
     private void initPropAs(boolean propertyValue) throws PackageManager.NameNotFoundException {
         Mockito.clearInvocations(mPackageManager);
         final PackageManager.Property prop = new PackageManager.Property(
-                "", /* value */ propertyValue, "", "");
-        when(mPackageManager.getProperty(anyString(), anyString())).thenReturn(prop);
+                "", /* value */ propertyValue, PACKAGE_NAME, "");
+        when(mPackageManager.getPropertyAsUser(anyString(), anyString(), isNull(), anyInt()))
+                .thenReturn(prop);
     }
 
     private void initPropAsWithException() throws PackageManager.NameNotFoundException {
         Mockito.clearInvocations(mPackageManager);
-        when(mPackageManager.getProperty("", "")).thenThrow(
+        when(mPackageManager.getPropertyAsUser("", PACKAGE_NAME,
+                null /* className */, USER_ID)).thenThrow(
                 new PackageManager.NameNotFoundException());
     }
 
diff --git a/telecomm/java/android/telecom/OWNERS b/telecomm/java/android/telecom/OWNERS
index 6656a01..0854c5d 100644
--- a/telecomm/java/android/telecom/OWNERS
+++ b/telecomm/java/android/telecom/OWNERS
@@ -3,4 +3,3 @@
 rgreenwalt@google.com
 tgunn@google.com
 breadley@google.com
-hallliu@google.com
diff --git a/telephony/java/android/telephony/DisconnectCause.java b/telephony/java/android/telephony/DisconnectCause.java
index a8c077d..9c102a5 100644
--- a/telephony/java/android/telephony/DisconnectCause.java
+++ b/telephony/java/android/telephony/DisconnectCause.java
@@ -366,7 +366,6 @@
     /**
      * Indicates that the call was unable to be made because the satellite modem is enabled.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_ENABLED = 82;
 
     //*********************************************************************************************
diff --git a/telephony/java/android/telephony/SubscriptionInfo.java b/telephony/java/android/telephony/SubscriptionInfo.java
index 4b175c1..57167c9 100644
--- a/telephony/java/android/telephony/SubscriptionInfo.java
+++ b/telephony/java/android/telephony/SubscriptionInfo.java
@@ -900,7 +900,6 @@
      * @return {@code true} if it is a non-terrestrial network subscription, {@code false}
      * otherwise.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public boolean isOnlyNonTerrestrialNetwork() {
         return mIsOnlyNonTerrestrialNetwork;
     }
diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java
index 41569de..fbba999 100644
--- a/telephony/java/android/telephony/TelephonyManager.java
+++ b/telephony/java/android/telephony/TelephonyManager.java
@@ -1241,7 +1241,6 @@
      * {@link #EXTRA_EMERGENCY_CALL_TO_SATELLITE_LAUNCH_INTENT} will not be included in the event
      * {@link #EVENT_DISPLAY_EMERGENCY_MESSAGE}.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final String EVENT_DISPLAY_EMERGENCY_MESSAGE =
             "android.telephony.event.DISPLAY_EMERGENCY_MESSAGE";
 
@@ -1256,7 +1255,6 @@
      * <p>
      * Set in the extras for the {@link #EVENT_DISPLAY_EMERGENCY_MESSAGE} connection event.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final String EXTRA_EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE =
             "android.telephony.extra.EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE";
 
@@ -1264,7 +1262,6 @@
      * Extra key used with the {@link #EVENT_DISPLAY_EMERGENCY_MESSAGE} for a {@link PendingIntent}
      * which will be launched by the Dialer app.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final String EXTRA_EMERGENCY_CALL_TO_SATELLITE_LAUNCH_INTENT =
             "android.telephony.extra.EMERGENCY_CALL_TO_SATELLITE_LAUNCH_INTENT";
 
@@ -10582,9 +10579,19 @@
     public boolean hasCarrierPrivileges(int subId) {
         try {
             ITelephony telephony = getITelephony();
-            if (telephony != null) {
-                return telephony.getCarrierPrivilegeStatus(subId)
-                        == CARRIER_PRIVILEGE_STATUS_HAS_ACCESS;
+            if (telephony == null) {
+                Rlog.e(TAG, "hasCarrierPrivileges: no Telephony service");
+                return false;
+            }
+            int status = telephony.getCarrierPrivilegeStatus(subId);
+            switch (status) {
+                case CARRIER_PRIVILEGE_STATUS_HAS_ACCESS:
+                    return true;
+                case CARRIER_PRIVILEGE_STATUS_NO_ACCESS:
+                    return false;
+                default:
+                    Rlog.e(TAG, "hasCarrierPrivileges: " + status);
+                    return false;
             }
         } catch (RemoteException ex) {
             Rlog.e(TAG, "hasCarrierPrivileges RemoteException", ex);
diff --git a/telephony/java/android/telephony/euicc/EuiccManager.java b/telephony/java/android/telephony/euicc/EuiccManager.java
index ca4a643..ae7346e 100644
--- a/telephony/java/android/telephony/euicc/EuiccManager.java
+++ b/telephony/java/android/telephony/euicc/EuiccManager.java
@@ -1737,13 +1737,8 @@
     private int getCardIdForDefaultEuicc() {
         int cardId = TelephonyManager.UNINITIALIZED_CARD_ID;
 
-        if (Flags.enforceTelephonyFeatureMappingForPublicApis()) {
-            PackageManager pm = mContext.getPackageManager();
-            if (pm != null && pm.hasSystemFeature(PackageManager.FEATURE_TELEPHONY_EUICC)) {
-                TelephonyManager tm = mContext.getSystemService(TelephonyManager.class);
-                cardId = tm.getCardIdForDefaultEuicc();
-            }
-        } else {
+        PackageManager pm = mContext.getPackageManager();
+        if (pm != null && pm.hasSystemFeature(PackageManager.FEATURE_TELEPHONY_EUICC)) {
             TelephonyManager tm = mContext.getSystemService(TelephonyManager.class);
             cardId = tm.getCardIdForDefaultEuicc();
         }
diff --git a/telephony/java/android/telephony/satellite/AntennaDirection.java b/telephony/java/android/telephony/satellite/AntennaDirection.java
index c690f98..22412e6 100644
--- a/telephony/java/android/telephony/satellite/AntennaDirection.java
+++ b/telephony/java/android/telephony/satellite/AntennaDirection.java
@@ -16,14 +16,11 @@
 
 package android.telephony.satellite;
 
-import android.annotation.FlaggedApi;
 import android.annotation.NonNull;
 import android.annotation.SystemApi;
 import android.os.Parcel;
 import android.os.Parcelable;
 
-import com.android.internal.telephony.flags.Flags;
-
 import java.util.Objects;
 
 /**
@@ -41,7 +38,6 @@
  * @hide
  */
 @SystemApi
-@FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
 public final class AntennaDirection implements Parcelable {
     /** Antenna x axis direction. */
     private float mX;
@@ -66,13 +62,11 @@
     }
 
     @Override
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public int describeContents() {
         return 0;
     }
 
     @Override
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void writeToParcel(@NonNull Parcel out, int flags) {
         out.writeFloat(mX);
         out.writeFloat(mY);
@@ -80,7 +74,6 @@
     }
 
     @NonNull
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final Creator<AntennaDirection> CREATOR =
             new Creator<>() {
                 @Override
@@ -125,17 +118,14 @@
         return Objects.hash(mX, mY, mZ);
     }
 
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public float getX() {
         return mX;
     }
 
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public float getY() {
         return mY;
     }
 
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public float getZ() {
         return mZ;
     }
diff --git a/telephony/java/android/telephony/satellite/AntennaPosition.java b/telephony/java/android/telephony/satellite/AntennaPosition.java
index d6440fc..a730e3f 100644
--- a/telephony/java/android/telephony/satellite/AntennaPosition.java
+++ b/telephony/java/android/telephony/satellite/AntennaPosition.java
@@ -16,14 +16,11 @@
 
 package android.telephony.satellite;
 
-import android.annotation.FlaggedApi;
 import android.annotation.NonNull;
 import android.annotation.SystemApi;
 import android.os.Parcel;
 import android.os.Parcelable;
 
-import com.android.internal.telephony.flags.Flags;
-
 import java.util.Objects;
 
 /**
@@ -32,7 +29,6 @@
  * @hide
  */
 @SystemApi
-@FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
 public final class AntennaPosition implements Parcelable {
     /** Antenna direction used for satellite communication. */
     @NonNull private AntennaDirection mAntennaDirection;
@@ -53,20 +49,17 @@
     }
 
     @Override
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public int describeContents() {
         return 0;
     }
 
     @Override
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void writeToParcel(@NonNull Parcel out, int flags) {
         out.writeParcelable(mAntennaDirection, flags);
         out.writeInt(mSuggestedHoldPosition);
     }
 
     @NonNull
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final Creator<AntennaPosition> CREATOR =
             new Creator<>() {
                 @Override
@@ -107,13 +100,11 @@
     }
 
     @NonNull
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public AntennaDirection getAntennaDirection() {
         return mAntennaDirection;
     }
 
     @SatelliteManager.DeviceHoldPosition
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public int getSuggestedHoldPosition() {
         return mSuggestedHoldPosition;
     }
diff --git a/telephony/java/android/telephony/satellite/EnableRequestAttributes.java b/telephony/java/android/telephony/satellite/EnableRequestAttributes.java
index bc9d230..6f9b4a7 100644
--- a/telephony/java/android/telephony/satellite/EnableRequestAttributes.java
+++ b/telephony/java/android/telephony/satellite/EnableRequestAttributes.java
@@ -16,12 +16,9 @@
 
 package android.telephony.satellite;
 
-import android.annotation.FlaggedApi;
 import android.annotation.NonNull;
 import android.annotation.SystemApi;
 
-import com.android.internal.telephony.flags.Flags;
-
 import java.util.concurrent.Executor;
 import java.util.function.Consumer;
 
@@ -31,7 +28,6 @@
  * @hide
  */
 @SystemApi
-@FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
 public class EnableRequestAttributes {
     /** {@code true} to enable satellite and {@code false} to disable satellite */
     private boolean mIsEnabled;
@@ -61,7 +57,6 @@
     /**
      * @return Whether satellite is to be enabled
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public boolean isEnabled() {
         return mIsEnabled;
     }
@@ -69,7 +64,6 @@
     /**
      * @return Whether demo mode is to be enabled
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public boolean isDemoMode() {
         return mIsDemoMode;
     }
@@ -77,7 +71,6 @@
     /**
      * @return Whether satellite is to be enabled for emergency mode
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public boolean isEmergencyMode() {
         return mIsEmergencyMode;
     }
@@ -85,13 +78,11 @@
     /**
      * The builder class of {@link EnableRequestAttributes}
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final class Builder {
         private boolean mIsEnabled;
         private boolean mIsDemoMode = false;
         private boolean mIsEmergencyMode = false;
 
-        @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
         public Builder(boolean isEnabled) {
             mIsEnabled = isEnabled;
         }
@@ -104,7 +95,6 @@
          *                   {@code false} by Telephony.
          * @return The builder object
          */
-        @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
         @NonNull
         public Builder setDemoMode(boolean isDemoMode) {
             if (mIsEnabled) {
@@ -122,7 +112,6 @@
          *                        Telephony.
          * @return The builder object
          */
-        @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
         @NonNull
         public Builder setEmergencyMode(boolean isEmergencyMode) {
             if (mIsEnabled) {
@@ -136,7 +125,6 @@
          *
          * @return The {@link EnableRequestAttributes} instance.
          */
-        @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
         @NonNull
         public EnableRequestAttributes build() {
             return new EnableRequestAttributes(this);
diff --git a/telephony/java/android/telephony/satellite/NtnSignalStrength.java b/telephony/java/android/telephony/satellite/NtnSignalStrength.java
index 2fec423..bb53d8e 100644
--- a/telephony/java/android/telephony/satellite/NtnSignalStrength.java
+++ b/telephony/java/android/telephony/satellite/NtnSignalStrength.java
@@ -16,7 +16,6 @@
 
 package android.telephony.satellite;
 
-import android.annotation.FlaggedApi;
 import android.annotation.IntDef;
 import android.annotation.Nullable;
 import android.annotation.SystemApi;
@@ -25,8 +24,6 @@
 
 import androidx.annotation.NonNull;
 
-import com.android.internal.telephony.flags.Flags;
-
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 
@@ -35,22 +32,16 @@
  * @hide
  */
 @SystemApi
-@FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
 public final class NtnSignalStrength implements Parcelable {
     /** Non-terrestrial network signal strength is not available. */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int NTN_SIGNAL_STRENGTH_NONE = 0;
     /** Non-terrestrial network signal strength is poor. */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int NTN_SIGNAL_STRENGTH_POOR = 1;
     /** Non-terrestrial network signal strength is moderate. */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int NTN_SIGNAL_STRENGTH_MODERATE = 2;
     /** Non-terrestrial network signal strength is good. */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int NTN_SIGNAL_STRENGTH_GOOD = 3;
     /** Non-terrestrial network signal strength is great. */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int NTN_SIGNAL_STRENGTH_GREAT = 4;
     @NtnSignalStrengthLevel private int mLevel;
 
@@ -69,7 +60,6 @@
      * Create a parcelable object to inform the current non-terrestrial signal strength
      * @hide
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public NtnSignalStrength(@NtnSignalStrengthLevel int level) {
         this.mLevel = level;
     }
@@ -77,7 +67,6 @@
     /**
      * This constructor is used to create a copy of an existing NtnSignalStrength object.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public NtnSignalStrength(@Nullable NtnSignalStrength source) {
         this.mLevel = (source == null) ? NTN_SIGNAL_STRENGTH_NONE : source.getLevel();
     }
@@ -89,7 +78,6 @@
     /**
      * Returns notified non-terrestrial network signal strength level.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     @NtnSignalStrengthLevel public int getLevel() {
         return mLevel;
     }
@@ -98,7 +86,6 @@
      * @return 0
      */
     @Override
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public int describeContents() {
         return 0;
     }
@@ -109,7 +96,6 @@
      *              May be 0 or {@link #PARCELABLE_WRITE_RETURN_VALUE}.
      */
     @Override
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void writeToParcel(@NonNull Parcel out, int flags) {
         out.writeInt(mLevel);
     }
@@ -118,7 +104,6 @@
         mLevel = in.readInt();
     }
 
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     @NonNull public static final Creator<NtnSignalStrength> CREATOR =
             new Creator<NtnSignalStrength>() {
                 @Override public NtnSignalStrength createFromParcel(Parcel in) {
diff --git a/telephony/java/android/telephony/satellite/NtnSignalStrengthCallback.java b/telephony/java/android/telephony/satellite/NtnSignalStrengthCallback.java
index 4b79590..b277b0e 100644
--- a/telephony/java/android/telephony/satellite/NtnSignalStrengthCallback.java
+++ b/telephony/java/android/telephony/satellite/NtnSignalStrengthCallback.java
@@ -16,24 +16,19 @@
 
 package android.telephony.satellite;
 
-import android.annotation.FlaggedApi;
 import android.annotation.NonNull;
 import android.annotation.SystemApi;
 
-import com.android.internal.telephony.flags.Flags;
-
 /**
  * A callback class for notifying satellite signal strength change.
  *
  * @hide
  */
 @SystemApi
-@FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
 public interface NtnSignalStrengthCallback {
     /**
      * Called when non-terrestrial network signal strength changes.
      * @param ntnSignalStrength The new non-terrestrial network signal strength.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     void onNtnSignalStrengthChanged(@NonNull NtnSignalStrength ntnSignalStrength);
 }
diff --git a/telephony/java/android/telephony/satellite/PointingInfo.java b/telephony/java/android/telephony/satellite/PointingInfo.java
index 9440b65..d0c51bc4 100644
--- a/telephony/java/android/telephony/satellite/PointingInfo.java
+++ b/telephony/java/android/telephony/satellite/PointingInfo.java
@@ -16,15 +16,12 @@
 
 package android.telephony.satellite;
 
-import android.annotation.FlaggedApi;
 import android.annotation.FloatRange;
 import android.annotation.NonNull;
 import android.annotation.SystemApi;
 import android.os.Parcel;
 import android.os.Parcelable;
 
-import com.android.internal.telephony.flags.Flags;
-
 import java.util.Objects;
 
 /**
@@ -34,7 +31,6 @@
  * @hide
  */
 @SystemApi
-@FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
 public final class PointingInfo implements Parcelable {
     /** Satellite azimuth in degrees */
     private float mSatelliteAzimuthDegrees;
@@ -55,19 +51,16 @@
     }
 
     @Override
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public int describeContents() {
         return 0;
     }
 
     @Override
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void writeToParcel(@NonNull Parcel out, int flags) {
         out.writeFloat(mSatelliteAzimuthDegrees);
         out.writeFloat(mSatelliteElevationDegrees);
     }
 
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final @android.annotation.NonNull Creator<PointingInfo> CREATOR =
             new Creator<PointingInfo>() {
                 @Override
@@ -113,7 +106,6 @@
      * Returns the azimuth of the satellite, in degrees.
      */
     @FloatRange(from = -180, to = 180)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public float getSatelliteAzimuthDegrees() {
         return mSatelliteAzimuthDegrees;
     }
@@ -122,7 +114,6 @@
      * Returns the elevation of the satellite, in degrees.
      */
     @FloatRange(from = -90, to = 90)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public float getSatelliteElevationDegrees() {
         return mSatelliteElevationDegrees;
     }
diff --git a/telephony/java/android/telephony/satellite/SatelliteCapabilities.java b/telephony/java/android/telephony/satellite/SatelliteCapabilities.java
index f34522a..a5b9deb 100644
--- a/telephony/java/android/telephony/satellite/SatelliteCapabilities.java
+++ b/telephony/java/android/telephony/satellite/SatelliteCapabilities.java
@@ -16,15 +16,12 @@
 
 package android.telephony.satellite;
 
-import android.annotation.FlaggedApi;
 import android.annotation.NonNull;
 import android.annotation.Nullable;
 import android.annotation.SystemApi;
 import android.os.Parcel;
 import android.os.Parcelable;
 
-import com.android.internal.telephony.flags.Flags;
-
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Map;
@@ -37,7 +34,6 @@
  * @hide
  */
 @SystemApi
-@FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
 public final class SatelliteCapabilities implements Parcelable {
     /**
      * List of technologies supported by the satellite modem.
@@ -80,13 +76,11 @@
     }
 
     @Override
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public int describeContents() {
         return 0;
     }
 
     @Override
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void writeToParcel(@NonNull Parcel out, int flags) {
         if (mSupportedRadioTechnologies != null && !mSupportedRadioTechnologies.isEmpty()) {
             out.writeInt(mSupportedRadioTechnologies.size());
@@ -112,7 +106,6 @@
         }
     }
 
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     @NonNull public static final Creator<SatelliteCapabilities> CREATOR = new Creator<>() {
         @Override
         public SatelliteCapabilities createFromParcel(Parcel in) {
@@ -172,7 +165,6 @@
     /**
      * @return The list of technologies supported by the satellite modem.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     @NonNull @SatelliteManager.NTRadioTechnology public Set<Integer>
             getSupportedRadioTechnologies() {
         return mSupportedRadioTechnologies;
@@ -184,7 +176,6 @@
      * @return {@code true} if UE needs to point to a satellite to send and receive data and
      *         {@code false} otherwise.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public boolean isPointingRequired() {
         return mIsPointingRequired;
     }
@@ -194,7 +185,6 @@
      *
      * @return The maximum number of bytes per datagram that can be sent over satellite.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public int getMaxBytesPerOutgoingDatagram() {
         return mMaxBytesPerOutgoingDatagram;
     }
@@ -214,7 +204,6 @@
      * @return Map key: {@link SatelliteManager.DeviceHoldPosition} value: AntennaPosition
      */
     @NonNull
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public Map<Integer, AntennaPosition> getAntennaPositionMap() {
         return mAntennaPositionMap;
     }
diff --git a/telephony/java/android/telephony/satellite/SatelliteCapabilitiesCallback.java b/telephony/java/android/telephony/satellite/SatelliteCapabilitiesCallback.java
index b68dd5a..b236cf6 100644
--- a/telephony/java/android/telephony/satellite/SatelliteCapabilitiesCallback.java
+++ b/telephony/java/android/telephony/satellite/SatelliteCapabilitiesCallback.java
@@ -16,24 +16,19 @@
 
 package android.telephony.satellite;
 
-import android.annotation.FlaggedApi;
 import android.annotation.NonNull;
 import android.annotation.SystemApi;
 
-import com.android.internal.telephony.flags.Flags;
-
 /**
  * A callback class for satellite capabilities change events.
  *
  * @hide
  */
 @SystemApi
-@FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
 public interface SatelliteCapabilitiesCallback {
     /**
      * Called when satellite capability has changed.
      * @param capabilities The new satellite capabilities.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     void onSatelliteCapabilitiesChanged(@NonNull SatelliteCapabilities capabilities);
 }
diff --git a/telephony/java/android/telephony/satellite/SatelliteDatagram.java b/telephony/java/android/telephony/satellite/SatelliteDatagram.java
index 4d67f80..9037f0c 100644
--- a/telephony/java/android/telephony/satellite/SatelliteDatagram.java
+++ b/telephony/java/android/telephony/satellite/SatelliteDatagram.java
@@ -16,21 +16,17 @@
 
 package android.telephony.satellite;
 
-import android.annotation.FlaggedApi;
 import android.annotation.NonNull;
 import android.annotation.SystemApi;
 import android.os.Parcel;
 import android.os.Parcelable;
 
-import com.android.internal.telephony.flags.Flags;
-
 /**
  * SatelliteDatagram is used to store data that is to be sent or received over satellite.
  * Data is stored in byte array format.
  * @hide
  */
 @SystemApi
-@FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
 public final class SatelliteDatagram implements Parcelable {
     /**
      * Datagram to be sent or received over satellite.
@@ -49,18 +45,15 @@
     }
 
     @Override
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public int describeContents() {
         return 0;
     }
 
     @Override
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void writeToParcel(@NonNull Parcel out, int flags) {
         out.writeByteArray(mData);
     }
 
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     @NonNull public static final Creator<SatelliteDatagram> CREATOR =
             new Creator<>() {
                 @Override
@@ -80,7 +73,6 @@
      * satellite provider. Client application should be aware of how to encode the datagram based
      * upon the satellite provider.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     @NonNull public byte[] getSatelliteDatagram() {
         return mData;
     }
diff --git a/telephony/java/android/telephony/satellite/SatelliteDatagramCallback.java b/telephony/java/android/telephony/satellite/SatelliteDatagramCallback.java
index 9aaa986..8b6e3ca 100644
--- a/telephony/java/android/telephony/satellite/SatelliteDatagramCallback.java
+++ b/telephony/java/android/telephony/satellite/SatelliteDatagramCallback.java
@@ -16,12 +16,9 @@
 
 package android.telephony.satellite;
 
-import android.annotation.FlaggedApi;
 import android.annotation.NonNull;
 import android.annotation.SystemApi;
 
-import com.android.internal.telephony.flags.Flags;
-
 import java.util.concurrent.Executor;
 import java.util.function.Consumer;
 
@@ -35,7 +32,6 @@
  * @hide
  */
 @SystemApi
-@FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
 public interface SatelliteDatagramCallback {
     /**
      * Called when there is an incoming datagram to be received.
@@ -47,7 +43,6 @@
      *                 that they received the datagram. If the callback is not received within
      *                 five minutes, Telephony will resend the datagram.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     void onSatelliteDatagramReceived(long datagramId, @NonNull SatelliteDatagram datagram,
             int pendingCount, @NonNull Consumer<Void> callback);
 }
diff --git a/telephony/java/android/telephony/satellite/SatelliteManager.java b/telephony/java/android/telephony/satellite/SatelliteManager.java
index 1309654..270d599 100644
--- a/telephony/java/android/telephony/satellite/SatelliteManager.java
+++ b/telephony/java/android/telephony/satellite/SatelliteManager.java
@@ -148,7 +148,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static class SatelliteException extends Exception {
         @SatelliteResult private final int mErrorCode;
 
@@ -157,7 +156,6 @@
          *
          * @param errorCode The {@link SatelliteResult}.
          */
-        @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
         public SatelliteException(@SatelliteResult int errorCode) {
             mErrorCode = errorCode;
         }
@@ -167,7 +165,6 @@
          *
          * @return The {@link SatelliteResult}.
          */
-        @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
         @SatelliteResult public int getErrorCode() {
             return mErrorCode;
         }
@@ -311,7 +308,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_SUCCESS = 0;
 
     /**
@@ -319,7 +315,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_ERROR = 1;
 
     /**
@@ -327,7 +322,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_SERVER_ERROR = 2;
 
     /**
@@ -336,7 +330,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_SERVICE_ERROR = 3;
 
     /**
@@ -345,7 +338,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_MODEM_ERROR = 4;
 
     /**
@@ -354,7 +346,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_NETWORK_ERROR = 5;
 
     /**
@@ -362,7 +353,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_INVALID_TELEPHONY_STATE = 6;
 
     /**
@@ -370,7 +360,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_INVALID_MODEM_STATE = 7;
 
     /**
@@ -379,7 +368,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_INVALID_ARGUMENTS = 8;
 
     /**
@@ -388,7 +376,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_REQUEST_FAILED = 9;
 
     /**
@@ -396,7 +383,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_RADIO_NOT_AVAILABLE = 10;
 
     /**
@@ -404,7 +390,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_REQUEST_NOT_SUPPORTED = 11;
 
     /**
@@ -412,7 +397,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_NO_RESOURCES = 12;
 
     /**
@@ -420,7 +404,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_SERVICE_NOT_PROVISIONED = 13;
 
     /**
@@ -428,7 +411,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_SERVICE_PROVISION_IN_PROGRESS = 14;
 
     /**
@@ -438,7 +420,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_REQUEST_ABORTED = 15;
 
     /**
@@ -446,7 +427,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_ACCESS_BARRED = 16;
 
     /**
@@ -455,7 +435,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_NETWORK_TIMEOUT = 17;
 
     /**
@@ -463,7 +442,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_NOT_REACHABLE = 18;
 
     /**
@@ -471,7 +449,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_NOT_AUTHORIZED = 19;
 
     /**
@@ -479,7 +456,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_NOT_SUPPORTED = 20;
 
     /**
@@ -487,7 +463,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_REQUEST_IN_PROGRESS = 21;
 
     /**
@@ -495,7 +470,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_MODEM_BUSY = 22;
 
     /**
@@ -503,7 +477,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_ILLEGAL_STATE = 23;
 
     /**
@@ -512,7 +485,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_RESULT_MODEM_TIMEOUT = 24;
 
     /**
@@ -608,7 +580,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int NT_RADIO_TECHNOLOGY_UNKNOWN = 0;
 
     /**
@@ -616,7 +587,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int NT_RADIO_TECHNOLOGY_NB_IOT_NTN = 1;
 
     /**
@@ -624,7 +594,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int NT_RADIO_TECHNOLOGY_NR_NTN = 2;
 
     /**
@@ -632,7 +601,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int NT_RADIO_TECHNOLOGY_EMTC_NTN = 3;
 
     /**
@@ -640,7 +608,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int NT_RADIO_TECHNOLOGY_PROPRIETARY = 4;
 
     /** @hide */
@@ -659,7 +626,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int DEVICE_HOLD_POSITION_UNKNOWN = 0;
 
     /**
@@ -667,7 +633,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int DEVICE_HOLD_POSITION_PORTRAIT = 1;
 
     /**
@@ -675,7 +640,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int DEVICE_HOLD_POSITION_LANDSCAPE_LEFT = 2;
 
     /**
@@ -683,7 +647,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int DEVICE_HOLD_POSITION_LANDSCAPE_RIGHT = 3;
 
     /** @hide */
@@ -701,7 +664,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int DISPLAY_MODE_UNKNOWN = 0;
 
     /**
@@ -709,7 +671,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int DISPLAY_MODE_FIXED = 1;
 
     /**
@@ -718,7 +679,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int DISPLAY_MODE_OPENED = 2;
 
     /**
@@ -727,7 +687,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int DISPLAY_MODE_CLOSED = 3;
 
     /** @hide */
@@ -746,7 +705,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE_SOS = 1;
 
     /**
@@ -919,7 +877,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void requestEnabled(@NonNull EnableRequestAttributes attributes,
             @NonNull @CallbackExecutor Executor executor,
             @SatelliteResult @NonNull Consumer<Integer> resultListener) {
@@ -968,7 +925,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void requestIsEnabled(@NonNull @CallbackExecutor Executor executor,
             @NonNull OutcomeReceiver<Boolean, SatelliteException> callback) {
         Objects.requireNonNull(executor);
@@ -1028,7 +984,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void requestIsDemoModeEnabled(@NonNull @CallbackExecutor Executor executor,
             @NonNull OutcomeReceiver<Boolean, SatelliteException> callback) {
         Objects.requireNonNull(executor);
@@ -1088,7 +1043,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void requestIsEmergencyModeEnabled(@NonNull @CallbackExecutor Executor executor,
             @NonNull OutcomeReceiver<Boolean, SatelliteException> callback) {
         Objects.requireNonNull(executor);
@@ -1148,7 +1102,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void requestIsSupported(@NonNull @CallbackExecutor Executor executor,
             @NonNull OutcomeReceiver<Boolean, SatelliteException> callback) {
         Objects.requireNonNull(executor);
@@ -1207,7 +1160,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void requestCapabilities(@NonNull @CallbackExecutor Executor executor,
             @NonNull OutcomeReceiver<SatelliteCapabilities, SatelliteException> callback) {
         Objects.requireNonNull(executor);
@@ -1257,7 +1209,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_IDLE = 0;
 
     /**
@@ -1265,7 +1216,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_SENDING = 1;
 
     /**
@@ -1275,7 +1225,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_SEND_SUCCESS = 2;
 
     /**
@@ -1286,7 +1235,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_SEND_FAILED = 3;
 
     /**
@@ -1294,7 +1242,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVING = 4;
 
     /**
@@ -1304,7 +1251,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVE_SUCCESS = 5;
 
     /**
@@ -1315,7 +1261,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVE_NONE = 6;
 
     /**
@@ -1325,7 +1270,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVE_FAILED = 7;
 
     /**
@@ -1339,7 +1283,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_WAITING_TO_CONNECT = 8;
 
     /**
@@ -1349,7 +1292,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_UNKNOWN = -1;
 
     /** @hide */
@@ -1374,7 +1316,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_MODEM_STATE_IDLE = 0;
 
     /**
@@ -1382,7 +1323,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_MODEM_STATE_LISTENING = 1;
 
     /**
@@ -1390,7 +1330,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_MODEM_STATE_DATAGRAM_TRANSFERRING = 2;
 
     /**
@@ -1398,7 +1337,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_MODEM_STATE_DATAGRAM_RETRYING = 3;
 
     /**
@@ -1406,7 +1344,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_MODEM_STATE_OFF = 4;
 
     /**
@@ -1414,7 +1351,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_MODEM_STATE_UNAVAILABLE = 5;
 
     /**
@@ -1422,7 +1358,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_MODEM_STATE_NOT_CONNECTED = 6;
 
     /**
@@ -1430,7 +1365,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_MODEM_STATE_CONNECTED = 7;
 
     /**
@@ -1455,7 +1389,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int SATELLITE_MODEM_STATE_UNKNOWN = -1;
 
     /** @hide */
@@ -1481,7 +1414,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int DATAGRAM_TYPE_UNKNOWN = 0;
 
     /**
@@ -1489,7 +1421,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int DATAGRAM_TYPE_SOS_MESSAGE = 1;
 
     /**
@@ -1498,7 +1429,6 @@
      * @hide
      */
     @SystemApi
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public static final int DATAGRAM_TYPE_LOCATION_SHARING = 2;
 
     /**
@@ -1653,7 +1583,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     @SuppressWarnings("SamShouldBeLast")
     public void startTransmissionUpdates(@NonNull @CallbackExecutor Executor executor,
             @SatelliteResult @NonNull Consumer<Integer> resultListener,
@@ -1739,7 +1668,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void stopTransmissionUpdates(@NonNull SatelliteTransmissionUpdateCallback callback,
             @SuppressWarnings("ListenerLast") @NonNull @CallbackExecutor Executor executor,
             @SuppressWarnings("ListenerLast") @SatelliteResult @NonNull
@@ -1800,7 +1728,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void provisionService(@NonNull String token, @NonNull byte[] provisionData,
             @Nullable CancellationSignal cancellationSignal,
             @NonNull @CallbackExecutor Executor executor,
@@ -1858,7 +1785,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void deprovisionService(@NonNull String token,
             @NonNull @CallbackExecutor Executor executor,
             @SatelliteResult @NonNull Consumer<Integer> resultListener) {
@@ -1904,7 +1830,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     @SatelliteResult public int registerForProvisionStateChanged(
             @NonNull @CallbackExecutor Executor executor,
             @NonNull SatelliteProvisionStateCallback callback) {
@@ -1959,7 +1884,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void unregisterForProvisionStateChanged(
             @NonNull SatelliteProvisionStateCallback callback) {
         Objects.requireNonNull(callback);
@@ -2000,7 +1924,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void requestIsProvisioned(@NonNull @CallbackExecutor Executor executor,
             @NonNull OutcomeReceiver<Boolean, SatelliteException> callback) {
         Objects.requireNonNull(executor);
@@ -2058,7 +1981,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     @SatelliteResult public int registerForModemStateChanged(
             @NonNull @CallbackExecutor Executor executor,
             @NonNull SatelliteModemStateCallback callback) {
@@ -2121,7 +2043,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void unregisterForModemStateChanged(
             @NonNull SatelliteModemStateCallback callback) {
         Objects.requireNonNull(callback);
@@ -2164,7 +2085,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     @SatelliteResult public int registerForIncomingDatagram(
             @NonNull @CallbackExecutor Executor executor,
             @NonNull SatelliteDatagramCallback callback) {
@@ -2223,7 +2143,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void unregisterForIncomingDatagram(@NonNull SatelliteDatagramCallback callback) {
         Objects.requireNonNull(callback);
         ISatelliteDatagramCallback internalCallback =
@@ -2264,7 +2183,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void pollPendingDatagrams(@NonNull @CallbackExecutor Executor executor,
             @SatelliteResult @NonNull Consumer<Integer> resultListener) {
         Objects.requireNonNull(executor);
@@ -2322,7 +2240,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void sendDatagram(@DatagramType int datagramType,
             @NonNull SatelliteDatagram datagram, boolean needFullScreenPointingUI,
             @NonNull @CallbackExecutor Executor executor,
@@ -2373,7 +2290,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void requestIsCommunicationAllowedForCurrentLocation(
             @NonNull @CallbackExecutor Executor executor,
             @NonNull OutcomeReceiver<Boolean, SatelliteException> callback) {
@@ -2497,7 +2413,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void requestTimeForNextSatelliteVisibility(@NonNull @CallbackExecutor Executor executor,
             @NonNull OutcomeReceiver<Duration, SatelliteException> callback) {
         Objects.requireNonNull(executor);
@@ -2711,7 +2626,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void setDeviceAlignedWithSatellite(boolean isAligned) {
         try {
             ITelephony telephony = getITelephony();
@@ -3072,7 +2986,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void requestNtnSignalStrength(@NonNull @CallbackExecutor Executor executor,
             @NonNull OutcomeReceiver<NtnSignalStrength, SatelliteException> callback) {
         Objects.requireNonNull(executor);
@@ -3138,7 +3051,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void registerForNtnSignalStrengthChanged(@NonNull @CallbackExecutor Executor executor,
             @NonNull NtnSignalStrengthCallback callback) {
         Objects.requireNonNull(executor);
@@ -3190,7 +3102,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void unregisterForNtnSignalStrengthChanged(@NonNull NtnSignalStrengthCallback callback) {
         Objects.requireNonNull(callback);
         INtnSignalStrengthCallback internalCallback =
@@ -3227,7 +3138,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     @SatelliteResult public int registerForCapabilitiesChanged(
             @NonNull @CallbackExecutor Executor executor,
             @NonNull SatelliteCapabilitiesCallback callback) {
@@ -3273,7 +3183,6 @@
      */
     @SystemApi
     @RequiresPermission(Manifest.permission.SATELLITE_COMMUNICATION)
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     public void unregisterForCapabilitiesChanged(
             @NonNull SatelliteCapabilitiesCallback callback) {
         Objects.requireNonNull(callback);
diff --git a/telephony/java/android/telephony/satellite/SatelliteModemStateCallback.java b/telephony/java/android/telephony/satellite/SatelliteModemStateCallback.java
index 040fbbb..ef26b17 100644
--- a/telephony/java/android/telephony/satellite/SatelliteModemStateCallback.java
+++ b/telephony/java/android/telephony/satellite/SatelliteModemStateCallback.java
@@ -27,13 +27,11 @@
  * @hide
  */
 @SystemApi
-@FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
 public interface SatelliteModemStateCallback {
     /**
      * Called when satellite modem state changes.
      * @param state The new satellite modem state.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     void onSatelliteModemStateChanged(@SatelliteManager.SatelliteModemState int state);
 
     /**
diff --git a/telephony/java/android/telephony/satellite/SatelliteProvisionStateCallback.java b/telephony/java/android/telephony/satellite/SatelliteProvisionStateCallback.java
index 6b95eb3..fe5d2a1 100644
--- a/telephony/java/android/telephony/satellite/SatelliteProvisionStateCallback.java
+++ b/telephony/java/android/telephony/satellite/SatelliteProvisionStateCallback.java
@@ -30,7 +30,6 @@
  * @hide
  */
 @SystemApi
-@FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
 public interface SatelliteProvisionStateCallback {
     /**
      * Called when satellite provision state changes.
@@ -40,7 +39,6 @@
      *                    It is generally expected that the provisioning app retries if
      *                    provisioning fails.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     void onSatelliteProvisionStateChanged(boolean provisioned);
 
     /**
diff --git a/telephony/java/android/telephony/satellite/SatelliteTransmissionUpdateCallback.java b/telephony/java/android/telephony/satellite/SatelliteTransmissionUpdateCallback.java
index e18fad3..9c6eb8f 100644
--- a/telephony/java/android/telephony/satellite/SatelliteTransmissionUpdateCallback.java
+++ b/telephony/java/android/telephony/satellite/SatelliteTransmissionUpdateCallback.java
@@ -29,14 +29,12 @@
  * @hide
  */
 @SystemApi
-@FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
 public interface SatelliteTransmissionUpdateCallback {
     /**
      * Called when the satellite position changed.
      *
      * @param pointingInfo The pointing info containing the satellite location.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     void onSatellitePositionChanged(@NonNull PointingInfo pointingInfo);
 
     /**
@@ -46,7 +44,6 @@
      * @param sendPendingCount The number of datagrams that are currently being sent.
      * @param errorCode If datagram transfer failed, the reason for failure.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     void onSendDatagramStateChanged(
             @SatelliteManager.SatelliteDatagramTransferState int state, int sendPendingCount,
             @SatelliteManager.SatelliteResult int errorCode);
@@ -70,7 +67,6 @@
      * @param receivePendingCount The number of datagrams that are currently pending to be received.
      * @param errorCode If datagram transfer failed, the reason for failure.
      */
-    @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
     void onReceiveDatagramStateChanged(
             @SatelliteManager.SatelliteDatagramTransferState int state, int receivePendingCount,
             @SatelliteManager.SatelliteResult int errorCode);
diff --git a/tests/Codegen/OWNERS b/tests/Codegen/OWNERS
index da723b3..e69de29 100644
--- a/tests/Codegen/OWNERS
+++ b/tests/Codegen/OWNERS
@@ -1 +0,0 @@
-eugenesusla@google.com
\ No newline at end of file
diff --git a/tests/EnforcePermission/OWNERS b/tests/EnforcePermission/OWNERS
index 39550a3..160849e 100644
--- a/tests/EnforcePermission/OWNERS
+++ b/tests/EnforcePermission/OWNERS
@@ -1,3 +1,2 @@
 # Bug component: 315013
 tweek@google.com
-brufino@google.com
diff --git a/tests/Input/Android.bp b/tests/Input/Android.bp
index 168141b..1f0bd61 100644
--- a/tests/Input/Android.bp
+++ b/tests/Input/Android.bp
@@ -19,9 +19,6 @@
         "src/**/*.kt",
     ],
     asset_dirs: ["assets"],
-    kotlincflags: [
-        "-Werror",
-    ],
     platform_apis: true,
     certificate: "platform",
     static_libs: [
diff --git a/tests/Input/src/com/android/test/input/AnrTest.kt b/tests/Input/src/com/android/test/input/AnrTest.kt
index cd6ab30..73192ea 100644
--- a/tests/Input/src/com/android/test/input/AnrTest.kt
+++ b/tests/Input/src/com/android/test/input/AnrTest.kt
@@ -27,8 +27,6 @@
 import android.os.Build
 import android.os.IInputConstants.UNMULTIPLIED_DEFAULT_DISPATCHING_TIMEOUT_MILLIS
 import android.os.SystemClock
-import android.provider.Settings
-import android.provider.Settings.Global.HIDE_ERROR_DIALOGS
 import android.server.wm.CtsWindowInfoUtils.waitForStableWindowGeometry
 import android.testing.PollingCheck
 
@@ -38,6 +36,7 @@
 import androidx.test.uiautomator.Until
 
 import com.android.cts.input.DebugInputRule
+import com.android.cts.input.ShowErrorDialogsRule
 import com.android.cts.input.UinputTouchScreen
 
 import java.time.Duration
@@ -79,18 +78,16 @@
     @get:Rule
     val debugInputRule = DebugInputRule()
 
+    @get:Rule
+    val showErrorDialogs = ShowErrorDialogsRule()
+
     @Before
     fun setUp() {
-        val contentResolver = instrumentation.targetContext.contentResolver
-        hideErrorDialogs = Settings.Global.getInt(contentResolver, HIDE_ERROR_DIALOGS, 0)
-        Settings.Global.putInt(contentResolver, HIDE_ERROR_DIALOGS, 0)
         PACKAGE_NAME = UnresponsiveGestureMonitorActivity::class.java.getPackage()!!.getName()
     }
 
     @After
     fun tearDown() {
-        val contentResolver = instrumentation.targetContext.contentResolver
-        Settings.Global.putInt(contentResolver, HIDE_ERROR_DIALOGS, hideErrorDialogs)
     }
 
     @Test
diff --git a/tools/aapt2/Android.bp b/tools/aapt2/Android.bp
index f43cf52..43d5b71 100644
--- a/tools/aapt2/Android.bp
+++ b/tools/aapt2/Android.bp
@@ -113,6 +113,7 @@
         "io/ZipArchive.cpp",
         "link/AutoVersioner.cpp",
         "link/FeatureFlagsFilter.cpp",
+        "link/FlaggedXmlVersioner.cpp",
         "link/FlagDisabledResourceRemover.cpp",
         "link/ManifestFixer.cpp",
         "link/NoDefaultResourceRemover.cpp",
diff --git a/tools/aapt2/ResourceParser.cpp b/tools/aapt2/ResourceParser.cpp
index fb576df..9e2a4c1 100644
--- a/tools/aapt2/ResourceParser.cpp
+++ b/tools/aapt2/ResourceParser.cpp
@@ -547,7 +547,8 @@
   });
 
   std::string_view resource_type = parser->element_name();
-  if (auto flag = ParseFlag(xml::FindAttribute(parser, xml::kSchemaAndroid, "featureFlag"))) {
+  if (auto flag =
+          ParseFlag(xml::FindAttribute(parser, xml::kSchemaAndroid, xml::kAttrFeatureFlag))) {
     if (options_.flag) {
       diag_->Error(android::DiagMessage(source_.WithLine(parser->line_number()))
                    << "Resource flag are not allowed both in the path and in the file");
@@ -1529,7 +1530,7 @@
   ResolvePackage(parser, &maybe_key.value());
   maybe_key.value().SetSource(source);
 
-  auto flag = ParseFlag(xml::FindAttribute(parser, xml::kSchemaAndroid, "featureFlag"));
+  auto flag = ParseFlag(xml::FindAttribute(parser, xml::kSchemaAndroid, xml::kAttrFeatureFlag));
 
   std::unique_ptr<Item> value = ParseXml(parser, 0, kAllowRawString);
   if (!value) {
@@ -1674,7 +1675,7 @@
     const std::string& element_namespace = parser->element_namespace();
     const std::string& element_name = parser->element_name();
     if (element_namespace.empty() && element_name == "item") {
-      auto flag = ParseFlag(xml::FindAttribute(parser, xml::kSchemaAndroid, "featureFlag"));
+      auto flag = ParseFlag(xml::FindAttribute(parser, xml::kSchemaAndroid, xml::kAttrFeatureFlag));
       std::unique_ptr<Item> item = ParseXml(parser, typeMask, kNoRawString);
       if (!item) {
         diag_->Error(android::DiagMessage(item_source) << "could not parse array item");
diff --git a/tools/aapt2/cmd/Link.cpp b/tools/aapt2/cmd/Link.cpp
index 0a5cb1f..2a79216 100644
--- a/tools/aapt2/cmd/Link.cpp
+++ b/tools/aapt2/cmd/Link.cpp
@@ -58,6 +58,7 @@
 #include "java/ProguardRules.h"
 #include "link/FeatureFlagsFilter.h"
 #include "link/FlagDisabledResourceRemover.h"
+#include "link/FlaggedXmlVersioner.h"
 #include "link/Linkers.h"
 #include "link/ManifestFixer.h"
 #include "link/NoDefaultResourceRemover.h"
@@ -503,10 +504,19 @@
   const ConfigDescription& config = file_op->config;
   ResourceEntry* entry = file_op->entry;
 
+  FlaggedXmlVersioner flagged_xml_versioner;
+  auto flag_split_resources = flagged_xml_versioner.Process(context_, doc);
+
+  std::vector<std::unique_ptr<xml::XmlResource>> final_resources;
   XmlCompatVersioner xml_compat_versioner(&rules_);
   const util::Range<ApiVersion> api_range{config.sdkVersion,
                                           FindNextApiVersionForConfig(entry, config)};
-  return xml_compat_versioner.Process(context_, doc, api_range);
+  for (auto& split_res : flag_split_resources) {
+    auto inner_resources = xml_compat_versioner.Process(context_, split_res.get(), api_range);
+    final_resources.insert(final_resources.end(), std::make_move_iterator(inner_resources.begin()),
+                           std::make_move_iterator(inner_resources.end()));
+  }
+  return final_resources;
 }
 
 ResourceFile::Type XmlFileTypeForOutputFormat(OutputFormat format) {
diff --git a/tools/aapt2/link/FeatureFlagsFilter.cpp b/tools/aapt2/link/FeatureFlagsFilter.cpp
index 23f7838..74066a3 100644
--- a/tools/aapt2/link/FeatureFlagsFilter.cpp
+++ b/tools/aapt2/link/FeatureFlagsFilter.cpp
@@ -51,7 +51,7 @@
  private:
   bool ShouldRemove(std::unique_ptr<xml::Node>& node) {
     if (auto* el = NodeCast<Element>(node.get())) {
-      auto* attr = el->FindAttribute(xml::kSchemaAndroid, "featureFlag");
+      auto* attr = el->FindAttribute(xml::kSchemaAndroid, xml::kAttrFeatureFlag);
       if (attr == nullptr) {
         return false;
       }
@@ -76,7 +76,7 @@
             // Remove if flag==true && attr=="!flag" (negated) OR flag==false && attr=="flag"
             bool remove = *it->second.enabled == negated;
             if (!remove) {
-              el->RemoveAttribute(xml::kSchemaAndroid, "featureFlag");
+              el->RemoveAttribute(xml::kSchemaAndroid, xml::kAttrFeatureFlag);
             }
             return remove;
           }
diff --git a/tools/aapt2/link/FlaggedResources_test.cpp b/tools/aapt2/link/FlaggedResources_test.cpp
index 7bea96c..dbef776 100644
--- a/tools/aapt2/link/FlaggedResources_test.cpp
+++ b/tools/aapt2/link/FlaggedResources_test.cpp
@@ -163,7 +163,7 @@
   auto loaded_apk = LoadedApk::LoadApkFromPath(apk_path, &noop_diag);
 
   std::string output;
-  DumpXmlTreeToString(loaded_apk.get(), "res/layout-v22/layout1.xml", &output);
+  DumpXmlTreeToString(loaded_apk.get(), "res/layout-v36/layout1.xml", &output);
   ASSERT_FALSE(output.contains("test.package.trueFlag"));
   ASSERT_TRUE(output.contains("FIND_ME"));
   ASSERT_TRUE(output.contains("test.package.readWriteFlag"));
diff --git a/tools/aapt2/link/FlaggedXmlVersioner.cpp b/tools/aapt2/link/FlaggedXmlVersioner.cpp
new file mode 100644
index 0000000..75c6f17
--- /dev/null
+++ b/tools/aapt2/link/FlaggedXmlVersioner.cpp
@@ -0,0 +1,92 @@
+/*
+ * Copyright (C) 2025 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.
+ */
+
+#include "link/FlaggedXmlVersioner.h"
+
+#include "SdkConstants.h"
+#include "androidfw/Util.h"
+
+using ::aapt::xml::Element;
+using ::aapt::xml::NodeCast;
+
+namespace aapt {
+
+// An xml visitor that goes through the a doc and removes any elements that are behind non-negated
+// flags. It also removes the featureFlag attribute from elements behind negated flags.
+class AllDisabledFlagsVisitor : public xml::Visitor {
+ public:
+  void Visit(xml::Element* node) override {
+    std::erase_if(node->children, [this](const std::unique_ptr<xml::Node>& node) {
+      return FixupOrShouldRemove(node);
+    });
+    VisitChildren(node);
+  }
+
+  bool HadFlags() const {
+    return had_flags_;
+  }
+
+ private:
+  bool FixupOrShouldRemove(const std::unique_ptr<xml::Node>& node) {
+    if (auto* el = NodeCast<Element>(node.get())) {
+      auto* attr = el->FindAttribute(xml::kSchemaAndroid, xml::kAttrFeatureFlag);
+      if (attr == nullptr) {
+        return false;
+      }
+
+      had_flags_ = true;
+      // This class assumes all flags are disabled so we want to remove any elements behind flags
+      // unless the flag specification is negated. In the negated case we remove the featureFlag
+      // attribute because we have already determined whether we are keeping the element or not.
+      std::string_view flag_name = util::TrimWhitespace(attr->value);
+      if (flag_name.starts_with('!')) {
+        el->RemoveAttribute(xml::kSchemaAndroid, xml::kAttrFeatureFlag);
+        return false;
+      } else {
+        return true;
+      }
+    }
+
+    return false;
+  }
+
+  bool had_flags_ = false;
+};
+
+std::vector<std::unique_ptr<xml::XmlResource>> FlaggedXmlVersioner::Process(IAaptContext* context,
+                                                                            xml::XmlResource* doc) {
+  std::vector<std::unique_ptr<xml::XmlResource>> docs;
+  if ((static_cast<ApiVersion>(doc->file.config.sdkVersion) >= SDK_BAKLAVA) ||
+      (static_cast<ApiVersion>(context->GetMinSdkVersion()) >= SDK_BAKLAVA)) {
+    // Support for read/write flags was added in baklava so if the doc will only get used on
+    // baklava or later we can just return the original doc.
+    docs.push_back(doc->Clone());
+  } else {
+    auto preBaklavaVersion = doc->Clone();
+    AllDisabledFlagsVisitor visitor;
+    preBaklavaVersion->root->Accept(&visitor);
+    docs.push_back(std::move(preBaklavaVersion));
+
+    if (visitor.HadFlags()) {
+      auto baklavaVersion = doc->Clone();
+      baklavaVersion->file.config.sdkVersion = SDK_BAKLAVA;
+      docs.push_back(std::move(baklavaVersion));
+    }
+  }
+  return docs;
+}
+
+}  // namespace aapt
\ No newline at end of file
diff --git a/tools/aapt2/link/FlaggedXmlVersioner.h b/tools/aapt2/link/FlaggedXmlVersioner.h
new file mode 100644
index 0000000..44ed266
--- /dev/null
+++ b/tools/aapt2/link/FlaggedXmlVersioner.h
@@ -0,0 +1,42 @@
+/*
+ * Copyright 2025 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.
+ */
+
+#pragma once
+
+#include <memory>
+#include <vector>
+
+#include "process/IResourceTableConsumer.h"
+#include "xml/XmlDom.h"
+
+namespace aapt {
+
+// FlaggedXmlVersioner takes an XmlResource and checks if any elements have read write android
+// flags on them. If the doc doesn't refer to any such flags the returned vector only contains
+// the original doc.
+//
+// Read/write flags within xml resources files is only supported in android baklava and later. If
+// the config resource specifies a version that is baklava or later it returns a vector containing
+// the original XmlResource. Otherwise FlaggedXmlVersioner creates a version of the doc where all
+// flags are assumed disabled and the config version is the same as the original doc, if specified.
+// It also creates an XmlResource where the contents are the same as the original doc and the config
+// version is baklava. The returned vector is composed of these two new docs.
+class FlaggedXmlVersioner {
+ public:
+  std::vector<std::unique_ptr<xml::XmlResource>> Process(IAaptContext* context,
+                                                         xml::XmlResource* doc);
+};
+}  // namespace aapt
\ No newline at end of file
diff --git a/tools/aapt2/link/FlaggedXmlVersioner_test.cpp b/tools/aapt2/link/FlaggedXmlVersioner_test.cpp
new file mode 100644
index 0000000..0c1314f
--- /dev/null
+++ b/tools/aapt2/link/FlaggedXmlVersioner_test.cpp
@@ -0,0 +1,220 @@
+/*
+ * Copyright (C) 2025 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.
+ */
+
+#include "link/FlaggedXmlVersioner.h"
+
+#include "Debug.h"
+#include "SdkConstants.h"
+#include "io/StringStream.h"
+#include "test/Test.h"
+
+using ::aapt::test::ValueEq;
+using ::testing::Eq;
+using ::testing::IsNull;
+using ::testing::NotNull;
+using ::testing::Pointee;
+using ::testing::SizeIs;
+
+namespace aapt {
+
+class FlaggedXmlVersionerTest : public ::testing::Test {
+ public:
+  void SetUp() override {
+    context_ = test::ContextBuilder()
+                   .SetCompilationPackage("com.app")
+                   .SetPackageId(0x7f)
+                   .SetPackageType(PackageType::kApp)
+                   .Build();
+  }
+
+ protected:
+  std::unique_ptr<IAaptContext> context_;
+};
+
+static void PrintDocToString(xml::XmlResource* doc, std::string* out) {
+  io::StringOutputStream stream(out, 1024u);
+  text::Printer printer(&stream);
+  Debug::DumpXml(*doc, &printer);
+  stream.Flush();
+}
+
+TEST_F(FlaggedXmlVersionerTest, NoFlagReturnsOriginal) {
+  auto doc = test::BuildXmlDomForPackageName(context_.get(), R"(
+      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android">
+        <TextView />
+        <TextView />
+        <TextView />
+      </LinearLayout>)");
+  doc->file.config.sdkVersion = SDK_GINGERBREAD;
+
+  FlaggedXmlVersioner versioner;
+  auto results = versioner.Process(context_.get(), doc.get());
+  EXPECT_THAT(results.size(), Eq(1));
+  EXPECT_THAT(results[0]->file.config.sdkVersion, Eq(SDK_GINGERBREAD));
+
+  std::string expected;
+  PrintDocToString(doc.get(), &expected);
+  std::string actual;
+  PrintDocToString(results[0].get(), &actual);
+
+  EXPECT_THAT(actual, Eq(expected));
+}
+
+TEST_F(FlaggedXmlVersionerTest, AlreadyBaklavaReturnsOriginal) {
+  auto doc = test::BuildXmlDomForPackageName(context_.get(), R"(
+      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android">
+        <TextView android:featureFlag="package.flag" />
+        <TextView />
+        <TextView />
+      </LinearLayout>)");
+  doc->file.config.sdkVersion = SDK_BAKLAVA;
+
+  FlaggedXmlVersioner versioner;
+  auto results = versioner.Process(context_.get(), doc.get());
+  EXPECT_THAT(results.size(), Eq(1));
+  EXPECT_THAT(results[0]->file.config.sdkVersion, Eq(SDK_BAKLAVA));
+
+  std::string expected;
+  PrintDocToString(doc.get(), &expected);
+  std::string actual;
+  PrintDocToString(results[0].get(), &actual);
+
+  EXPECT_THAT(actual, Eq(expected));
+}
+
+TEST_F(FlaggedXmlVersionerTest, PreBaklavaGetsSplit) {
+  auto doc = test::BuildXmlDomForPackageName(context_.get(), R"(
+      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android">
+        <TextView android:featureFlag="package.flag" /><TextView /><TextView />
+      </LinearLayout>)");
+  doc->file.config.sdkVersion = SDK_GINGERBREAD;
+
+  FlaggedXmlVersioner versioner;
+  auto results = versioner.Process(context_.get(), doc.get());
+  EXPECT_THAT(results.size(), Eq(2));
+  EXPECT_THAT(results[0]->file.config.sdkVersion, Eq(SDK_GINGERBREAD));
+  EXPECT_THAT(results[1]->file.config.sdkVersion, Eq(SDK_BAKLAVA));
+
+  auto gingerbread_doc = test::BuildXmlDomForPackageName(context_.get(), R"(
+      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android">
+        <TextView /><TextView />
+      </LinearLayout>)");
+
+  std::string expected0;
+  PrintDocToString(gingerbread_doc.get(), &expected0);
+  std::string actual0;
+  PrintDocToString(results[0].get(), &actual0);
+  EXPECT_THAT(actual0, Eq(expected0));
+
+  std::string expected1;
+  PrintDocToString(doc.get(), &expected1);
+  std::string actual1;
+  PrintDocToString(results[1].get(), &actual1);
+  EXPECT_THAT(actual1, Eq(expected1));
+}
+
+TEST_F(FlaggedXmlVersionerTest, NoVersionGetsSplit) {
+  auto doc = test::BuildXmlDomForPackageName(context_.get(), R"(
+      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android">
+        <TextView android:featureFlag="package.flag" /><TextView /><TextView />
+      </LinearLayout>)");
+
+  FlaggedXmlVersioner versioner;
+  auto results = versioner.Process(context_.get(), doc.get());
+  EXPECT_THAT(results.size(), Eq(2));
+  EXPECT_THAT(results[0]->file.config.sdkVersion, Eq(0));
+  EXPECT_THAT(results[1]->file.config.sdkVersion, Eq(SDK_BAKLAVA));
+
+  auto gingerbread_doc = test::BuildXmlDomForPackageName(context_.get(), R"(
+      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android">
+        <TextView /><TextView />
+      </LinearLayout>)");
+
+  std::string expected0;
+  PrintDocToString(gingerbread_doc.get(), &expected0);
+  std::string actual0;
+  PrintDocToString(results[0].get(), &actual0);
+  EXPECT_THAT(actual0, Eq(expected0));
+
+  std::string expected1;
+  PrintDocToString(doc.get(), &expected1);
+  std::string actual1;
+  PrintDocToString(results[1].get(), &actual1);
+  EXPECT_THAT(actual1, Eq(expected1));
+}
+
+TEST_F(FlaggedXmlVersionerTest, NegatedFlagAttributeRemoved) {
+  auto doc = test::BuildXmlDomForPackageName(context_.get(), R"(
+      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android">
+        <TextView android:featureFlag="!package.flag" /><TextView /><TextView />
+      </LinearLayout>)");
+  doc->file.config.sdkVersion = SDK_GINGERBREAD;
+
+  FlaggedXmlVersioner versioner;
+  auto results = versioner.Process(context_.get(), doc.get());
+  EXPECT_THAT(results.size(), Eq(2));
+  EXPECT_THAT(results[0]->file.config.sdkVersion, Eq(SDK_GINGERBREAD));
+  EXPECT_THAT(results[1]->file.config.sdkVersion, Eq(SDK_BAKLAVA));
+
+  auto gingerbread_doc = test::BuildXmlDomForPackageName(context_.get(), R"(
+      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android">
+        <TextView /><TextView /><TextView />
+      </LinearLayout>)");
+
+  std::string expected0;
+  PrintDocToString(gingerbread_doc.get(), &expected0);
+  std::string actual0;
+  PrintDocToString(results[0].get(), &actual0);
+  EXPECT_THAT(actual0, Eq(expected0));
+
+  std::string expected1;
+  PrintDocToString(doc.get(), &expected1);
+  std::string actual1;
+  PrintDocToString(results[1].get(), &actual1);
+  EXPECT_THAT(actual1, Eq(expected1));
+}
+
+TEST_F(FlaggedXmlVersionerTest, NegatedFlagAttributeRemovedNoSpecifiedVersion) {
+  auto doc = test::BuildXmlDomForPackageName(context_.get(), R"(
+      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android">
+        <TextView android:featureFlag="!package.flag" /><TextView /><TextView />
+      </LinearLayout>)");
+
+  FlaggedXmlVersioner versioner;
+  auto results = versioner.Process(context_.get(), doc.get());
+  EXPECT_THAT(results.size(), Eq(2));
+  EXPECT_THAT(results[0]->file.config.sdkVersion, Eq(0));
+  EXPECT_THAT(results[1]->file.config.sdkVersion, Eq(SDK_BAKLAVA));
+
+  auto gingerbread_doc = test::BuildXmlDomForPackageName(context_.get(), R"(
+      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android">
+        <TextView /><TextView /><TextView />
+      </LinearLayout>)");
+
+  std::string expected0;
+  PrintDocToString(gingerbread_doc.get(), &expected0);
+  std::string actual0;
+  PrintDocToString(results[0].get(), &actual0);
+  EXPECT_THAT(actual0, Eq(expected0));
+
+  std::string expected1;
+  PrintDocToString(doc.get(), &expected1);
+  std::string actual1;
+  PrintDocToString(results[1].get(), &actual1);
+  EXPECT_THAT(actual1, Eq(expected1));
+}
+
+}  // namespace aapt
\ No newline at end of file
diff --git a/tools/aapt2/xml/XmlUtil.h b/tools/aapt2/xml/XmlUtil.h
index ad676ca..789f6a0 100644
--- a/tools/aapt2/xml/XmlUtil.h
+++ b/tools/aapt2/xml/XmlUtil.h
@@ -30,6 +30,7 @@
 constexpr const char* kSchemaAndroid = "http://schemas.android.com/apk/res/android";
 constexpr const char* kSchemaTools = "http://schemas.android.com/tools";
 constexpr const char* kSchemaAapt = "http://schemas.android.com/aapt";
+constexpr const char* kAttrFeatureFlag = "featureFlag";
 
 // Result of extracting a package name from a namespace URI declaration.
 struct ExtractedPackage {
diff --git a/tools/hiddenapi/OWNERS b/tools/hiddenapi/OWNERS
index dc82aac..d1e36b9 100644
--- a/tools/hiddenapi/OWNERS
+++ b/tools/hiddenapi/OWNERS
@@ -1,6 +1,5 @@
 # compat-team@ for changes to hiddenapi files
 mathewi@google.com
-satayev@google.com
 
 # soong-team@ as the files these tools protect are tightly coupled with Soong
 file:platform/build/soong:/OWNERS
diff --git a/tools/lint/OWNERS b/tools/lint/OWNERS
index 8e4569e..4035e19 100644
--- a/tools/lint/OWNERS
+++ b/tools/lint/OWNERS
@@ -1,6 +1,5 @@
 mattgilbride@google.com
 azharaa@google.com
-jsharkey@google.com
 
 per-file *CallingSettingsNonUserGetterMethods* = file:/packages/SettingsProvider/OWNERS
 per-file *RegisterReceiverFlagDetector* = jacobhobbie@google.com
diff --git a/tools/processors/view_inspector/OWNERS b/tools/processors/view_inspector/OWNERS
index 0473f54..38d21e1 100644
--- a/tools/processors/view_inspector/OWNERS
+++ b/tools/processors/view_inspector/OWNERS
@@ -1,3 +1,2 @@
 alanv@google.com
-ashleyrose@google.com
-aurimas@google.com
\ No newline at end of file
+aurimas@google.com
diff --git a/wifi/java/src/android/net/wifi/sharedconnectivity/OWNERS b/wifi/java/src/android/net/wifi/sharedconnectivity/OWNERS
index 2a4acc1..abb9aa4 100644
--- a/wifi/java/src/android/net/wifi/sharedconnectivity/OWNERS
+++ b/wifi/java/src/android/net/wifi/sharedconnectivity/OWNERS
@@ -1,4 +1,3 @@
 # Bug component: 1216021
 
 asapperstein@google.com
-etancohen@google.com
